pspp-0.8.5/ 0000755 0001750 0001750 00000000000 12541312457 007513 5 0000000 0000000 pspp-0.8.5/COPYING 0000644 0001750 0001750 00000104374 12470242642 010476 0000000 0000000
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2007 Free Software Foundation, Inc.
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The GNU General Public License is a free, copyleft license for
software and other kinds of works.
The licenses for most software and other practical works are designed
to take away your freedom to share and change the works. By contrast,
the GNU General Public License is intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
software for all its users. We, the Free Software Foundation, use the
GNU General Public License for most of our software; it applies also to
any other work released this way by its authors. You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.
To protect your rights, we need to prevent others from denying you
these rights or asking you to surrender the rights. Therefore, you have
certain responsibilities if you distribute copies of the software, or if
you modify it: responsibilities to respect the freedom of others.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must pass on to the recipients the same
freedoms that you received. You must make sure that they, too, receive
or can get the source code. And you must show them these terms so they
know their rights.
Developers that use the GNU GPL protect your rights with two steps:
(1) assert copyright on the software, and (2) offer you this License
giving you legal permission to copy, distribute and/or modify it.
For the developers' and authors' protection, the GPL clearly explains
that there is no warranty for this free software. For both users' and
authors' sake, the GPL requires that modified versions be marked as
changed, so that their problems will not be attributed erroneously to
authors of previous versions.
Some devices are designed to deny users access to install or run
modified versions of the software inside them, although the manufacturer
can do so. This is fundamentally incompatible with the aim of
protecting users' freedom to change the software. The systematic
pattern of such abuse occurs in the area of products for individuals to
use, which is precisely where it is most unacceptable. Therefore, we
have designed this version of the GPL to prohibit the practice for those
products. If such problems arise substantially in other domains, we
stand ready to extend this provision to those domains in future versions
of the GPL, as needed to protect the freedom of users.
Finally, every program is threatened constantly by software patents.
States should not allow patents to restrict development and use of
software on general-purpose computers, but in those that do, we wish to
avoid the special danger that patents applied to a free program could
make it effectively proprietary. To prevent this, the GPL assures that
patents cannot be used to render the program non-free.
The precise terms and conditions for copying, distribution and
modification follow.
TERMS AND CONDITIONS
0. Definitions.
"This License" refers to version 3 of the GNU General Public License.
"Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.
"The Program" refers to any copyrightable work licensed under this
License. Each licensee is addressed as "you". "Licensees" and
"recipients" may be individuals or organizations.
To "modify" a work means to copy from or adapt all or part of the work
in a fashion requiring copyright permission, other than the making of an
exact copy. The resulting work is called a "modified version" of the
earlier work or a work "based on" the earlier work.
A "covered work" means either the unmodified Program or a work based
on the Program.
To "propagate" a work means to do anything with it that, without
permission, would make you directly or secondarily liable for
infringement under applicable copyright law, except executing it on a
computer or modifying a private copy. Propagation includes copying,
distribution (with or without modification), making available to the
public, and in some countries other activities as well.
To "convey" a work means any kind of propagation that enables other
parties to make or receive copies. Mere interaction with a user through
a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays "Appropriate Legal Notices"
to the extent that it includes a convenient and prominently visible
feature that (1) displays an appropriate copyright notice, and (2)
tells the user that there is no warranty for the work (except to the
extent that warranties are provided), that licensees may convey the
work under this License, and how to view a copy of this License. If
the interface presents a list of user commands or options, such as a
menu, a prominent item in the list meets this criterion.
1. Source Code.
The "source code" for a work means the preferred form of the work
for making modifications to it. "Object code" means any non-source
form of a work.
A "Standard Interface" means an interface that either is an official
standard defined by a recognized standards body, or, in the case of
interfaces specified for a particular programming language, one that
is widely used among developers working in that language.
The "System Libraries" of an executable work include anything, other
than the work as a whole, that (a) is included in the normal form of
packaging a Major Component, but which is not part of that Major
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
implementation is available to the public in source code form. A
"Major Component", in this context, means a major essential component
(kernel, window system, and so on) of the specific operating system
(if any) on which the executable work runs, or a compiler used to
produce the work, or an object code interpreter used to run it.
The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities. However, it does not include the work's
System Libraries, or general-purpose tools or generally available free
programs which are used unmodified in performing those activities but
which are not part of the work. For example, Corresponding Source
includes interface definition files associated with source files for
the work, and the source code for shared libraries and dynamically
linked subprograms that the work is specifically designed to require,
such as by intimate data communication or control flow between those
subprograms and other parts of the work.
The Corresponding Source need not include anything that users
can regenerate automatically from other parts of the Corresponding
Source.
The Corresponding Source for a work in source code form is that
same work.
2. Basic Permissions.
All rights granted under this License are granted for the term of
copyright on the Program, and are irrevocable provided the stated
conditions are met. This License explicitly affirms your unlimited
permission to run the unmodified Program. The output from running a
covered work is covered by this License only if the output, given its
content, constitutes a covered work. This License acknowledges your
rights of fair use or other equivalent, as provided by copyright law.
You may make, run and propagate covered works that you do not
convey, without conditions so long as your license otherwise remains
in force. You may convey covered works to others for the sole purpose
of having them make modifications exclusively for you, or provide you
with facilities for running those works, provided that you comply with
the terms of this License in conveying all material for which you do
not control copyright. Those thus making or running the covered works
for you must do so exclusively on your behalf, under your direction
and control, on terms that prohibit them from making any copies of
your copyrighted material outside their relationship with you.
Conveying under any other circumstances is permitted solely under
the conditions stated below. Sublicensing is not allowed; section 10
makes it unnecessary.
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological
measure under any applicable law fulfilling obligations under article
11 of the WIPO copyright treaty adopted on 20 December 1996, or
similar laws prohibiting or restricting circumvention of such
measures.
When you convey a covered work, you waive any legal power to forbid
circumvention of technological measures to the extent such circumvention
is effected by exercising rights under this License with respect to
the covered work, and you disclaim any intention to limit operation or
modification of the work as a means of enforcing, against the work's
users, your or third parties' legal rights to forbid circumvention of
technological measures.
4. Conveying Verbatim Copies.
You may convey verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice;
keep intact all notices stating that this License and any
non-permissive terms added in accord with section 7 apply to the code;
keep intact all notices of the absence of any warranty; and give all
recipients a copy of this License along with the Program.
You may charge any price or no price for each copy that you convey,
and you may offer support or warranty protection for a fee.
5. Conveying Modified Source Versions.
You may convey a work based on the Program, or the modifications to
produce it from the Program, in the form of source code under the
terms of section 4, provided that you also meet all of these conditions:
a) The work must carry prominent notices stating that you modified
it, and giving a relevant date.
b) The work must carry prominent notices stating that it is
released under this License and any conditions added under section
7. This requirement modifies the requirement in section 4 to
"keep intact all notices".
c) You must license the entire work, as a whole, under this
License to anyone who comes into possession of a copy. This
License will therefore apply, along with any applicable section 7
additional terms, to the whole of the work, and all its parts,
regardless of how they are packaged. This License gives no
permission to license the work in any other way, but it does not
invalidate such permission if you have separately received it.
d) If the work has interactive user interfaces, each must display
Appropriate Legal Notices; however, if the Program has interactive
interfaces that do not display Appropriate Legal Notices, your
work need not make them do so.
A compilation of a covered work with other separate and independent
works, which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
in or on a volume of a storage or distribution medium, is called an
"aggregate" if the compilation and its resulting copyright are not
used to limit the access or legal rights of the compilation's users
beyond what the individual works permit. Inclusion of a covered work
in an aggregate does not cause this License to apply to the other
parts of the aggregate.
6. Conveying Non-Source Forms.
You may convey a covered work in object code form under the terms
of sections 4 and 5, provided that you also convey the
machine-readable Corresponding Source under the terms of this License,
in one of these ways:
a) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by the
Corresponding Source fixed on a durable physical medium
customarily used for software interchange.
b) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by a
written offer, valid for at least three years and valid for as
long as you offer spare parts or customer support for that product
model, to give anyone who possesses the object code either (1) a
copy of the Corresponding Source for all the software in the
product that is covered by this License, on a durable physical
medium customarily used for software interchange, for a price no
more than your reasonable cost of physically performing this
conveying of source, or (2) access to copy the
Corresponding Source from a network server at no charge.
c) Convey individual copies of the object code with a copy of the
written offer to provide the Corresponding Source. This
alternative is allowed only occasionally and noncommercially, and
only if you received the object code with such an offer, in accord
with subsection 6b.
d) Convey the object code by offering access from a designated
place (gratis or for a charge), and offer equivalent access to the
Corresponding Source in the same way through the same place at no
further charge. You need not require recipients to copy the
Corresponding Source along with the object code. If the place to
copy the object code is a network server, the Corresponding Source
may be on a different server (operated by you or a third party)
that supports equivalent copying facilities, provided you maintain
clear directions next to the object code saying where to find the
Corresponding Source. Regardless of what server hosts the
Corresponding Source, you remain obligated to ensure that it is
available for as long as needed to satisfy these requirements.
e) Convey the object code using peer-to-peer transmission, provided
you inform other peers where the object code and Corresponding
Source of the work are being offered to the general public at no
charge under subsection 6d.
A separable portion of the object code, whose source code is excluded
from the Corresponding Source as a System Library, need not be
included in conveying the object code work.
A "User Product" is either (1) a "consumer product", which means any
tangible personal property which is normally used for personal, family,
or household purposes, or (2) anything designed or sold for incorporation
into a dwelling. In determining whether a product is a consumer product,
doubtful cases shall be resolved in favor of coverage. For a particular
product received by a particular user, "normally used" refers to a
typical or common use of that class of product, regardless of the status
of the particular user or of the way in which the particular user
actually uses, or expects or is expected to use, the product. A product
is a consumer product regardless of whether the product has substantial
commercial, industrial or non-consumer uses, unless such uses represent
the only significant mode of use of the product.
"Installation Information" for a User Product means any methods,
procedures, authorization keys, or other information required to install
and execute modified versions of a covered work in that User Product from
a modified version of its Corresponding Source. The information must
suffice to ensure that the continued functioning of the modified object
code is in no case prevented or interfered with solely because
modification has been made.
If you convey an object code work under this section in, or with, or
specifically for use in, a User Product, and the conveying occurs as
part of a transaction in which the right of possession and use of the
User Product is transferred to the recipient in perpetuity or for a
fixed term (regardless of how the transaction is characterized), the
Corresponding Source conveyed under this section must be accompanied
by the Installation Information. But this requirement does not apply
if neither you nor any third party retains the ability to install
modified object code on the User Product (for example, the work has
been installed in ROM).
The requirement to provide Installation Information does not include a
requirement to continue to provide support service, warranty, or updates
for a work that has been modified or installed by the recipient, or for
the User Product in which it has been modified or installed. Access to a
network may be denied when the modification itself materially and
adversely affects the operation of the network or violates the rules and
protocols for communication across the network.
Corresponding Source conveyed, and Installation Information provided,
in accord with this section must be in a format that is publicly
documented (and with an implementation available to the public in
source code form), and must require no special password or key for
unpacking, reading or copying.
7. Additional Terms.
"Additional permissions" are terms that supplement the terms of this
License by making exceptions from one or more of its conditions.
Additional permissions that are applicable to the entire Program shall
be treated as though they were included in this License, to the extent
that they are valid under applicable law. If additional permissions
apply only to part of the Program, that part may be used separately
under those permissions, but the entire Program remains governed by
this License without regard to the additional permissions.
When you convey a copy of a covered work, you may at your option
remove any additional permissions from that copy, or from any part of
it. (Additional permissions may be written to require their own
removal in certain cases when you modify the work.) You may place
additional permissions on material, added by you to a covered work,
for which you have or can give appropriate copyright permission.
Notwithstanding any other provision of this License, for material you
add to a covered work, you may (if authorized by the copyright holders of
that material) supplement the terms of this License with terms:
a) Disclaiming warranty or limiting liability differently from the
terms of sections 15 and 16 of this License; or
b) Requiring preservation of specified reasonable legal notices or
author attributions in that material or in the Appropriate Legal
Notices displayed by works containing it; or
c) Prohibiting misrepresentation of the origin of that material, or
requiring that modified versions of such material be marked in
reasonable ways as different from the original version; or
d) Limiting the use for publicity purposes of names of licensors or
authors of the material; or
e) Declining to grant rights under trademark law for use of some
trade names, trademarks, or service marks; or
f) Requiring indemnification of licensors and authors of that
material by anyone who conveys the material (or modified versions of
it) with contractual assumptions of liability to the recipient, for
any liability that these contractual assumptions directly impose on
those licensors and authors.
All other non-permissive additional terms are considered "further
restrictions" within the meaning of section 10. If the Program as you
received it, or any part of it, contains a notice stating that it is
governed by this License along with a term that is a further
restriction, you may remove that term. If a license document contains
a further restriction but permits relicensing or conveying under this
License, you may add to a covered work material governed by the terms
of that license document, provided that the further restriction does
not survive such relicensing or conveying.
If you add terms to a covered work in accord with this section, you
must place, in the relevant source files, a statement of the
additional terms that apply to those files, or a notice indicating
where to find the applicable terms.
Additional terms, permissive or non-permissive, may be stated in the
form of a separately written license, or stated as exceptions;
the above requirements apply either way.
8. Termination.
You may not propagate or modify a covered work except as expressly
provided under this License. Any attempt otherwise to propagate or
modify it is void, and will automatically terminate your rights under
this License (including any patent licenses granted under the third
paragraph of section 11).
However, if you cease all violation of this License, then your
license from a particular copyright holder is reinstated (a)
provisionally, unless and until the copyright holder explicitly and
finally terminates your license, and (b) permanently, if the copyright
holder fails to notify you of the violation by some reasonable means
prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.
Termination of your rights under this section does not terminate the
licenses of parties who have received copies or rights from you under
this License. If your rights have been terminated and not permanently
reinstated, you do not qualify to receive new licenses for the same
material under section 10.
9. Acceptance Not Required for Having Copies.
You are not required to accept this License in order to receive or
run a copy of the Program. Ancillary propagation of a covered work
occurring solely as a consequence of using peer-to-peer transmission
to receive a copy likewise does not require acceptance. However,
nothing other than this License grants you permission to propagate or
modify any covered work. These actions infringe copyright if you do
not accept this License. Therefore, by modifying or propagating a
covered work, you indicate your acceptance of this License to do so.
10. Automatic Licensing of Downstream Recipients.
Each time you convey a covered work, the recipient automatically
receives a license from the original licensors, to run, modify and
propagate that work, subject to this License. You are not responsible
for enforcing compliance by third parties with this License.
An "entity transaction" is a transaction transferring control of an
organization, or substantially all assets of one, or subdividing an
organization, or merging organizations. If propagation of a covered
work results from an entity transaction, each party to that
transaction who receives a copy of the work also receives whatever
licenses to the work the party's predecessor in interest had or could
give under the previous paragraph, plus a right to possession of the
Corresponding Source of the work from the predecessor in interest, if
the predecessor has it or can get it with reasonable efforts.
You may not impose any further restrictions on the exercise of the
rights granted or affirmed under this License. For example, you may
not impose a license fee, royalty, or other charge for exercise of
rights granted under this License, and you may not initiate litigation
(including a cross-claim or counterclaim in a lawsuit) alleging that
any patent claim is infringed by making, using, selling, offering for
sale, or importing the Program or any portion of it.
11. Patents.
A "contributor" is a copyright holder who authorizes use under this
License of the Program or a work on which the Program is based. The
work thus licensed is called the contributor's "contributor version".
A contributor's "essential patent claims" are all patent claims
owned or controlled by the contributor, whether already acquired or
hereafter acquired, that would be infringed by some manner, permitted
by this License, of making, using, or selling its contributor version,
but do not include claims that would be infringed only as a
consequence of further modification of the contributor version. For
purposes of this definition, "control" includes the right to grant
patent sublicenses in a manner consistent with the requirements of
this License.
Each contributor grants you a non-exclusive, worldwide, royalty-free
patent license under the contributor's essential patent claims, to
make, use, sell, offer for sale, import and otherwise run, modify and
propagate the contents of its contributor version.
In the following three paragraphs, a "patent license" is any express
agreement or commitment, however denominated, not to enforce a patent
(such as an express permission to practice a patent or covenant not to
sue for patent infringement). To "grant" such a patent license to a
party means to make such an agreement or commitment not to enforce a
patent against the party.
If you convey a covered work, knowingly relying on a patent license,
and the Corresponding Source of the work is not available for anyone
to copy, free of charge and under the terms of this License, through a
publicly available network server or other readily accessible means,
then you must either (1) cause the Corresponding Source to be so
available, or (2) arrange to deprive yourself of the benefit of the
patent license for this particular work, or (3) arrange, in a manner
consistent with the requirements of this License, to extend the patent
license to downstream recipients. "Knowingly relying" means you have
actual knowledge that, but for the patent license, your conveying the
covered work in a country, or your recipient's use of the covered work
in a country, would infringe one or more identifiable patents in that
country that you have reason to believe are valid.
If, pursuant to or in connection with a single transaction or
arrangement, you convey, or propagate by procuring conveyance of, a
covered work, and grant a patent license to some of the parties
receiving the covered work authorizing them to use, propagate, modify
or convey a specific copy of the covered work, then the patent license
you grant is automatically extended to all recipients of the covered
work and works based on it.
A patent license is "discriminatory" if it does not include within
the scope of its coverage, prohibits the exercise of, or is
conditioned on the non-exercise of one or more of the rights that are
specifically granted under this License. You may not convey a covered
work if you are a party to an arrangement with a third party that is
in the business of distributing software, under which you make payment
to the third party based on the extent of your activity of conveying
the work, and under which the third party grants, to any of the
parties who would receive the covered work from you, a discriminatory
patent license (a) in connection with copies of the covered work
conveyed by you (or copies made from those copies), or (b) primarily
for and in connection with specific products or compilations that
contain the covered work, unless you entered into that arrangement,
or that patent license was granted, prior to 28 March 2007.
Nothing in this License shall be construed as excluding or limiting
any implied license or other defenses to infringement that may
otherwise be available to you under applicable patent law.
12. No Surrender of Others' Freedom.
If conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot convey a
covered work so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you may
not convey it at all. For example, if you agree to terms that obligate you
to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.
13. Use with the GNU Affero General Public License.
Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU Affero General Public License into a single
combined work, and to convey the resulting work. The terms of this
License will continue to apply to the part which is the covered work,
but the special requirements of the GNU Affero General Public License,
section 13, concerning interaction through a network will apply to the
combination as such.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of
the GNU General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the
Program specifies that a certain numbered version of the GNU General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation. If the Program does not specify a version number of the
GNU General Public License, you may choose any version ever published
by the Free Software Foundation.
If the Program specifies that a proxy can decide which future
versions of the GNU General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.
Later license versions may give you additional or different
permissions. However, no additional obligations are imposed on any
author or copyright holder as a result of your choosing to follow a
later version.
15. Disclaimer of Warranty.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. Limitation of Liability.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.
17. Interpretation of Sections 15 and 16.
If the disclaimer of warranty and limitation of liability provided
above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates
an absolute waiver of all civil liability in connection with the
Program, unless a warranty or assumption of liability accompanies a
copy of the Program in return for a fee.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
Copyright (C)
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see .
Also add information on how to contact you by electronic and paper mail.
If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:
Copyright (C)
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, your program's commands
might be different; for a GUI interface, you would use an "about box".
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU GPL, see
.
The GNU General Public License does not permit incorporating your program
into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
.
pspp-0.8.5/package.m4 0000644 0001750 0001750 00000000534 12541162135 011266 0000000 0000000 # Signature of the current package.
m4_define([AT_PACKAGE_NAME], [GNU PSPP])
m4_define([AT_PACKAGE_TARNAME], [pspp])
m4_define([AT_PACKAGE_VERSION], [0.8.5])
m4_define([AT_PACKAGE_STRING], [GNU PSPP 0.8.5])
m4_define([AT_PACKAGE_BUGREPORT], [bug-gnu-pspp@gnu.org])
m4_define([AT_PACKAGE_URL], [http://www.gnu.org/software/pspp/])
pspp-0.8.5/m4/ 0000755 0001750 0001750 00000000000 12541312455 010031 5 0000000 0000000 pspp-0.8.5/m4/libtool.m4 0000644 0001750 0001750 00001060111 12541162053 011654 0000000 0000000 # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
#
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
# 2006, 2007, 2008, 2009, 2010, 2011 Free Software
# Foundation, Inc.
# Written by Gordon Matzigkeit, 1996
#
# This file is free software; the Free Software Foundation gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
m4_define([_LT_COPYING], [dnl
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
# 2006, 2007, 2008, 2009, 2010, 2011 Free Software
# Foundation, Inc.
# Written by Gordon Matzigkeit, 1996
#
# This file is part of GNU Libtool.
#
# GNU Libtool is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation; either version 2 of
# the License, or (at your option) any later version.
#
# As a special exception to the GNU General Public License,
# if you distribute this file as part of a program or library that
# is built using GNU Libtool, you may include this file under the
# same distribution terms that you use for the rest of that program.
#
# GNU Libtool 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 General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GNU Libtool; see the file COPYING. If not, a copy
# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
# obtained by writing to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
])
# serial 57 LT_INIT
# LT_PREREQ(VERSION)
# ------------------
# Complain and exit if this libtool version is less that VERSION.
m4_defun([LT_PREREQ],
[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
[m4_default([$3],
[m4_fatal([Libtool version $1 or higher is required],
63)])],
[$2])])
# _LT_CHECK_BUILDDIR
# ------------------
# Complain if the absolute build directory name contains unusual characters
m4_defun([_LT_CHECK_BUILDDIR],
[case `pwd` in
*\ * | *\ *)
AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
esac
])
# LT_INIT([OPTIONS])
# ------------------
AC_DEFUN([LT_INIT],
[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
AC_BEFORE([$0], [LT_LANG])dnl
AC_BEFORE([$0], [LT_OUTPUT])dnl
AC_BEFORE([$0], [LTDL_INIT])dnl
m4_require([_LT_CHECK_BUILDDIR])dnl
dnl Autoconf doesn't catch unexpanded LT_ macros by default:
m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
dnl unless we require an AC_DEFUNed macro:
AC_REQUIRE([LTOPTIONS_VERSION])dnl
AC_REQUIRE([LTSUGAR_VERSION])dnl
AC_REQUIRE([LTVERSION_VERSION])dnl
AC_REQUIRE([LTOBSOLETE_VERSION])dnl
m4_require([_LT_PROG_LTMAIN])dnl
_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
dnl Parse OPTIONS
_LT_SET_OPTIONS([$0], [$1])
# This can be used to rebuild libtool when needed
LIBTOOL_DEPS="$ltmain"
# Always use our own libtool.
LIBTOOL='$(SHELL) $(top_builddir)/libtool'
AC_SUBST(LIBTOOL)dnl
_LT_SETUP
# Only expand once:
m4_define([LT_INIT])
])# LT_INIT
# Old names:
AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
# _LT_CC_BASENAME(CC)
# -------------------
# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
m4_defun([_LT_CC_BASENAME],
[for cc_temp in $1""; do
case $cc_temp in
compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
\-*) ;;
*) break;;
esac
done
cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
])
# _LT_FILEUTILS_DEFAULTS
# ----------------------
# It is okay to use these file commands and assume they have been set
# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
m4_defun([_LT_FILEUTILS_DEFAULTS],
[: ${CP="cp -f"}
: ${MV="mv -f"}
: ${RM="rm -f"}
])# _LT_FILEUTILS_DEFAULTS
# _LT_SETUP
# ---------
m4_defun([_LT_SETUP],
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
AC_REQUIRE([AC_CANONICAL_BUILD])dnl
AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
_LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
dnl
_LT_DECL([], [host_alias], [0], [The host system])dnl
_LT_DECL([], [host], [0])dnl
_LT_DECL([], [host_os], [0])dnl
dnl
_LT_DECL([], [build_alias], [0], [The build system])dnl
_LT_DECL([], [build], [0])dnl
_LT_DECL([], [build_os], [0])dnl
dnl
AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([LT_PATH_LD])dnl
AC_REQUIRE([LT_PATH_NM])dnl
dnl
AC_REQUIRE([AC_PROG_LN_S])dnl
test -z "$LN_S" && LN_S="ln -s"
_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
dnl
AC_REQUIRE([LT_CMD_MAX_LEN])dnl
_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
dnl
m4_require([_LT_FILEUTILS_DEFAULTS])dnl
m4_require([_LT_CHECK_SHELL_FEATURES])dnl
m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
m4_require([_LT_CMD_RELOAD])dnl
m4_require([_LT_CHECK_MAGIC_METHOD])dnl
m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
m4_require([_LT_CMD_OLD_ARCHIVE])dnl
m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
m4_require([_LT_WITH_SYSROOT])dnl
_LT_CONFIG_LIBTOOL_INIT([
# See if we are running on zsh, and set the options which allow our
# commands through without removal of \ escapes INIT.
if test -n "\${ZSH_VERSION+set}" ; then
setopt NO_GLOB_SUBST
fi
])
if test -n "${ZSH_VERSION+set}" ; then
setopt NO_GLOB_SUBST
fi
_LT_CHECK_OBJDIR
m4_require([_LT_TAG_COMPILER])dnl
case $host_os in
aix3*)
# AIX sometimes has problems with the GCC collect2 program. For some
# reason, if we set the COLLECT_NAMES environment variable, the problems
# vanish in a puff of smoke.
if test "X${COLLECT_NAMES+set}" != Xset; then
COLLECT_NAMES=
export COLLECT_NAMES
fi
;;
esac
# Global variables:
ofile=libtool
can_build_shared=yes
# All known linkers require a `.a' archive for static linking (except MSVC,
# which needs '.lib').
libext=a
with_gnu_ld="$lt_cv_prog_gnu_ld"
old_CC="$CC"
old_CFLAGS="$CFLAGS"
# Set sane defaults for various variables
test -z "$CC" && CC=cc
test -z "$LTCC" && LTCC=$CC
test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
test -z "$LD" && LD=ld
test -z "$ac_objext" && ac_objext=o
_LT_CC_BASENAME([$compiler])
# Only perform the check for file, if the check method requires it
test -z "$MAGIC_CMD" && MAGIC_CMD=file
case $deplibs_check_method in
file_magic*)
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
_LT_PATH_MAGIC
fi
;;
esac
# Use C for the default configuration in the libtool script
LT_SUPPORTED_TAG([CC])
_LT_LANG_C_CONFIG
_LT_LANG_DEFAULT_CONFIG
_LT_CONFIG_COMMANDS
])# _LT_SETUP
# _LT_PREPARE_SED_QUOTE_VARS
# --------------------------
# Define a few sed substitution that help us do robust quoting.
m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
[# Backslashify metacharacters that are still active within
# double-quoted strings.
sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
# Same as above, but do not quote variable references.
double_quote_subst='s/\([["`\\]]\)/\\\1/g'
# Sed substitution to delay expansion of an escaped shell variable in a
# double_quote_subst'ed string.
delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
# Sed substitution to delay expansion of an escaped single quote.
delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
# Sed substitution to avoid accidental globbing in evaled expressions
no_glob_subst='s/\*/\\\*/g'
])
# _LT_PROG_LTMAIN
# ---------------
# Note that this code is called both from `configure', and `config.status'
# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
# `config.status' has no value for ac_aux_dir unless we are using Automake,
# so we pass a copy along to make sure it has a sensible value anyway.
m4_defun([_LT_PROG_LTMAIN],
[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
ltmain="$ac_aux_dir/ltmain.sh"
])# _LT_PROG_LTMAIN
## ------------------------------------- ##
## Accumulate code for creating libtool. ##
## ------------------------------------- ##
# So that we can recreate a full libtool script including additional
# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
# in macros and then make a single call at the end using the `libtool'
# label.
# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
# ----------------------------------------
# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
m4_define([_LT_CONFIG_LIBTOOL_INIT],
[m4_ifval([$1],
[m4_append([_LT_OUTPUT_LIBTOOL_INIT],
[$1
])])])
# Initialize.
m4_define([_LT_OUTPUT_LIBTOOL_INIT])
# _LT_CONFIG_LIBTOOL([COMMANDS])
# ------------------------------
# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
m4_define([_LT_CONFIG_LIBTOOL],
[m4_ifval([$1],
[m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
[$1
])])])
# Initialize.
m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
# -----------------------------------------------------
m4_defun([_LT_CONFIG_SAVE_COMMANDS],
[_LT_CONFIG_LIBTOOL([$1])
_LT_CONFIG_LIBTOOL_INIT([$2])
])
# _LT_FORMAT_COMMENT([COMMENT])
# -----------------------------
# Add leading comment marks to the start of each line, and a trailing
# full-stop to the whole comment if one is not present already.
m4_define([_LT_FORMAT_COMMENT],
[m4_ifval([$1], [
m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
[['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
)])
## ------------------------ ##
## FIXME: Eliminate VARNAME ##
## ------------------------ ##
# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
# -------------------------------------------------------------------
# CONFIGNAME is the name given to the value in the libtool script.
# VARNAME is the (base) name used in the configure script.
# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
# VARNAME. Any other value will be used directly.
m4_define([_LT_DECL],
[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
[lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
[m4_ifval([$1], [$1], [$2])])
lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
m4_ifval([$4],
[lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
lt_dict_add_subkey([lt_decl_dict], [$2],
[tagged?], [m4_ifval([$5], [yes], [no])])])
])
# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
# --------------------------------------------------------
m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
# ------------------------------------------------
m4_define([lt_decl_tag_varnames],
[_lt_decl_filter([tagged?], [yes], $@)])
# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
# ---------------------------------------------------------
m4_define([_lt_decl_filter],
[m4_case([$#],
[0], [m4_fatal([$0: too few arguments: $#])],
[1], [m4_fatal([$0: too few arguments: $#: $1])],
[2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
[3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
[lt_dict_filter([lt_decl_dict], $@)])[]dnl
])
# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
# --------------------------------------------------
m4_define([lt_decl_quote_varnames],
[_lt_decl_filter([value], [1], $@)])
# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
# ---------------------------------------------------
m4_define([lt_decl_dquote_varnames],
[_lt_decl_filter([value], [2], $@)])
# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
# ---------------------------------------------------
m4_define([lt_decl_varnames_tagged],
[m4_assert([$# <= 2])dnl
_$0(m4_quote(m4_default([$1], [[, ]])),
m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
m4_define([_lt_decl_varnames_tagged],
[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
# ------------------------------------------------
m4_define([lt_decl_all_varnames],
[_$0(m4_quote(m4_default([$1], [[, ]])),
m4_if([$2], [],
m4_quote(lt_decl_varnames),
m4_quote(m4_shift($@))))[]dnl
])
m4_define([_lt_decl_all_varnames],
[lt_join($@, lt_decl_varnames_tagged([$1],
lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
])
# _LT_CONFIG_STATUS_DECLARE([VARNAME])
# ------------------------------------
# Quote a variable value, and forward it to `config.status' so that its
# declaration there will have the same value as in `configure'. VARNAME
# must have a single quote delimited value for this to work.
m4_define([_LT_CONFIG_STATUS_DECLARE],
[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
# _LT_CONFIG_STATUS_DECLARATIONS
# ------------------------------
# We delimit libtool config variables with single quotes, so when
# we write them to config.status, we have to be sure to quote all
# embedded single quotes properly. In configure, this macro expands
# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
#
# ='`$ECHO "$" | $SED "$delay_single_quote_subst"`'
m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
[m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
# _LT_LIBTOOL_TAGS
# ----------------
# Output comment and list of tags supported by the script
m4_defun([_LT_LIBTOOL_TAGS],
[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
available_tags="_LT_TAGS"dnl
])
# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
# -----------------------------------
# Extract the dictionary values for VARNAME (optionally with TAG) and
# expand to a commented shell variable setting:
#
# # Some comment about what VAR is for.
# visible_name=$lt_internal_name
m4_define([_LT_LIBTOOL_DECLARE],
[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
[description])))[]dnl
m4_pushdef([_libtool_name],
m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
[0], [_libtool_name=[$]$1],
[1], [_libtool_name=$lt_[]$1],
[2], [_libtool_name=$lt_[]$1],
[_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
])
# _LT_LIBTOOL_CONFIG_VARS
# -----------------------
# Produce commented declarations of non-tagged libtool config variables
# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
# script. Tagged libtool config variables (even for the LIBTOOL CONFIG
# section) are produced by _LT_LIBTOOL_TAG_VARS.
m4_defun([_LT_LIBTOOL_CONFIG_VARS],
[m4_foreach([_lt_var],
m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
[m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
# _LT_LIBTOOL_TAG_VARS(TAG)
# -------------------------
m4_define([_LT_LIBTOOL_TAG_VARS],
[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
[m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
# _LT_TAGVAR(VARNAME, [TAGNAME])
# ------------------------------
m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
# _LT_CONFIG_COMMANDS
# -------------------
# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
# variables for single and double quote escaping we saved from calls
# to _LT_DECL, we can put quote escaped variables declarations
# into `config.status', and then the shell code to quote escape them in
# for loops in `config.status'. Finally, any additional code accumulated
# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
m4_defun([_LT_CONFIG_COMMANDS],
[AC_PROVIDE_IFELSE([LT_OUTPUT],
dnl If the libtool generation code has been placed in $CONFIG_LT,
dnl instead of duplicating it all over again into config.status,
dnl then we will have config.status run $CONFIG_LT later, so it
dnl needs to know what name is stored there:
[AC_CONFIG_COMMANDS([libtool],
[$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
dnl If the libtool generation code is destined for config.status,
dnl expand the accumulated commands and init code now:
[AC_CONFIG_COMMANDS([libtool],
[_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
])#_LT_CONFIG_COMMANDS
# Initialize.
m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
[
# The HP-UX ksh and POSIX shell print the target directory to stdout
# if CDPATH is set.
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
sed_quote_subst='$sed_quote_subst'
double_quote_subst='$double_quote_subst'
delay_variable_subst='$delay_variable_subst'
_LT_CONFIG_STATUS_DECLARATIONS
LTCC='$LTCC'
LTCFLAGS='$LTCFLAGS'
compiler='$compiler_DEFAULT'
# A function that is used when there is no print builtin or printf.
func_fallback_echo ()
{
eval 'cat <<_LTECHO_EOF
\$[]1
_LTECHO_EOF'
}
# Quote evaled strings.
for var in lt_decl_all_varnames([[ \
]], lt_decl_quote_varnames); do
case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
*[[\\\\\\\`\\"\\\$]]*)
eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
;;
*)
eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
;;
esac
done
# Double-quote double-evaled strings.
for var in lt_decl_all_varnames([[ \
]], lt_decl_dquote_varnames); do
case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
*[[\\\\\\\`\\"\\\$]]*)
eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
;;
*)
eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
;;
esac
done
_LT_OUTPUT_LIBTOOL_INIT
])
# _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
# ------------------------------------
# Generate a child script FILE with all initialization necessary to
# reuse the environment learned by the parent script, and make the
# file executable. If COMMENT is supplied, it is inserted after the
# `#!' sequence but before initialization text begins. After this
# macro, additional text can be appended to FILE to form the body of
# the child script. The macro ends with non-zero status if the
# file could not be fully written (such as if the disk is full).
m4_ifdef([AS_INIT_GENERATED],
[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
[m4_defun([_LT_GENERATED_FILE_INIT],
[m4_require([AS_PREPARE])]dnl
[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
[lt_write_fail=0
cat >$1 <<_ASEOF || lt_write_fail=1
#! $SHELL
# Generated by $as_me.
$2
SHELL=\${CONFIG_SHELL-$SHELL}
export SHELL
_ASEOF
cat >>$1 <<\_ASEOF || lt_write_fail=1
AS_SHELL_SANITIZE
_AS_PREPARE
exec AS_MESSAGE_FD>&1
_ASEOF
test $lt_write_fail = 0 && chmod +x $1[]dnl
m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
# LT_OUTPUT
# ---------
# This macro allows early generation of the libtool script (before
# AC_OUTPUT is called), incase it is used in configure for compilation
# tests.
AC_DEFUN([LT_OUTPUT],
[: ${CONFIG_LT=./config.lt}
AC_MSG_NOTICE([creating $CONFIG_LT])
_LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
[# Run this file to recreate a libtool stub with the current configuration.])
cat >>"$CONFIG_LT" <<\_LTEOF
lt_cl_silent=false
exec AS_MESSAGE_LOG_FD>>config.log
{
echo
AS_BOX([Running $as_me.])
} >&AS_MESSAGE_LOG_FD
lt_cl_help="\
\`$as_me' creates a local libtool stub from the current configuration,
for use in further configure time tests before the real libtool is
generated.
Usage: $[0] [[OPTIONS]]
-h, --help print this help, then exit
-V, --version print version number, then exit
-q, --quiet do not print progress messages
-d, --debug don't remove temporary files
Report bugs to ."
lt_cl_version="\
m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
configured by $[0], generated by m4_PACKAGE_STRING.
Copyright (C) 2011 Free Software Foundation, Inc.
This config.lt script is free software; the Free Software Foundation
gives unlimited permision to copy, distribute and modify it."
while test $[#] != 0
do
case $[1] in
--version | --v* | -V )
echo "$lt_cl_version"; exit 0 ;;
--help | --h* | -h )
echo "$lt_cl_help"; exit 0 ;;
--debug | --d* | -d )
debug=: ;;
--quiet | --q* | --silent | --s* | -q )
lt_cl_silent=: ;;
-*) AC_MSG_ERROR([unrecognized option: $[1]
Try \`$[0] --help' for more information.]) ;;
*) AC_MSG_ERROR([unrecognized argument: $[1]
Try \`$[0] --help' for more information.]) ;;
esac
shift
done
if $lt_cl_silent; then
exec AS_MESSAGE_FD>/dev/null
fi
_LTEOF
cat >>"$CONFIG_LT" <<_LTEOF
_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
_LTEOF
cat >>"$CONFIG_LT" <<\_LTEOF
AC_MSG_NOTICE([creating $ofile])
_LT_OUTPUT_LIBTOOL_COMMANDS
AS_EXIT(0)
_LTEOF
chmod +x "$CONFIG_LT"
# configure is writing to config.log, but config.lt does its own redirection,
# appending to config.log, which fails on DOS, as config.log is still kept
# open by configure. Here we exec the FD to /dev/null, effectively closing
# config.log, so it can be properly (re)opened and appended to by config.lt.
lt_cl_success=:
test "$silent" = yes &&
lt_config_lt_args="$lt_config_lt_args --quiet"
exec AS_MESSAGE_LOG_FD>/dev/null
$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
exec AS_MESSAGE_LOG_FD>>config.log
$lt_cl_success || AS_EXIT(1)
])# LT_OUTPUT
# _LT_CONFIG(TAG)
# ---------------
# If TAG is the built-in tag, create an initial libtool script with a
# default configuration from the untagged config vars. Otherwise add code
# to config.status for appending the configuration named by TAG from the
# matching tagged config vars.
m4_defun([_LT_CONFIG],
[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
_LT_CONFIG_SAVE_COMMANDS([
m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
m4_if(_LT_TAG, [C], [
# See if we are running on zsh, and set the options which allow our
# commands through without removal of \ escapes.
if test -n "${ZSH_VERSION+set}" ; then
setopt NO_GLOB_SUBST
fi
cfgfile="${ofile}T"
trap "$RM \"$cfgfile\"; exit 1" 1 2 15
$RM "$cfgfile"
cat <<_LT_EOF >> "$cfgfile"
#! $SHELL
# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
#
_LT_COPYING
_LT_LIBTOOL_TAGS
# ### BEGIN LIBTOOL CONFIG
_LT_LIBTOOL_CONFIG_VARS
_LT_LIBTOOL_TAG_VARS
# ### END LIBTOOL CONFIG
_LT_EOF
case $host_os in
aix3*)
cat <<\_LT_EOF >> "$cfgfile"
# AIX sometimes has problems with the GCC collect2 program. For some
# reason, if we set the COLLECT_NAMES environment variable, the problems
# vanish in a puff of smoke.
if test "X${COLLECT_NAMES+set}" != Xset; then
COLLECT_NAMES=
export COLLECT_NAMES
fi
_LT_EOF
;;
esac
_LT_PROG_LTMAIN
# We use sed instead of cat because bash on DJGPP gets confused if
# if finds mixed CR/LF and LF-only lines. Since sed operates in
# text mode, it properly converts lines to CR/LF. This bash problem
# is reportedly fixed, but why not run on old versions too?
sed '$q' "$ltmain" >> "$cfgfile" \
|| (rm -f "$cfgfile"; exit 1)
_LT_PROG_REPLACE_SHELLFNS
mv -f "$cfgfile" "$ofile" ||
(rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
chmod +x "$ofile"
],
[cat <<_LT_EOF >> "$ofile"
dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
dnl in a comment (ie after a #).
# ### BEGIN LIBTOOL TAG CONFIG: $1
_LT_LIBTOOL_TAG_VARS(_LT_TAG)
# ### END LIBTOOL TAG CONFIG: $1
_LT_EOF
])dnl /m4_if
],
[m4_if([$1], [], [
PACKAGE='$PACKAGE'
VERSION='$VERSION'
TIMESTAMP='$TIMESTAMP'
RM='$RM'
ofile='$ofile'], [])
])dnl /_LT_CONFIG_SAVE_COMMANDS
])# _LT_CONFIG
# LT_SUPPORTED_TAG(TAG)
# ---------------------
# Trace this macro to discover what tags are supported by the libtool
# --tag option, using:
# autoconf --trace 'LT_SUPPORTED_TAG:$1'
AC_DEFUN([LT_SUPPORTED_TAG], [])
# C support is built-in for now
m4_define([_LT_LANG_C_enabled], [])
m4_define([_LT_TAGS], [])
# LT_LANG(LANG)
# -------------
# Enable libtool support for the given language if not already enabled.
AC_DEFUN([LT_LANG],
[AC_BEFORE([$0], [LT_OUTPUT])dnl
m4_case([$1],
[C], [_LT_LANG(C)],
[C++], [_LT_LANG(CXX)],
[Go], [_LT_LANG(GO)],
[Java], [_LT_LANG(GCJ)],
[Fortran 77], [_LT_LANG(F77)],
[Fortran], [_LT_LANG(FC)],
[Windows Resource], [_LT_LANG(RC)],
[m4_ifdef([_LT_LANG_]$1[_CONFIG],
[_LT_LANG($1)],
[m4_fatal([$0: unsupported language: "$1"])])])dnl
])# LT_LANG
# _LT_LANG(LANGNAME)
# ------------------
m4_defun([_LT_LANG],
[m4_ifdef([_LT_LANG_]$1[_enabled], [],
[LT_SUPPORTED_TAG([$1])dnl
m4_append([_LT_TAGS], [$1 ])dnl
m4_define([_LT_LANG_]$1[_enabled], [])dnl
_LT_LANG_$1_CONFIG($1)])dnl
])# _LT_LANG
m4_ifndef([AC_PROG_GO], [
############################################################
# NOTE: This macro has been submitted for inclusion into #
# GNU Autoconf as AC_PROG_GO. When it is available in #
# a released version of Autoconf we should remove this #
# macro and use it instead. #
############################################################
m4_defun([AC_PROG_GO],
[AC_LANG_PUSH(Go)dnl
AC_ARG_VAR([GOC], [Go compiler command])dnl
AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
_AC_ARG_VAR_LDFLAGS()dnl
AC_CHECK_TOOL(GOC, gccgo)
if test -z "$GOC"; then
if test -n "$ac_tool_prefix"; then
AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
fi
fi
if test -z "$GOC"; then
AC_CHECK_PROG(GOC, gccgo, gccgo, false)
fi
])#m4_defun
])#m4_ifndef
# _LT_LANG_DEFAULT_CONFIG
# -----------------------
m4_defun([_LT_LANG_DEFAULT_CONFIG],
[AC_PROVIDE_IFELSE([AC_PROG_CXX],
[LT_LANG(CXX)],
[m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
AC_PROVIDE_IFELSE([AC_PROG_F77],
[LT_LANG(F77)],
[m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
AC_PROVIDE_IFELSE([AC_PROG_FC],
[LT_LANG(FC)],
[m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
dnl pulling things in needlessly.
AC_PROVIDE_IFELSE([AC_PROG_GCJ],
[LT_LANG(GCJ)],
[AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
[LT_LANG(GCJ)],
[AC_PROVIDE_IFELSE([LT_PROG_GCJ],
[LT_LANG(GCJ)],
[m4_ifdef([AC_PROG_GCJ],
[m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
m4_ifdef([A][M_PROG_GCJ],
[m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
m4_ifdef([LT_PROG_GCJ],
[m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
AC_PROVIDE_IFELSE([AC_PROG_GO],
[LT_LANG(GO)],
[m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
AC_PROVIDE_IFELSE([LT_PROG_RC],
[LT_LANG(RC)],
[m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
])# _LT_LANG_DEFAULT_CONFIG
# Obsolete macros:
AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
dnl AC_DEFUN([AC_LIBTOOL_F77], [])
dnl AC_DEFUN([AC_LIBTOOL_FC], [])
dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
dnl AC_DEFUN([AC_LIBTOOL_RC], [])
# _LT_TAG_COMPILER
# ----------------
m4_defun([_LT_TAG_COMPILER],
[AC_REQUIRE([AC_PROG_CC])dnl
_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
# If no C compiler was specified, use CC.
LTCC=${LTCC-"$CC"}
# If no C compiler flags were specified, use CFLAGS.
LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
# Allow CC to be a program name with arguments.
compiler=$CC
])# _LT_TAG_COMPILER
# _LT_COMPILER_BOILERPLATE
# ------------------------
# Check for compiler boilerplate output or warnings with
# the simple compiler test code.
m4_defun([_LT_COMPILER_BOILERPLATE],
[m4_require([_LT_DECL_SED])dnl
ac_outfile=conftest.$ac_objext
echo "$lt_simple_compile_test_code" >conftest.$ac_ext
eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
_lt_compiler_boilerplate=`cat conftest.err`
$RM conftest*
])# _LT_COMPILER_BOILERPLATE
# _LT_LINKER_BOILERPLATE
# ----------------------
# Check for linker boilerplate output or warnings with
# the simple link test code.
m4_defun([_LT_LINKER_BOILERPLATE],
[m4_require([_LT_DECL_SED])dnl
ac_outfile=conftest.$ac_objext
echo "$lt_simple_link_test_code" >conftest.$ac_ext
eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
_lt_linker_boilerplate=`cat conftest.err`
$RM -r conftest*
])# _LT_LINKER_BOILERPLATE
# _LT_REQUIRED_DARWIN_CHECKS
# -------------------------
m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
case $host_os in
rhapsody* | darwin*)
AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
AC_CHECK_TOOL([LIPO], [lipo], [:])
AC_CHECK_TOOL([OTOOL], [otool], [:])
AC_CHECK_TOOL([OTOOL64], [otool64], [:])
_LT_DECL([], [DSYMUTIL], [1],
[Tool to manipulate archived DWARF debug symbol files on Mac OS X])
_LT_DECL([], [NMEDIT], [1],
[Tool to change global to local symbols on Mac OS X])
_LT_DECL([], [LIPO], [1],
[Tool to manipulate fat objects and archives on Mac OS X])
_LT_DECL([], [OTOOL], [1],
[ldd/readelf like tool for Mach-O binaries on Mac OS X])
_LT_DECL([], [OTOOL64], [1],
[ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
[lt_cv_apple_cc_single_mod=no
if test -z "${LT_MULTI_MODULE}"; then
# By default we will add the -single_module flag. You can override
# by either setting the environment variable LT_MULTI_MODULE
# non-empty at configure time, or by adding -multi_module to the
# link flags.
rm -rf libconftest.dylib*
echo "int foo(void){return 1;}" > conftest.c
echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
-dynamiclib -Wl,-single_module conftest.c 2>conftest.err
_lt_result=$?
# If there is a non-empty error log, and "single_module"
# appears in it, assume the flag caused a linker warning
if test -s conftest.err && $GREP single_module conftest.err; then
cat conftest.err >&AS_MESSAGE_LOG_FD
# Otherwise, if the output was created with a 0 exit code from
# the compiler, it worked.
elif test -f libconftest.dylib && test $_lt_result -eq 0; then
lt_cv_apple_cc_single_mod=yes
else
cat conftest.err >&AS_MESSAGE_LOG_FD
fi
rm -rf libconftest.dylib*
rm -f conftest.*
fi])
AC_CACHE_CHECK([for -exported_symbols_list linker flag],
[lt_cv_ld_exported_symbols_list],
[lt_cv_ld_exported_symbols_list=no
save_LDFLAGS=$LDFLAGS
echo "_main" > conftest.sym
LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
[lt_cv_ld_exported_symbols_list=yes],
[lt_cv_ld_exported_symbols_list=no])
LDFLAGS="$save_LDFLAGS"
])
AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
[lt_cv_ld_force_load=no
cat > conftest.c << _LT_EOF
int forced_loaded() { return 2;}
_LT_EOF
echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
$LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
$AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
$RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
cat > conftest.c << _LT_EOF
int main() { return 0;}
_LT_EOF
echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
_lt_result=$?
if test -s conftest.err && $GREP force_load conftest.err; then
cat conftest.err >&AS_MESSAGE_LOG_FD
elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then
lt_cv_ld_force_load=yes
else
cat conftest.err >&AS_MESSAGE_LOG_FD
fi
rm -f conftest.err libconftest.a conftest conftest.c
rm -rf conftest.dSYM
])
case $host_os in
rhapsody* | darwin1.[[012]])
_lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
darwin1.*)
_lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
darwin*) # darwin 5.x on
# if running on 10.5 or later, the deployment target defaults
# to the OS version, if on x86, and 10.4, the deployment
# target defaults to 10.4. Don't you love it?
case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
_lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
10.[[012]]*)
_lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
10.*)
_lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
esac
;;
esac
if test "$lt_cv_apple_cc_single_mod" = "yes"; then
_lt_dar_single_mod='$single_module'
fi
if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
_lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
else
_lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
fi
if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
_lt_dsymutil='~$DSYMUTIL $lib || :'
else
_lt_dsymutil=
fi
;;
esac
])
# _LT_DARWIN_LINKER_FEATURES([TAG])
# ---------------------------------
# Checks for linker and compiler features on darwin
m4_defun([_LT_DARWIN_LINKER_FEATURES],
[
m4_require([_LT_REQUIRED_DARWIN_CHECKS])
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
_LT_TAGVAR(hardcode_direct, $1)=no
_LT_TAGVAR(hardcode_automatic, $1)=yes
_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
if test "$lt_cv_ld_force_load" = "yes"; then
_LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
[FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes])
else
_LT_TAGVAR(whole_archive_flag_spec, $1)=''
fi
_LT_TAGVAR(link_all_deplibs, $1)=yes
_LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
case $cc_basename in
ifort*) _lt_dar_can_shared=yes ;;
*) _lt_dar_can_shared=$GCC ;;
esac
if test "$_lt_dar_can_shared" = "yes"; then
output_verbose_link_cmd=func_echo_all
_LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
_LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
_LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
_LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
m4_if([$1], [CXX],
[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then
_LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
_LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
fi
],[])
else
_LT_TAGVAR(ld_shlibs, $1)=no
fi
])
# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
# ----------------------------------
# Links a minimal program and checks the executable
# for the system default hardcoded library path. In most cases,
# this is /usr/lib:/lib, but when the MPI compilers are used
# the location of the communication and MPI libs are included too.
# If we don't find anything, use the default library path according
# to the aix ld manual.
# Store the results from the different compilers for each TAGNAME.
# Allow to override them for all tags through lt_cv_aix_libpath.
m4_defun([_LT_SYS_MODULE_PATH_AIX],
[m4_require([_LT_DECL_SED])dnl
if test "${lt_cv_aix_libpath+set}" = set; then
aix_libpath=$lt_cv_aix_libpath
else
AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
[AC_LINK_IFELSE([AC_LANG_PROGRAM],[
lt_aix_libpath_sed='[
/Import File Strings/,/^$/ {
/^0/ {
s/^0 *\([^ ]*\) *$/\1/
p
}
}]'
_LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
# Check for a 64-bit object if we didn't find anything.
if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
_LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
fi],[])
if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
_LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib"
fi
])
aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
fi
])# _LT_SYS_MODULE_PATH_AIX
# _LT_SHELL_INIT(ARG)
# -------------------
m4_define([_LT_SHELL_INIT],
[m4_divert_text([M4SH-INIT], [$1
])])# _LT_SHELL_INIT
# _LT_PROG_ECHO_BACKSLASH
# -----------------------
# Find how we can fake an echo command that does not interpret backslash.
# In particular, with Autoconf 2.60 or later we add some code to the start
# of the generated configure script which will find a shell with a builtin
# printf (which we can use as an echo command).
m4_defun([_LT_PROG_ECHO_BACKSLASH],
[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
AC_MSG_CHECKING([how to print strings])
# Test print first, because it will be a builtin if present.
if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
ECHO='print -r --'
elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
ECHO='printf %s\n'
else
# Use this function as a fallback that always works.
func_fallback_echo ()
{
eval 'cat <<_LTECHO_EOF
$[]1
_LTECHO_EOF'
}
ECHO='func_fallback_echo'
fi
# func_echo_all arg...
# Invoke $ECHO with all args, space-separated.
func_echo_all ()
{
$ECHO "$*"
}
case "$ECHO" in
printf*) AC_MSG_RESULT([printf]) ;;
print*) AC_MSG_RESULT([print -r]) ;;
*) AC_MSG_RESULT([cat]) ;;
esac
m4_ifdef([_AS_DETECT_SUGGESTED],
[_AS_DETECT_SUGGESTED([
test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
PATH=/empty FPATH=/empty; export PATH FPATH
test "X`printf %s $ECHO`" = "X$ECHO" \
|| test "X`print -r -- $ECHO`" = "X$ECHO" )])])
_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
])# _LT_PROG_ECHO_BACKSLASH
# _LT_WITH_SYSROOT
# ----------------
AC_DEFUN([_LT_WITH_SYSROOT],
[AC_MSG_CHECKING([for sysroot])
AC_ARG_WITH([sysroot],
[ --with-sysroot[=DIR] Search for dependent libraries within DIR
(or the compiler's sysroot if not specified).],
[], [with_sysroot=no])
dnl lt_sysroot will always be passed unquoted. We quote it here
dnl in case the user passed a directory name.
lt_sysroot=
case ${with_sysroot} in #(
yes)
if test "$GCC" = yes; then
lt_sysroot=`$CC --print-sysroot 2>/dev/null`
fi
;; #(
/*)
lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
;; #(
no|'')
;; #(
*)
AC_MSG_RESULT([${with_sysroot}])
AC_MSG_ERROR([The sysroot must be an absolute path.])
;;
esac
AC_MSG_RESULT([${lt_sysroot:-no}])
_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
[dependent libraries, and in which our libraries should be installed.])])
# _LT_ENABLE_LOCK
# ---------------
m4_defun([_LT_ENABLE_LOCK],
[AC_ARG_ENABLE([libtool-lock],
[AS_HELP_STRING([--disable-libtool-lock],
[avoid locking (might break parallel builds)])])
test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
# Some flags need to be propagated to the compiler or linker for good
# libtool support.
case $host in
ia64-*-hpux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
if AC_TRY_EVAL(ac_compile); then
case `/usr/bin/file conftest.$ac_objext` in
*ELF-32*)
HPUX_IA64_MODE="32"
;;
*ELF-64*)
HPUX_IA64_MODE="64"
;;
esac
fi
rm -rf conftest*
;;
*-*-irix6*)
# Find out which ABI we are using.
echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
if AC_TRY_EVAL(ac_compile); then
if test "$lt_cv_prog_gnu_ld" = yes; then
case `/usr/bin/file conftest.$ac_objext` in
*32-bit*)
LD="${LD-ld} -melf32bsmip"
;;
*N32*)
LD="${LD-ld} -melf32bmipn32"
;;
*64-bit*)
LD="${LD-ld} -melf64bmip"
;;
esac
else
case `/usr/bin/file conftest.$ac_objext` in
*32-bit*)
LD="${LD-ld} -32"
;;
*N32*)
LD="${LD-ld} -n32"
;;
*64-bit*)
LD="${LD-ld} -64"
;;
esac
fi
fi
rm -rf conftest*
;;
x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
if AC_TRY_EVAL(ac_compile); then
case `/usr/bin/file conftest.o` in
*32-bit*)
case $host in
x86_64-*kfreebsd*-gnu)
LD="${LD-ld} -m elf_i386_fbsd"
;;
x86_64-*linux*)
case `/usr/bin/file conftest.o` in
*x86-64*)
LD="${LD-ld} -m elf32_x86_64"
;;
*)
LD="${LD-ld} -m elf_i386"
;;
esac
;;
powerpc64le-*)
LD="${LD-ld} -m elf32lppclinux"
;;
powerpc64-*)
LD="${LD-ld} -m elf32ppclinux"
;;
s390x-*linux*)
LD="${LD-ld} -m elf_s390"
;;
sparc64-*linux*)
LD="${LD-ld} -m elf32_sparc"
;;
esac
;;
*64-bit*)
case $host in
x86_64-*kfreebsd*-gnu)
LD="${LD-ld} -m elf_x86_64_fbsd"
;;
x86_64-*linux*)
LD="${LD-ld} -m elf_x86_64"
;;
powerpcle-*)
LD="${LD-ld} -m elf64lppc"
;;
powerpc-*)
LD="${LD-ld} -m elf64ppc"
;;
s390*-*linux*|s390*-*tpf*)
LD="${LD-ld} -m elf64_s390"
;;
sparc*-*linux*)
LD="${LD-ld} -m elf64_sparc"
;;
esac
;;
esac
fi
rm -rf conftest*
;;
*-*-sco3.2v5*)
# On SCO OpenServer 5, we need -belf to get full-featured binaries.
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
[AC_LANG_PUSH(C)
AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
AC_LANG_POP])
if test x"$lt_cv_cc_needs_belf" != x"yes"; then
# this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
CFLAGS="$SAVE_CFLAGS"
fi
;;
*-*solaris*)
# Find out which ABI we are using.
echo 'int i;' > conftest.$ac_ext
if AC_TRY_EVAL(ac_compile); then
case `/usr/bin/file conftest.o` in
*64-bit*)
case $lt_cv_prog_gnu_ld in
yes*)
case $host in
i?86-*-solaris*)
LD="${LD-ld} -m elf_x86_64"
;;
sparc*-*-solaris*)
LD="${LD-ld} -m elf64_sparc"
;;
esac
# GNU ld 2.21 introduced _sol2 emulations. Use them if available.
if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
LD="${LD-ld}_sol2"
fi
;;
*)
if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
LD="${LD-ld} -64"
fi
;;
esac
;;
esac
fi
rm -rf conftest*
;;
esac
need_locks="$enable_libtool_lock"
])# _LT_ENABLE_LOCK
# _LT_PROG_AR
# -----------
m4_defun([_LT_PROG_AR],
[AC_CHECK_TOOLS(AR, [ar], false)
: ${AR=ar}
: ${AR_FLAGS=cru}
_LT_DECL([], [AR], [1], [The archiver])
_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
[lt_cv_ar_at_file=no
AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
[echo conftest.$ac_objext > conftest.lst
lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
AC_TRY_EVAL([lt_ar_try])
if test "$ac_status" -eq 0; then
# Ensure the archiver fails upon bogus file names.
rm -f conftest.$ac_objext libconftest.a
AC_TRY_EVAL([lt_ar_try])
if test "$ac_status" -ne 0; then
lt_cv_ar_at_file=@
fi
fi
rm -f conftest.* libconftest.a
])
])
if test "x$lt_cv_ar_at_file" = xno; then
archiver_list_spec=
else
archiver_list_spec=$lt_cv_ar_at_file
fi
_LT_DECL([], [archiver_list_spec], [1],
[How to feed a file listing to the archiver])
])# _LT_PROG_AR
# _LT_CMD_OLD_ARCHIVE
# -------------------
m4_defun([_LT_CMD_OLD_ARCHIVE],
[_LT_PROG_AR
AC_CHECK_TOOL(STRIP, strip, :)
test -z "$STRIP" && STRIP=:
_LT_DECL([], [STRIP], [1], [A symbol stripping program])
AC_CHECK_TOOL(RANLIB, ranlib, :)
test -z "$RANLIB" && RANLIB=:
_LT_DECL([], [RANLIB], [1],
[Commands used to install an old-style archive])
# Determine commands to create old-style static archives.
old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
old_postinstall_cmds='chmod 644 $oldlib'
old_postuninstall_cmds=
if test -n "$RANLIB"; then
case $host_os in
openbsd*)
old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
;;
*)
old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
;;
esac
old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
fi
case $host_os in
darwin*)
lock_old_archive_extraction=yes ;;
*)
lock_old_archive_extraction=no ;;
esac
_LT_DECL([], [old_postinstall_cmds], [2])
_LT_DECL([], [old_postuninstall_cmds], [2])
_LT_TAGDECL([], [old_archive_cmds], [2],
[Commands used to build an old-style archive])
_LT_DECL([], [lock_old_archive_extraction], [0],
[Whether to use a lock for old archive extraction])
])# _LT_CMD_OLD_ARCHIVE
# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
# ----------------------------------------------------------------
# Check whether the given compiler option works
AC_DEFUN([_LT_COMPILER_OPTION],
[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
m4_require([_LT_DECL_SED])dnl
AC_CACHE_CHECK([$1], [$2],
[$2=no
m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
echo "$lt_simple_compile_test_code" > conftest.$ac_ext
lt_compiler_flag="$3"
# Insert the option either (1) after the last *FLAGS variable, or
# (2) before a word containing "conftest.", or (3) at the end.
# Note that $ac_compile itself does not contain backslashes and begins
# with a dollar sign (not a hyphen), so the echo should work correctly.
# The option is referenced via a variable to avoid confusing sed.
lt_compile=`echo "$ac_compile" | $SED \
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&AS_MESSAGE_LOG_FD
echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
$ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
$SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
$2=yes
fi
fi
$RM conftest*
])
if test x"[$]$2" = xyes; then
m4_if([$5], , :, [$5])
else
m4_if([$6], , :, [$6])
fi
])# _LT_COMPILER_OPTION
# Old name:
AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
# [ACTION-SUCCESS], [ACTION-FAILURE])
# ----------------------------------------------------
# Check whether the given linker option works
AC_DEFUN([_LT_LINKER_OPTION],
[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
m4_require([_LT_DECL_SED])dnl
AC_CACHE_CHECK([$1], [$2],
[$2=no
save_LDFLAGS="$LDFLAGS"
LDFLAGS="$LDFLAGS $3"
echo "$lt_simple_link_test_code" > conftest.$ac_ext
if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
# The linker can only warn and ignore the option if not recognized
# So say no if there are warnings
if test -s conftest.err; then
# Append any errors to the config.log.
cat conftest.err 1>&AS_MESSAGE_LOG_FD
$ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
$SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
if diff conftest.exp conftest.er2 >/dev/null; then
$2=yes
fi
else
$2=yes
fi
fi
$RM -r conftest*
LDFLAGS="$save_LDFLAGS"
])
if test x"[$]$2" = xyes; then
m4_if([$4], , :, [$4])
else
m4_if([$5], , :, [$5])
fi
])# _LT_LINKER_OPTION
# Old name:
AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
# LT_CMD_MAX_LEN
#---------------
AC_DEFUN([LT_CMD_MAX_LEN],
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
# find the maximum length of command line arguments
AC_MSG_CHECKING([the maximum length of command line arguments])
AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
i=0
teststring="ABCD"
case $build_os in
msdosdjgpp*)
# On DJGPP, this test can blow up pretty badly due to problems in libc
# (any single argument exceeding 2000 bytes causes a buffer overrun
# during glob expansion). Even if it were fixed, the result of this
# check would be larger than it should be.
lt_cv_sys_max_cmd_len=12288; # 12K is about right
;;
gnu*)
# Under GNU Hurd, this test is not required because there is
# no limit to the length of command line arguments.
# Libtool will interpret -1 as no limit whatsoever
lt_cv_sys_max_cmd_len=-1;
;;
cygwin* | mingw* | cegcc*)
# On Win9x/ME, this test blows up -- it succeeds, but takes
# about 5 minutes as the teststring grows exponentially.
# Worse, since 9x/ME are not pre-emptively multitasking,
# you end up with a "frozen" computer, even though with patience
# the test eventually succeeds (with a max line length of 256k).
# Instead, let's just punt: use the minimum linelength reported by
# all of the supported platforms: 8192 (on NT/2K/XP).
lt_cv_sys_max_cmd_len=8192;
;;
mint*)
# On MiNT this can take a long time and run out of memory.
lt_cv_sys_max_cmd_len=8192;
;;
amigaos*)
# On AmigaOS with pdksh, this test takes hours, literally.
# So we just punt and use a minimum line length of 8192.
lt_cv_sys_max_cmd_len=8192;
;;
netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
# This has been around since 386BSD, at least. Likely further.
if test -x /sbin/sysctl; then
lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
elif test -x /usr/sbin/sysctl; then
lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
else
lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
fi
# And add a safety zone
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
;;
interix*)
# We know the value 262144 and hardcode it with a safety zone (like BSD)
lt_cv_sys_max_cmd_len=196608
;;
os2*)
# The test takes a long time on OS/2.
lt_cv_sys_max_cmd_len=8192
;;
osf*)
# Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
# due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
# nice to cause kernel panics so lets avoid the loop below.
# First set a reasonable default.
lt_cv_sys_max_cmd_len=16384
#
if test -x /sbin/sysconfig; then
case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
*1*) lt_cv_sys_max_cmd_len=-1 ;;
esac
fi
;;
sco3.2v5*)
lt_cv_sys_max_cmd_len=102400
;;
sysv5* | sco5v6* | sysv4.2uw2*)
kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
if test -n "$kargmax"; then
lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
else
lt_cv_sys_max_cmd_len=32768
fi
;;
*)
lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
if test -n "$lt_cv_sys_max_cmd_len" && \
test undefined != "$lt_cv_sys_max_cmd_len"; then
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
else
# Make teststring a little bigger before we do anything with it.
# a 1K string should be a reasonable start.
for i in 1 2 3 4 5 6 7 8 ; do
teststring=$teststring$teststring
done
SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
# If test is not a shell built-in, we'll probably end up computing a
# maximum length that is only half of the actual maximum length, but
# we can't tell.
while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \
= "X$teststring$teststring"; } >/dev/null 2>&1 &&
test $i != 17 # 1/2 MB should be enough
do
i=`expr $i + 1`
teststring=$teststring$teststring
done
# Only check the string length outside the loop.
lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
teststring=
# Add a significant safety factor because C++ compilers can tack on
# massive amounts of additional arguments before passing them to the
# linker. It appears as though 1/2 is a usable value.
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
fi
;;
esac
])
if test -n $lt_cv_sys_max_cmd_len ; then
AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
else
AC_MSG_RESULT(none)
fi
max_cmd_len=$lt_cv_sys_max_cmd_len
_LT_DECL([], [max_cmd_len], [0],
[What is the maximum length of a command?])
])# LT_CMD_MAX_LEN
# Old name:
AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
# _LT_HEADER_DLFCN
# ----------------
m4_defun([_LT_HEADER_DLFCN],
[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
])# _LT_HEADER_DLFCN
# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
# ----------------------------------------------------------------
m4_defun([_LT_TRY_DLOPEN_SELF],
[m4_require([_LT_HEADER_DLFCN])dnl
if test "$cross_compiling" = yes; then :
[$4]
else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
[#line $LINENO "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
#include
#endif
#include
#ifdef RTLD_GLOBAL
# define LT_DLGLOBAL RTLD_GLOBAL
#else
# ifdef DL_GLOBAL
# define LT_DLGLOBAL DL_GLOBAL
# else
# define LT_DLGLOBAL 0
# endif
#endif
/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
find out it does not work in some platform. */
#ifndef LT_DLLAZY_OR_NOW
# ifdef RTLD_LAZY
# define LT_DLLAZY_OR_NOW RTLD_LAZY
# else
# ifdef DL_LAZY
# define LT_DLLAZY_OR_NOW DL_LAZY
# else
# ifdef RTLD_NOW
# define LT_DLLAZY_OR_NOW RTLD_NOW
# else
# ifdef DL_NOW
# define LT_DLLAZY_OR_NOW DL_NOW
# else
# define LT_DLLAZY_OR_NOW 0
# endif
# endif
# endif
# endif
#endif
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
int fnord () __attribute__((visibility("default")));
#endif
int fnord () { return 42; }
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
int status = $lt_dlunknown;
if (self)
{
if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
else
{
if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
else puts (dlerror ());
}
/* dlclose (self); */
}
else
puts (dlerror ());
return status;
}]
_LT_EOF
if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
(./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
lt_status=$?
case x$lt_status in
x$lt_dlno_uscore) $1 ;;
x$lt_dlneed_uscore) $2 ;;
x$lt_dlunknown|x*) $3 ;;
esac
else :
# compilation failed
$3
fi
fi
rm -fr conftest*
])# _LT_TRY_DLOPEN_SELF
# LT_SYS_DLOPEN_SELF
# ------------------
AC_DEFUN([LT_SYS_DLOPEN_SELF],
[m4_require([_LT_HEADER_DLFCN])dnl
if test "x$enable_dlopen" != xyes; then
enable_dlopen=unknown
enable_dlopen_self=unknown
enable_dlopen_self_static=unknown
else
lt_cv_dlopen=no
lt_cv_dlopen_libs=
case $host_os in
beos*)
lt_cv_dlopen="load_add_on"
lt_cv_dlopen_libs=
lt_cv_dlopen_self=yes
;;
mingw* | pw32* | cegcc*)
lt_cv_dlopen="LoadLibrary"
lt_cv_dlopen_libs=
;;
cygwin*)
lt_cv_dlopen="dlopen"
lt_cv_dlopen_libs=
;;
darwin*)
# if libdl is installed we need to link against it
AC_CHECK_LIB([dl], [dlopen],
[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
lt_cv_dlopen="dyld"
lt_cv_dlopen_libs=
lt_cv_dlopen_self=yes
])
;;
*)
AC_CHECK_FUNC([shl_load],
[lt_cv_dlopen="shl_load"],
[AC_CHECK_LIB([dld], [shl_load],
[lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
[AC_CHECK_FUNC([dlopen],
[lt_cv_dlopen="dlopen"],
[AC_CHECK_LIB([dl], [dlopen],
[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
[AC_CHECK_LIB([svld], [dlopen],
[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
[AC_CHECK_LIB([dld], [dld_link],
[lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
])
])
])
])
])
;;
esac
if test "x$lt_cv_dlopen" != xno; then
enable_dlopen=yes
else
enable_dlopen=no
fi
case $lt_cv_dlopen in
dlopen)
save_CPPFLAGS="$CPPFLAGS"
test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
save_LDFLAGS="$LDFLAGS"
wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
save_LIBS="$LIBS"
LIBS="$lt_cv_dlopen_libs $LIBS"
AC_CACHE_CHECK([whether a program can dlopen itself],
lt_cv_dlopen_self, [dnl
_LT_TRY_DLOPEN_SELF(
lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
])
if test "x$lt_cv_dlopen_self" = xyes; then
wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
lt_cv_dlopen_self_static, [dnl
_LT_TRY_DLOPEN_SELF(
lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
])
fi
CPPFLAGS="$save_CPPFLAGS"
LDFLAGS="$save_LDFLAGS"
LIBS="$save_LIBS"
;;
esac
case $lt_cv_dlopen_self in
yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
*) enable_dlopen_self=unknown ;;
esac
case $lt_cv_dlopen_self_static in
yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
*) enable_dlopen_self_static=unknown ;;
esac
fi
_LT_DECL([dlopen_support], [enable_dlopen], [0],
[Whether dlopen is supported])
_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
[Whether dlopen of programs is supported])
_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
[Whether dlopen of statically linked programs is supported])
])# LT_SYS_DLOPEN_SELF
# Old name:
AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
# _LT_COMPILER_C_O([TAGNAME])
# ---------------------------
# Check to see if options -c and -o are simultaneously supported by compiler.
# This macro does not hard code the compiler like AC_PROG_CC_C_O.
m4_defun([_LT_COMPILER_C_O],
[m4_require([_LT_DECL_SED])dnl
m4_require([_LT_FILEUTILS_DEFAULTS])dnl
m4_require([_LT_TAG_COMPILER])dnl
AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
[_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
[_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
$RM -r conftest 2>/dev/null
mkdir conftest
cd conftest
mkdir out
echo "$lt_simple_compile_test_code" > conftest.$ac_ext
lt_compiler_flag="-o out/conftest2.$ac_objext"
# Insert the option either (1) after the last *FLAGS variable, or
# (2) before a word containing "conftest.", or (3) at the end.
# Note that $ac_compile itself does not contain backslashes and begins
# with a dollar sign (not a hyphen), so the echo should work correctly.
lt_compile=`echo "$ac_compile" | $SED \
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&AS_MESSAGE_LOG_FD
echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings
$ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
$SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
fi
fi
chmod u+w . 2>&AS_MESSAGE_LOG_FD
$RM conftest*
# SGI C++ compiler will create directory out/ii_files/ for
# template instantiation
test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
$RM out/* && rmdir out
cd ..
$RM -r conftest
$RM conftest*
])
_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
[Does compiler simultaneously support -c and -o options?])
])# _LT_COMPILER_C_O
# _LT_COMPILER_FILE_LOCKS([TAGNAME])
# ----------------------------------
# Check to see if we can do hard links to lock some files if needed
m4_defun([_LT_COMPILER_FILE_LOCKS],
[m4_require([_LT_ENABLE_LOCK])dnl
m4_require([_LT_FILEUTILS_DEFAULTS])dnl
_LT_COMPILER_C_O([$1])
hard_links="nottested"
if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
# do not overwrite the value of need_locks provided by the user
AC_MSG_CHECKING([if we can lock with hard links])
hard_links=yes
$RM conftest*
ln conftest.a conftest.b 2>/dev/null && hard_links=no
touch conftest.a
ln conftest.a conftest.b 2>&5 || hard_links=no
ln conftest.a conftest.b 2>/dev/null && hard_links=no
AC_MSG_RESULT([$hard_links])
if test "$hard_links" = no; then
AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
need_locks=warn
fi
else
need_locks=no
fi
_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
])# _LT_COMPILER_FILE_LOCKS
# _LT_CHECK_OBJDIR
# ----------------
m4_defun([_LT_CHECK_OBJDIR],
[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
[rm -f .libs 2>/dev/null
mkdir .libs 2>/dev/null
if test -d .libs; then
lt_cv_objdir=.libs
else
# MS-DOS does not allow filenames that begin with a dot.
lt_cv_objdir=_libs
fi
rmdir .libs 2>/dev/null])
objdir=$lt_cv_objdir
_LT_DECL([], [objdir], [0],
[The name of the directory that contains temporary libtool files])dnl
m4_pattern_allow([LT_OBJDIR])dnl
AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
[Define to the sub-directory in which libtool stores uninstalled libraries.])
])# _LT_CHECK_OBJDIR
# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
# --------------------------------------
# Check hardcoding attributes.
m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
[AC_MSG_CHECKING([how to hardcode library paths into programs])
_LT_TAGVAR(hardcode_action, $1)=
if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
test -n "$_LT_TAGVAR(runpath_var, $1)" ||
test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
# We can hardcode non-existent directories.
if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
# If the only mechanism to avoid hardcoding is shlibpath_var, we
# have to relink, otherwise we might link with an installed library
# when we should be linking with a yet-to-be-installed one
## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
# Linking always hardcodes the temporary library directory.
_LT_TAGVAR(hardcode_action, $1)=relink
else
# We can link without hardcoding, and we can hardcode nonexisting dirs.
_LT_TAGVAR(hardcode_action, $1)=immediate
fi
else
# We cannot hardcode anything, or else we can only hardcode existing
# directories.
_LT_TAGVAR(hardcode_action, $1)=unsupported
fi
AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
# Fast installation is not supported
enable_fast_install=no
elif test "$shlibpath_overrides_runpath" = yes ||
test "$enable_shared" = no; then
# Fast installation is not necessary
enable_fast_install=needless
fi
_LT_TAGDECL([], [hardcode_action], [0],
[How to hardcode a shared library path into an executable])
])# _LT_LINKER_HARDCODE_LIBPATH
# _LT_CMD_STRIPLIB
# ----------------
m4_defun([_LT_CMD_STRIPLIB],
[m4_require([_LT_DECL_EGREP])
striplib=
old_striplib=
AC_MSG_CHECKING([whether stripping libraries is possible])
if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
test -z "$striplib" && striplib="$STRIP --strip-unneeded"
AC_MSG_RESULT([yes])
else
# FIXME - insert some real tests, host_os isn't really good enough
case $host_os in
darwin*)
if test -n "$STRIP" ; then
striplib="$STRIP -x"
old_striplib="$STRIP -S"
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
fi
;;
*)
AC_MSG_RESULT([no])
;;
esac
fi
_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
_LT_DECL([], [striplib], [1])
])# _LT_CMD_STRIPLIB
# _LT_SYS_DYNAMIC_LINKER([TAG])
# -----------------------------
# PORTME Fill in your ld.so characteristics
m4_defun([_LT_SYS_DYNAMIC_LINKER],
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
m4_require([_LT_DECL_EGREP])dnl
m4_require([_LT_FILEUTILS_DEFAULTS])dnl
m4_require([_LT_DECL_OBJDUMP])dnl
m4_require([_LT_DECL_SED])dnl
m4_require([_LT_CHECK_SHELL_FEATURES])dnl
AC_MSG_CHECKING([dynamic linker characteristics])
m4_if([$1],
[], [
if test "$GCC" = yes; then
case $host_os in
darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
*) lt_awk_arg="/^libraries:/" ;;
esac
case $host_os in
mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;;
*) lt_sed_strip_eq="s,=/,/,g" ;;
esac
lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
case $lt_search_path_spec in
*\;*)
# if the path contains ";" then we assume it to be the separator
# otherwise default to the standard path separator (i.e. ":") - it is
# assumed that no part of a normal pathname contains ";" but that should
# okay in the real world where ";" in dirpaths is itself problematic.
lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
;;
*)
lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
;;
esac
# Ok, now we have the path, separated by spaces, we can step through it
# and add multilib dir if necessary.
lt_tmp_lt_search_path_spec=
lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
for lt_sys_path in $lt_search_path_spec; do
if test -d "$lt_sys_path/$lt_multi_os_dir"; then
lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
else
test -d "$lt_sys_path" && \
lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
fi
done
lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
BEGIN {RS=" "; FS="/|\n";} {
lt_foo="";
lt_count=0;
for (lt_i = NF; lt_i > 0; lt_i--) {
if ($lt_i != "" && $lt_i != ".") {
if ($lt_i == "..") {
lt_count++;
} else {
if (lt_count == 0) {
lt_foo="/" $lt_i lt_foo;
} else {
lt_count--;
}
}
}
}
if (lt_foo != "") { lt_freq[[lt_foo]]++; }
if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
}'`
# AWK program above erroneously prepends '/' to C:/dos/paths
# for these hosts.
case $host_os in
mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
$SED 's,/\([[A-Za-z]]:\),\1,g'` ;;
esac
sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
else
sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
fi])
library_names_spec=
libname_spec='lib$name'
soname_spec=
shrext_cmds=".so"
postinstall_cmds=
postuninstall_cmds=
finish_cmds=
finish_eval=
shlibpath_var=
shlibpath_overrides_runpath=unknown
version_type=none
dynamic_linker="$host_os ld.so"
sys_lib_dlsearch_path_spec="/lib /usr/lib"
need_lib_prefix=unknown
hardcode_into_libs=no
# when you set need_version to no, make sure it does not cause -set_version
# flags to be left without arguments
need_version=unknown
case $host_os in
aix3*)
version_type=linux # correct to gnu/linux during the next big refactor
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
shlibpath_var=LIBPATH
# AIX 3 has no versioning support, so we append a major version to the name.
soname_spec='${libname}${release}${shared_ext}$major'
;;
aix[[4-9]]*)
version_type=linux # correct to gnu/linux during the next big refactor
need_lib_prefix=no
need_version=no
hardcode_into_libs=yes
if test "$host_cpu" = ia64; then
# AIX 5 supports IA64
library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
shlibpath_var=LD_LIBRARY_PATH
else
# With GCC up to 2.95.x, collect2 would create an import file
# for dependence libraries. The import file would start with
# the line `#! .'. This would cause the generated library to
# depend on `.', always an invalid library. This was fixed in
# development snapshots of GCC prior to 3.0.
case $host_os in
aix4 | aix4.[[01]] | aix4.[[01]].*)
if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
echo ' yes '
echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
:
else
can_build_shared=no
fi
;;
esac
# AIX (on Power*) has no versioning support, so currently we can not hardcode correct
# soname into executable. Probably we can add versioning support to
# collect2, so additional links can be useful in future.
if test "$aix_use_runtimelinking" = yes; then
# If using run time linking (on AIX 4.2 or later) use lib.so
# instead of lib.a to let people know that these are not
# typical AIX shared libraries.
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
else
# We preserve .a as extension for shared libraries through AIX4.2
# and later when we are not doing run time linking.
library_names_spec='${libname}${release}.a $libname.a'
soname_spec='${libname}${release}${shared_ext}$major'
fi
shlibpath_var=LIBPATH
fi
;;
amigaos*)
case $host_cpu in
powerpc)
# Since July 2007 AmigaOS4 officially supports .so libraries.
# When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
;;
m68k)
library_names_spec='$libname.ixlibrary $libname.a'
# Create ${libname}_ixlibrary.a entries in /sys/libs.
finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
;;
esac
;;
beos*)
library_names_spec='${libname}${shared_ext}'
dynamic_linker="$host_os ld.so"
shlibpath_var=LIBRARY_PATH
;;
bsdi[[45]]*)
version_type=linux # correct to gnu/linux during the next big refactor
need_version=no
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
soname_spec='${libname}${release}${shared_ext}$major'
finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
shlibpath_var=LD_LIBRARY_PATH
sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
# the default ld.so.conf also contains /usr/contrib/lib and
# /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
# libtool to hard-code these into programs
;;
cygwin* | mingw* | pw32* | cegcc*)
version_type=windows
shrext_cmds=".dll"
need_version=no
need_lib_prefix=no
case $GCC,$cc_basename in
yes,*)
# gcc
library_names_spec='$libname.dll.a'
# DLL is installed to $(libdir)/../bin by postinstall_cmds
postinstall_cmds='base_file=`basename \${file}`~
dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
dldir=$destdir/`dirname \$dlpath`~
test -d \$dldir || mkdir -p \$dldir~
$install_prog $dir/$dlname \$dldir/$dlname~
chmod a+x \$dldir/$dlname~
if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
fi'
postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
dlpath=$dir/\$dldll~
$RM \$dlpath'
shlibpath_overrides_runpath=yes
case $host_os in
cygwin*)
# Cygwin DLLs use 'cyg' prefix rather than 'lib'
soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
m4_if([$1], [],[
sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
;;
mingw* | cegcc*)
# MinGW DLLs use traditional 'lib' prefix
soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
;;
pw32*)
# pw32 DLLs use 'pw' prefix rather than 'lib'
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
;;
esac
dynamic_linker='Win32 ld.exe'
;;
*,cl*)
# Native MSVC
libname_spec='$name'
soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
library_names_spec='${libname}.dll.lib'
case $build_os in
mingw*)
sys_lib_search_path_spec=
lt_save_ifs=$IFS
IFS=';'
for lt_path in $LIB
do
IFS=$lt_save_ifs
# Let DOS variable expansion print the short 8.3 style file name.
lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
done
IFS=$lt_save_ifs
# Convert to MSYS style.
sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
;;
cygwin*)
# Convert to unix form, then to dos form, then back to unix form
# but this time dos style (no spaces!) so that the unix form looks
# like /cygdrive/c/PROGRA~1:/cygdr...
sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
;;
*)
sys_lib_search_path_spec="$LIB"
if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
# It is most probably a Windows format PATH.
sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
else
sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
fi
# FIXME: find the short name or the path components, as spaces are
# common. (e.g. "Program Files" -> "PROGRA~1")
;;
esac
# DLL is installed to $(libdir)/../bin by postinstall_cmds
postinstall_cmds='base_file=`basename \${file}`~
dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
dldir=$destdir/`dirname \$dlpath`~
test -d \$dldir || mkdir -p \$dldir~
$install_prog $dir/$dlname \$dldir/$dlname'
postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
dlpath=$dir/\$dldll~
$RM \$dlpath'
shlibpath_overrides_runpath=yes
dynamic_linker='Win32 link.exe'
;;
*)
# Assume MSVC wrapper
library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
dynamic_linker='Win32 ld.exe'
;;
esac
# FIXME: first we should search . and the directory the executable is in
shlibpath_var=PATH
;;
darwin* | rhapsody*)
dynamic_linker="$host_os dyld"
version_type=darwin
need_lib_prefix=no
need_version=no
library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
soname_spec='${libname}${release}${major}$shared_ext'
shlibpath_overrides_runpath=yes
shlibpath_var=DYLD_LIBRARY_PATH
shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
m4_if([$1], [],[
sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
;;
dgux*)
version_type=linux # correct to gnu/linux during the next big refactor
need_lib_prefix=no
need_version=no
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LD_LIBRARY_PATH
;;
freebsd* | dragonfly*)
# DragonFly does not have aout. When/if they implement a new
# versioning mechanism, adjust this.
if test -x /usr/bin/objformat; then
objformat=`/usr/bin/objformat`
else
case $host_os in
freebsd[[23]].*) objformat=aout ;;
*) objformat=elf ;;
esac
fi
version_type=freebsd-$objformat
case $version_type in
freebsd-elf*)
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
need_version=no
need_lib_prefix=no
;;
freebsd-*)
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
need_version=yes
;;
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
freebsd2.*)
shlibpath_overrides_runpath=yes
;;
freebsd3.[[01]]* | freebsdelf3.[[01]]*)
shlibpath_overrides_runpath=yes
hardcode_into_libs=yes
;;
freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
shlibpath_overrides_runpath=no
hardcode_into_libs=yes
;;
*) # from 4.6 on, and DragonFly
shlibpath_overrides_runpath=yes
hardcode_into_libs=yes
;;
esac
;;
haiku*)
version_type=linux # correct to gnu/linux during the next big refactor
need_lib_prefix=no
need_version=no
dynamic_linker="$host_os runtime_loader"
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LIBRARY_PATH
shlibpath_overrides_runpath=yes
sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
hardcode_into_libs=yes
;;
hpux9* | hpux10* | hpux11*)
# Give a soname corresponding to the major version so that dld.sl refuses to
# link against other versions.
version_type=sunos
need_lib_prefix=no
need_version=no
case $host_cpu in
ia64*)
shrext_cmds='.so'
hardcode_into_libs=yes
dynamic_linker="$host_os dld.so"
shlibpath_var=LD_LIBRARY_PATH
shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
soname_spec='${libname}${release}${shared_ext}$major'
if test "X$HPUX_IA64_MODE" = X32; then
sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
else
sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
fi
sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
;;
hppa*64*)
shrext_cmds='.sl'
hardcode_into_libs=yes
dynamic_linker="$host_os dld.sl"
shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
soname_spec='${libname}${release}${shared_ext}$major'
sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
;;
*)
shrext_cmds='.sl'
dynamic_linker="$host_os dld.sl"
shlibpath_var=SHLIB_PATH
shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
soname_spec='${libname}${release}${shared_ext}$major'
;;
esac
# HP-UX runs *really* slowly unless shared libraries are mode 555, ...
postinstall_cmds='chmod 555 $lib'
# or fails outright, so override atomically:
install_override_mode=555
;;
interix[[3-9]]*)
version_type=linux # correct to gnu/linux during the next big refactor
need_lib_prefix=no
need_version=no
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
soname_spec='${libname}${release}${shared_ext}$major'
dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
shlibpath_var=LD_LIBRARY_PATH
shlibpath_overrides_runpath=no
hardcode_into_libs=yes
;;
irix5* | irix6* | nonstopux*)
case $host_os in
nonstopux*) version_type=nonstopux ;;
*)
if test "$lt_cv_prog_gnu_ld" = yes; then
version_type=linux # correct to gnu/linux during the next big refactor
else
version_type=irix
fi ;;
esac
need_lib_prefix=no
need_version=no
soname_spec='${libname}${release}${shared_ext}$major'
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
case $host_os in
irix5* | nonstopux*)
libsuff= shlibsuff=
;;
*)
case $LD in # libtool.m4 will add one of these switches to LD
*-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
libsuff= shlibsuff= libmagic=32-bit;;
*-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
libsuff=32 shlibsuff=N32 libmagic=N32;;
*-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
libsuff=64 shlibsuff=64 libmagic=64-bit;;
*) libsuff= shlibsuff= libmagic=never-match;;
esac
;;
esac
shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
shlibpath_overrides_runpath=no
sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
hardcode_into_libs=yes
;;
# No shared lib support for Linux oldld, aout, or coff.
linux*oldld* | linux*aout* | linux*coff*)
dynamic_linker=no
;;
# This must be glibc/ELF.
linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
version_type=linux # correct to gnu/linux during the next big refactor
need_lib_prefix=no
need_version=no
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
soname_spec='${libname}${release}${shared_ext}$major'
finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
shlibpath_var=LD_LIBRARY_PATH
shlibpath_overrides_runpath=no
# Some binutils ld are patched to set DT_RUNPATH
AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
[lt_cv_shlibpath_overrides_runpath=no
save_LDFLAGS=$LDFLAGS
save_libdir=$libdir
eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
[AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
[lt_cv_shlibpath_overrides_runpath=yes])])
LDFLAGS=$save_LDFLAGS
libdir=$save_libdir
])
shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
# This implies no fast_install, which is unacceptable.
# Some rework will be needed to allow for fast_install
# before this can be enabled.
hardcode_into_libs=yes
# Append ld.so.conf contents to the search path
if test -f /etc/ld.so.conf; then
lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
fi
# We used to test for /lib/ld.so.1 and disable shared libraries on
# powerpc, because MkLinux only supported shared libraries with the
# GNU dynamic linker. Since this was broken with cross compilers,
# most powerpc-linux boxes support dynamic linking these days and
# people can always --disable-shared, the test was removed, and we
# assume the GNU/Linux dynamic linker is in use.
dynamic_linker='GNU/Linux ld.so'
;;
netbsdelf*-gnu)
version_type=linux
need_lib_prefix=no
need_version=no
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LD_LIBRARY_PATH
shlibpath_overrides_runpath=no
hardcode_into_libs=yes
dynamic_linker='NetBSD ld.elf_so'
;;
netbsd*)
version_type=sunos
need_lib_prefix=no
need_version=no
if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
dynamic_linker='NetBSD (a.out) ld.so'
else
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
soname_spec='${libname}${release}${shared_ext}$major'
dynamic_linker='NetBSD ld.elf_so'
fi
shlibpath_var=LD_LIBRARY_PATH
shlibpath_overrides_runpath=yes
hardcode_into_libs=yes
;;
newsos6)
version_type=linux # correct to gnu/linux during the next big refactor
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
shlibpath_var=LD_LIBRARY_PATH
shlibpath_overrides_runpath=yes
;;
*nto* | *qnx*)
version_type=qnx
need_lib_prefix=no
need_version=no
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LD_LIBRARY_PATH
shlibpath_overrides_runpath=no
hardcode_into_libs=yes
dynamic_linker='ldqnx.so'
;;
openbsd*)
version_type=sunos
sys_lib_dlsearch_path_spec="/usr/lib"
need_lib_prefix=no
# Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
case $host_os in
openbsd3.3 | openbsd3.3.*) need_version=yes ;;
*) need_version=no ;;
esac
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
shlibpath_var=LD_LIBRARY_PATH
if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
case $host_os in
openbsd2.[[89]] | openbsd2.[[89]].*)
shlibpath_overrides_runpath=no
;;
*)
shlibpath_overrides_runpath=yes
;;
esac
else
shlibpath_overrides_runpath=yes
fi
;;
os2*)
libname_spec='$name'
shrext_cmds=".dll"
need_lib_prefix=no
library_names_spec='$libname${shared_ext} $libname.a'
dynamic_linker='OS/2 ld.exe'
shlibpath_var=LIBPATH
;;
osf3* | osf4* | osf5*)
version_type=osf
need_lib_prefix=no
need_version=no
soname_spec='${libname}${release}${shared_ext}$major'
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
shlibpath_var=LD_LIBRARY_PATH
sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
;;
rdos*)
dynamic_linker=no
;;
solaris*)
version_type=linux # correct to gnu/linux during the next big refactor
need_lib_prefix=no
need_version=no
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LD_LIBRARY_PATH
shlibpath_overrides_runpath=yes
hardcode_into_libs=yes
# ldd complains unless libraries are executable
postinstall_cmds='chmod +x $lib'
;;
sunos4*)
version_type=sunos
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
shlibpath_var=LD_LIBRARY_PATH
shlibpath_overrides_runpath=yes
if test "$with_gnu_ld" = yes; then
need_lib_prefix=no
fi
need_version=yes
;;
sysv4 | sysv4.3*)
version_type=linux # correct to gnu/linux during the next big refactor
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LD_LIBRARY_PATH
case $host_vendor in
sni)
shlibpath_overrides_runpath=no
need_lib_prefix=no
runpath_var=LD_RUN_PATH
;;
siemens)
need_lib_prefix=no
;;
motorola)
need_lib_prefix=no
need_version=no
shlibpath_overrides_runpath=no
sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
;;
esac
;;
sysv4*MP*)
if test -d /usr/nec ;then
version_type=linux # correct to gnu/linux during the next big refactor
library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
soname_spec='$libname${shared_ext}.$major'
shlibpath_var=LD_LIBRARY_PATH
fi
;;
sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
version_type=freebsd-elf
need_lib_prefix=no
need_version=no
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LD_LIBRARY_PATH
shlibpath_overrides_runpath=yes
hardcode_into_libs=yes
if test "$with_gnu_ld" = yes; then
sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
else
sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
case $host_os in
sco3.2v5*)
sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
;;
esac
fi
sys_lib_dlsearch_path_spec='/usr/lib'
;;
tpf*)
# TPF is a cross-target only. Preferred cross-host = GNU/Linux.
version_type=linux # correct to gnu/linux during the next big refactor
need_lib_prefix=no
need_version=no
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
shlibpath_var=LD_LIBRARY_PATH
shlibpath_overrides_runpath=no
hardcode_into_libs=yes
;;
uts4*)
version_type=linux # correct to gnu/linux during the next big refactor
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LD_LIBRARY_PATH
;;
*)
dynamic_linker=no
;;
esac
AC_MSG_RESULT([$dynamic_linker])
test "$dynamic_linker" = no && can_build_shared=no
variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
if test "$GCC" = yes; then
variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
fi
if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
fi
if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
fi
_LT_DECL([], [variables_saved_for_relink], [1],
[Variables whose values should be saved in libtool wrapper scripts and
restored at link time])
_LT_DECL([], [need_lib_prefix], [0],
[Do we need the "lib" prefix for modules?])
_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
_LT_DECL([], [version_type], [0], [Library versioning type])
_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
_LT_DECL([], [shlibpath_overrides_runpath], [0],
[Is shlibpath searched before the hard-coded library search path?])
_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
_LT_DECL([], [library_names_spec], [1],
[[List of archive names. First name is the real one, the rest are links.
The last name is the one that the linker finds with -lNAME]])
_LT_DECL([], [soname_spec], [1],
[[The coded name of the library, if different from the real name]])
_LT_DECL([], [install_override_mode], [1],
[Permission mode override for installation of shared libraries])
_LT_DECL([], [postinstall_cmds], [2],
[Command to use after installation of a shared archive])
_LT_DECL([], [postuninstall_cmds], [2],
[Command to use after uninstallation of a shared archive])
_LT_DECL([], [finish_cmds], [2],
[Commands used to finish a libtool library installation in a directory])
_LT_DECL([], [finish_eval], [1],
[[As "finish_cmds", except a single script fragment to be evaled but
not shown]])
_LT_DECL([], [hardcode_into_libs], [0],
[Whether we should hardcode library paths into libraries])
_LT_DECL([], [sys_lib_search_path_spec], [2],
[Compile-time system search path for libraries])
_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
[Run-time system search path for libraries])
])# _LT_SYS_DYNAMIC_LINKER
# _LT_PATH_TOOL_PREFIX(TOOL)
# --------------------------
# find a file program which can recognize shared library
AC_DEFUN([_LT_PATH_TOOL_PREFIX],
[m4_require([_LT_DECL_EGREP])dnl
AC_MSG_CHECKING([for $1])
AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
[case $MAGIC_CMD in
[[\\/*] | ?:[\\/]*])
lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
;;
*)
lt_save_MAGIC_CMD="$MAGIC_CMD"
lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
dnl $ac_dummy forces splitting on constant user-supplied paths.
dnl POSIX.2 word splitting is done only on the output of word expansions,
dnl not every word. This closes a longstanding sh security hole.
ac_dummy="m4_if([$2], , $PATH, [$2])"
for ac_dir in $ac_dummy; do
IFS="$lt_save_ifs"
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$1; then
lt_cv_path_MAGIC_CMD="$ac_dir/$1"
if test -n "$file_magic_test_file"; then
case $deplibs_check_method in
"file_magic "*)
file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
$EGREP "$file_magic_regex" > /dev/null; then
:
else
cat <<_LT_EOF 1>&2
*** Warning: the command libtool uses to detect shared libraries,
*** $file_magic_cmd, produces output that libtool cannot recognize.
*** The result is that libtool may fail to recognize shared libraries
*** as such. This will affect the creation of libtool libraries that
*** depend on shared libraries, but programs linked with such libtool
*** libraries will work regardless of this problem. Nevertheless, you
*** may want to report the problem to your system manager and/or to
*** bug-libtool@gnu.org
_LT_EOF
fi ;;
esac
fi
break
fi
done
IFS="$lt_save_ifs"
MAGIC_CMD="$lt_save_MAGIC_CMD"
;;
esac])
MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
if test -n "$MAGIC_CMD"; then
AC_MSG_RESULT($MAGIC_CMD)
else
AC_MSG_RESULT(no)
fi
_LT_DECL([], [MAGIC_CMD], [0],
[Used to examine libraries when file_magic_cmd begins with "file"])dnl
])# _LT_PATH_TOOL_PREFIX
# Old name:
AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
# _LT_PATH_MAGIC
# --------------
# find a file program which can recognize a shared library
m4_defun([_LT_PATH_MAGIC],
[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
if test -z "$lt_cv_path_MAGIC_CMD"; then
if test -n "$ac_tool_prefix"; then
_LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
else
MAGIC_CMD=:
fi
fi
])# _LT_PATH_MAGIC
# LT_PATH_LD
# ----------
# find the pathname to the GNU or non-GNU linker
AC_DEFUN([LT_PATH_LD],
[AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([AC_CANONICAL_HOST])dnl
AC_REQUIRE([AC_CANONICAL_BUILD])dnl
m4_require([_LT_DECL_SED])dnl
m4_require([_LT_DECL_EGREP])dnl
m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
AC_ARG_WITH([gnu-ld],
[AS_HELP_STRING([--with-gnu-ld],
[assume the C compiler uses GNU ld @<:@default=no@:>@])],
[test "$withval" = no || with_gnu_ld=yes],
[with_gnu_ld=no])dnl
ac_prog=ld
if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
AC_MSG_CHECKING([for ld used by $CC])
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return which upsets mingw
ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
*)
ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
esac
case $ac_prog in
# Accept absolute paths.
[[\\/]]* | ?:[[\\/]]*)
re_direlt='/[[^/]][[^/]]*/\.\./'
# Canonicalize the pathname of ld
ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
done
test -z "$LD" && LD="$ac_prog"
;;
"")
# If it fails, then pretend we aren't using GCC.
ac_prog=ld
;;
*)
# If it is relative, then search for the first ld in PATH.
with_gnu_ld=unknown
;;
esac
elif test "$with_gnu_ld" = yes; then
AC_MSG_CHECKING([for GNU ld])
else
AC_MSG_CHECKING([for non-GNU ld])
fi
AC_CACHE_VAL(lt_cv_path_LD,
[if test -z "$LD"; then
lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
for ac_dir in $PATH; do
IFS="$lt_save_ifs"
test -z "$ac_dir" && ac_dir=.
if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
lt_cv_path_LD="$ac_dir/$ac_prog"
# Check to see if the program is GNU ld. I'd rather use --version,
# but apparently some variants of GNU ld only accept -v.
# Break only if it was the GNU/non-GNU ld that we prefer.
case `"$lt_cv_path_LD" -v 2>&1 &1 /dev/null 2>&1; then
lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
lt_cv_file_magic_cmd='func_win32_libid'
else
# Keep this pattern in sync with the one in func_win32_libid.
lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
lt_cv_file_magic_cmd='$OBJDUMP -f'
fi
;;
cegcc*)
# use the weaker test based on 'objdump'. See mingw*.
lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
lt_cv_file_magic_cmd='$OBJDUMP -f'
;;
darwin* | rhapsody*)
lt_cv_deplibs_check_method=pass_all
;;
freebsd* | dragonfly*)
if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
case $host_cpu in
i*86 )
# Not sure whether the presence of OpenBSD here was a mistake.
# Let's accept both of them until this is cleared up.
lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
lt_cv_file_magic_cmd=/usr/bin/file
lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
;;
esac
else
lt_cv_deplibs_check_method=pass_all
fi
;;
haiku*)
lt_cv_deplibs_check_method=pass_all
;;
hpux10.20* | hpux11*)
lt_cv_file_magic_cmd=/usr/bin/file
case $host_cpu in
ia64*)
lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
;;
hppa*64*)
[lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]']
lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
;;
*)
lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
lt_cv_file_magic_test_file=/usr/lib/libc.sl
;;
esac
;;
interix[[3-9]]*)
# PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
;;
irix5* | irix6* | nonstopux*)
case $LD in
*-32|*"-32 ") libmagic=32-bit;;
*-n32|*"-n32 ") libmagic=N32;;
*-64|*"-64 ") libmagic=64-bit;;
*) libmagic=never-match;;
esac
lt_cv_deplibs_check_method=pass_all
;;
# This must be glibc/ELF.
linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
lt_cv_deplibs_check_method=pass_all
;;
netbsd* | netbsdelf*-gnu)
if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
else
lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
fi
;;
newos6*)
lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
lt_cv_file_magic_cmd=/usr/bin/file
lt_cv_file_magic_test_file=/usr/lib/libnls.so
;;
*nto* | *qnx*)
lt_cv_deplibs_check_method=pass_all
;;
openbsd*)
if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
else
lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
fi
;;
osf3* | osf4* | osf5*)
lt_cv_deplibs_check_method=pass_all
;;
rdos*)
lt_cv_deplibs_check_method=pass_all
;;
solaris*)
lt_cv_deplibs_check_method=pass_all
;;
sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
lt_cv_deplibs_check_method=pass_all
;;
sysv4 | sysv4.3*)
case $host_vendor in
motorola)
lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
;;
ncr)
lt_cv_deplibs_check_method=pass_all
;;
sequent)
lt_cv_file_magic_cmd='/bin/file'
lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
;;
sni)
lt_cv_file_magic_cmd='/bin/file'
lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
lt_cv_file_magic_test_file=/lib/libc.so
;;
siemens)
lt_cv_deplibs_check_method=pass_all
;;
pc)
lt_cv_deplibs_check_method=pass_all
;;
esac
;;
tpf*)
lt_cv_deplibs_check_method=pass_all
;;
esac
])
file_magic_glob=
want_nocaseglob=no
if test "$build" = "$host"; then
case $host_os in
mingw* | pw32*)
if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
want_nocaseglob=yes
else
file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
fi
;;
esac
fi
file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
test -z "$deplibs_check_method" && deplibs_check_method=unknown
_LT_DECL([], [deplibs_check_method], [1],
[Method to check whether dependent libraries are shared objects])
_LT_DECL([], [file_magic_cmd], [1],
[Command to use when deplibs_check_method = "file_magic"])
_LT_DECL([], [file_magic_glob], [1],
[How to find potential files when deplibs_check_method = "file_magic"])
_LT_DECL([], [want_nocaseglob], [1],
[Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
])# _LT_CHECK_MAGIC_METHOD
# LT_PATH_NM
# ----------
# find the pathname to a BSD- or MS-compatible name lister
AC_DEFUN([LT_PATH_NM],
[AC_REQUIRE([AC_PROG_CC])dnl
AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
[if test -n "$NM"; then
# Let the user override the test.
lt_cv_path_NM="$NM"
else
lt_nm_to_check="${ac_tool_prefix}nm"
if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
lt_nm_to_check="$lt_nm_to_check nm"
fi
for lt_tmp_nm in $lt_nm_to_check; do
lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
IFS="$lt_save_ifs"
test -z "$ac_dir" && ac_dir=.
tmp_nm="$ac_dir/$lt_tmp_nm"
if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
# Check to see if the nm accepts a BSD-compat flag.
# Adding the `sed 1q' prevents false positives on HP-UX, which says:
# nm: unknown option "B" ignored
# Tru64's nm complains that /dev/null is an invalid object file
case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
*/dev/null* | *'Invalid file or object type'*)
lt_cv_path_NM="$tmp_nm -B"
break
;;
*)
case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
*/dev/null*)
lt_cv_path_NM="$tmp_nm -p"
break
;;
*)
lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
continue # so that we can try to find one that supports BSD flags
;;
esac
;;
esac
fi
done
IFS="$lt_save_ifs"
done
: ${lt_cv_path_NM=no}
fi])
if test "$lt_cv_path_NM" != "no"; then
NM="$lt_cv_path_NM"
else
# Didn't find any BSD compatible name lister, look for dumpbin.
if test -n "$DUMPBIN"; then :
# Let the user override the test.
else
AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
*COFF*)
DUMPBIN="$DUMPBIN -symbols"
;;
*)
DUMPBIN=:
;;
esac
fi
AC_SUBST([DUMPBIN])
if test "$DUMPBIN" != ":"; then
NM="$DUMPBIN"
fi
fi
test -z "$NM" && NM=nm
AC_SUBST([NM])
_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
[lt_cv_nm_interface="BSD nm"
echo "int some_variable = 0;" > conftest.$ac_ext
(eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
(eval "$ac_compile" 2>conftest.err)
cat conftest.err >&AS_MESSAGE_LOG_FD
(eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
(eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
cat conftest.err >&AS_MESSAGE_LOG_FD
(eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
cat conftest.out >&AS_MESSAGE_LOG_FD
if $GREP 'External.*some_variable' conftest.out > /dev/null; then
lt_cv_nm_interface="MS dumpbin"
fi
rm -f conftest*])
])# LT_PATH_NM
# Old names:
AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AM_PROG_NM], [])
dnl AC_DEFUN([AC_PROG_NM], [])
# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
# --------------------------------
# how to determine the name of the shared library
# associated with a specific link library.
# -- PORTME fill in with the dynamic library characteristics
m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
[m4_require([_LT_DECL_EGREP])
m4_require([_LT_DECL_OBJDUMP])
m4_require([_LT_DECL_DLLTOOL])
AC_CACHE_CHECK([how to associate runtime and link libraries],
lt_cv_sharedlib_from_linklib_cmd,
[lt_cv_sharedlib_from_linklib_cmd='unknown'
case $host_os in
cygwin* | mingw* | pw32* | cegcc*)
# two different shell functions defined in ltmain.sh
# decide which to use based on capabilities of $DLLTOOL
case `$DLLTOOL --help 2>&1` in
*--identify-strict*)
lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
;;
*)
lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
;;
esac
;;
*)
# fallback: assume linklib IS sharedlib
lt_cv_sharedlib_from_linklib_cmd="$ECHO"
;;
esac
])
sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
_LT_DECL([], [sharedlib_from_linklib_cmd], [1],
[Command to associate shared and link libraries])
])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
# _LT_PATH_MANIFEST_TOOL
# ----------------------
# locate the manifest tool
m4_defun([_LT_PATH_MANIFEST_TOOL],
[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
[lt_cv_path_mainfest_tool=no
echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
$MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
cat conftest.err >&AS_MESSAGE_LOG_FD
if $GREP 'Manifest Tool' conftest.out > /dev/null; then
lt_cv_path_mainfest_tool=yes
fi
rm -f conftest*])
if test "x$lt_cv_path_mainfest_tool" != xyes; then
MANIFEST_TOOL=:
fi
_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
])# _LT_PATH_MANIFEST_TOOL
# LT_LIB_M
# --------
# check for math library
AC_DEFUN([LT_LIB_M],
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
LIBM=
case $host in
*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
# These system don't have libm, or don't need it
;;
*-ncr-sysv4.3*)
AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
;;
*)
AC_CHECK_LIB(m, cos, LIBM="-lm")
;;
esac
AC_SUBST([LIBM])
])# LT_LIB_M
# Old name:
AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_CHECK_LIBM], [])
# _LT_COMPILER_NO_RTTI([TAGNAME])
# -------------------------------
m4_defun([_LT_COMPILER_NO_RTTI],
[m4_require([_LT_TAG_COMPILER])dnl
_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
if test "$GCC" = yes; then
case $cc_basename in
nvcc*)
_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
*)
_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
esac
_LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
lt_cv_prog_compiler_rtti_exceptions,
[-fno-rtti -fno-exceptions], [],
[_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
fi
_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
[Compiler flag to turn off builtin functions])
])# _LT_COMPILER_NO_RTTI
# _LT_CMD_GLOBAL_SYMBOLS
# ----------------------
m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([AC_PROG_AWK])dnl
AC_REQUIRE([LT_PATH_NM])dnl
AC_REQUIRE([LT_PATH_LD])dnl
m4_require([_LT_DECL_SED])dnl
m4_require([_LT_DECL_EGREP])dnl
m4_require([_LT_TAG_COMPILER])dnl
# Check for command to grab the raw symbol name followed by C symbol from nm.
AC_MSG_CHECKING([command to parse $NM output from $compiler object])
AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
[
# These are sane defaults that work on at least a few old systems.
# [They come from Ultrix. What could be older than Ultrix?!! ;)]
# Character class describing NM global symbol codes.
symcode='[[BCDEGRST]]'
# Regexp to match symbols that can be accessed directly from C.
sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
# Define system-specific variables.
case $host_os in
aix*)
symcode='[[BCDT]]'
;;
cygwin* | mingw* | pw32* | cegcc*)
symcode='[[ABCDGISTW]]'
;;
hpux*)
if test "$host_cpu" = ia64; then
symcode='[[ABCDEGRST]]'
fi
;;
irix* | nonstopux*)
symcode='[[BCDEGRST]]'
;;
osf*)
symcode='[[BCDEGQRST]]'
;;
solaris*)
symcode='[[BDRT]]'
;;
sco3.2v5*)
symcode='[[DT]]'
;;
sysv4.2uw2*)
symcode='[[DT]]'
;;
sysv5* | sco5v6* | unixware* | OpenUNIX*)
symcode='[[ABDT]]'
;;
sysv4)
symcode='[[DFNSTU]]'
;;
esac
# If we're using GNU nm, then use its standard symbol codes.
case `$NM -V 2>&1` in
*GNU* | *'with BFD'*)
symcode='[[ABCDGIRSTW]]' ;;
esac
# Transform an extracted symbol line into a proper C declaration.
# Some systems (esp. on ia64) link data and code symbols differently,
# so use this general approach.
lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
# Transform an extracted symbol line into symbol name and symbol address
lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'"
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'"
# Handle CRLF in mingw tool chain
opt_cr=
case $build_os in
mingw*)
opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
;;
esac
# Try without a prefix underscore, then with it.
for ac_symprfx in "" "_"; do
# Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
symxfrm="\\1 $ac_symprfx\\2 \\2"
# Write the raw and C identifiers.
if test "$lt_cv_nm_interface" = "MS dumpbin"; then
# Fake it for dumpbin and say T for any non-static function
# and D for any global variable.
# Also find C++ and __fastcall symbols from MSVC++,
# which start with @ or ?.
lt_cv_sys_global_symbol_pipe="$AWK ['"\
" {last_section=section; section=\$ 3};"\
" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
" \$ 0!~/External *\|/{next};"\
" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
" {if(hide[section]) next};"\
" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
" s[1]~/^[@?]/{print s[1], s[1]; next};"\
" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
" ' prfx=^$ac_symprfx]"
else
lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
fi
lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
# Check to see that the pipe works correctly.
pipe_works=no
rm -f conftest*
cat > conftest.$ac_ext <<_LT_EOF
#ifdef __cplusplus
extern "C" {
#endif
char nm_test_var;
void nm_test_func(void);
void nm_test_func(void){}
#ifdef __cplusplus
}
#endif
int main(){nm_test_var='a';nm_test_func();return(0);}
_LT_EOF
if AC_TRY_EVAL(ac_compile); then
# Now try to grab the symbols.
nlist=conftest.nm
if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
# Try sorting and uniquifying the output.
if sort "$nlist" | uniq > "$nlist"T; then
mv -f "$nlist"T "$nlist"
else
rm -f "$nlist"T
fi
# Make sure that we snagged all the symbols we need.
if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
cat <<_LT_EOF > conftest.$ac_ext
/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
/* DATA imports from DLLs on WIN32 con't be const, because runtime
relocations are performed -- see ld's documentation on pseudo-relocs. */
# define LT@&t@_DLSYM_CONST
#elif defined(__osf__)
/* This system does not cope well with relocations in const data. */
# define LT@&t@_DLSYM_CONST
#else
# define LT@&t@_DLSYM_CONST const
#endif
#ifdef __cplusplus
extern "C" {
#endif
_LT_EOF
# Now generate the symbol file.
eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
cat <<_LT_EOF >> conftest.$ac_ext
/* The mapping between symbol names and symbols. */
LT@&t@_DLSYM_CONST struct {
const char *name;
void *address;
}
lt__PROGRAM__LTX_preloaded_symbols[[]] =
{
{ "@PROGRAM@", (void *) 0 },
_LT_EOF
$SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
cat <<\_LT_EOF >> conftest.$ac_ext
{0, (void *) 0}
};
/* This works around a problem in FreeBSD linker */
#ifdef FREEBSD_WORKAROUND
static const void *lt_preloaded_setup() {
return lt__PROGRAM__LTX_preloaded_symbols;
}
#endif
#ifdef __cplusplus
}
#endif
_LT_EOF
# Now try linking the two files.
mv conftest.$ac_objext conftstm.$ac_objext
lt_globsym_save_LIBS=$LIBS
lt_globsym_save_CFLAGS=$CFLAGS
LIBS="conftstm.$ac_objext"
CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
pipe_works=yes
fi
LIBS=$lt_globsym_save_LIBS
CFLAGS=$lt_globsym_save_CFLAGS
else
echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
fi
else
echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
fi
else
echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
fi
else
echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
cat conftest.$ac_ext >&5
fi
rm -rf conftest* conftst*
# Do not use the global_symbol_pipe unless it works.
if test "$pipe_works" = yes; then
break
else
lt_cv_sys_global_symbol_pipe=
fi
done
])
if test -z "$lt_cv_sys_global_symbol_pipe"; then
lt_cv_sys_global_symbol_to_cdecl=
fi
if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
AC_MSG_RESULT(failed)
else
AC_MSG_RESULT(ok)
fi
# Response file support.
if test "$lt_cv_nm_interface" = "MS dumpbin"; then
nm_file_list_spec='@'
elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
nm_file_list_spec='@'
fi
_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
[Take the output of nm and produce a listing of raw symbols and C names])
_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
[Transform the output of nm in a proper C declaration])
_LT_DECL([global_symbol_to_c_name_address],
[lt_cv_sys_global_symbol_to_c_name_address], [1],
[Transform the output of nm in a C name address pair])
_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
[lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
[Transform the output of nm in a C name address pair when lib prefix is needed])
_LT_DECL([], [nm_file_list_spec], [1],
[Specify filename containing input files for $NM])
]) # _LT_CMD_GLOBAL_SYMBOLS
# _LT_COMPILER_PIC([TAGNAME])
# ---------------------------
m4_defun([_LT_COMPILER_PIC],
[m4_require([_LT_TAG_COMPILER])dnl
_LT_TAGVAR(lt_prog_compiler_wl, $1)=
_LT_TAGVAR(lt_prog_compiler_pic, $1)=
_LT_TAGVAR(lt_prog_compiler_static, $1)=
m4_if([$1], [CXX], [
# C++ specific cases for pic, static, wl, etc.
if test "$GXX" = yes; then
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
case $host_os in
aix*)
# All AIX code is PIC.
if test "$host_cpu" = ia64; then
# AIX 5 now supports IA64 processor
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
fi
;;
amigaos*)
case $host_cpu in
powerpc)
# see comment about AmigaOS4 .so support
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
;;
m68k)
# FIXME: we need at least 68020 code to build shared libraries, but
# adding the `-m68020' flag to GCC prevents building anything better,
# like `-m68040'.
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
;;
esac
;;
beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
# PIC is the default for these OSes.
;;
mingw* | cygwin* | os2* | pw32* | cegcc*)
# This hack is so that the source file can tell whether it is being
# built for inclusion in a dll (and should export symbols for example).
# Although the cygwin gcc ignores -fPIC, still need this for old-style
# (--disable-auto-import) libraries
m4_if([$1], [GCJ], [],
[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
;;
darwin* | rhapsody*)
# PIC is the default on this platform
# Common symbols not allowed in MH_DYLIB files
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
;;
*djgpp*)
# DJGPP does not support shared libraries at all
_LT_TAGVAR(lt_prog_compiler_pic, $1)=
;;
haiku*)
# PIC is the default for Haiku.
# The "-static" flag exists, but is broken.
_LT_TAGVAR(lt_prog_compiler_static, $1)=
;;
interix[[3-9]]*)
# Interix 3.x gcc -fpic/-fPIC options generate broken code.
# Instead, we relocate shared libraries at runtime.
;;
sysv4*MP*)
if test -d /usr/nec; then
_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
fi
;;
hpux*)
# PIC is the default for 64-bit PA HP-UX, but not for 32-bit
# PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
# sets the default TLS model and affects inlining.
case $host_cpu in
hppa*64*)
;;
*)
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
;;
esac
;;
*qnx* | *nto*)
# QNX uses GNU C++, but need to define -shared option too, otherwise
# it will coredump.
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
;;
*)
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
;;
esac
else
case $host_os in
aix[[4-9]]*)
# All AIX code is PIC.
if test "$host_cpu" = ia64; then
# AIX 5 now supports IA64 processor
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
else
_LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
fi
;;
chorus*)
case $cc_basename in
cxch68*)
# Green Hills C++ Compiler
# _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
;;
esac
;;
mingw* | cygwin* | os2* | pw32* | cegcc*)
# This hack is so that the source file can tell whether it is being
# built for inclusion in a dll (and should export symbols for example).
m4_if([$1], [GCJ], [],
[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
;;
dgux*)
case $cc_basename in
ec++*)
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
;;
ghcx*)
# Green Hills C++ Compiler
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
;;
*)
;;
esac
;;
freebsd* | dragonfly*)
# FreeBSD uses GNU C++
;;
hpux9* | hpux10* | hpux11*)
case $cc_basename in
CC*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
if test "$host_cpu" != ia64; then
_LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
fi
;;
aCC*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
*)
_LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
;;
esac
;;
*)
;;
esac
;;
interix*)
# This is c89, which is MS Visual C++ (no shared libs)
# Anyone wants to do a port?
;;
irix5* | irix6* | nonstopux*)
case $cc_basename in
CC*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
# CC pic flag -KPIC is the default.
;;
*)
;;
esac
;;
linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
case $cc_basename in
KCC*)
# KAI C++ Compiler
_LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
;;
ecpc* )
# old Intel C++ for x86_64 which still supported -KPIC.
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
;;
icpc* )
# Intel C++, used to be incompatible with GCC.
# ICC 10 doesn't accept -KPIC any more.
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
;;
pgCC* | pgcpp*)
# Portland Group C++ compiler
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
;;
cxx*)
# Compaq C++
# Make sure the PIC flag is empty. It appears that all Alpha
# Linux and Compaq Tru64 Unix objects are PIC.
_LT_TAGVAR(lt_prog_compiler_pic, $1)=
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
;;
xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
# IBM XL 8.0, 9.0 on PPC and BlueGene
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
;;
*)
case `$CC -V 2>&1 | sed 5q` in
*Sun\ C*)
# Sun C++ 5.9
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
;;
esac
;;
esac
;;
lynxos*)
;;
m88k*)
;;
mvs*)
case $cc_basename in
cxx*)
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
;;
*)
;;
esac
;;
netbsd* | netbsdelf*-gnu)
;;
*qnx* | *nto*)
# QNX uses GNU C++, but need to define -shared option too, otherwise
# it will coredump.
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
;;
osf3* | osf4* | osf5*)
case $cc_basename in
KCC*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
;;
RCC*)
# Rational C++ 2.4.1
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
;;
cxx*)
# Digital/Compaq C++
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
# Make sure the PIC flag is empty. It appears that all Alpha
# Linux and Compaq Tru64 Unix objects are PIC.
_LT_TAGVAR(lt_prog_compiler_pic, $1)=
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
;;
*)
;;
esac
;;
psos*)
;;
solaris*)
case $cc_basename in
CC* | sunCC*)
# Sun C++ 4.2, 5.x and Centerline C++
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
;;
gcx*)
# Green Hills C++ Compiler
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
;;
*)
;;
esac
;;
sunos4*)
case $cc_basename in
CC*)
# Sun C++ 4.x
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
;;
lcc*)
# Lucid
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
;;
*)
;;
esac
;;
sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
case $cc_basename in
CC*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
;;
esac
;;
tandem*)
case $cc_basename in
NCC*)
# NonStop-UX NCC 3.20
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
;;
*)
;;
esac
;;
vxworks*)
;;
*)
_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
;;
esac
fi
],
[
if test "$GCC" = yes; then
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
case $host_os in
aix*)
# All AIX code is PIC.
if test "$host_cpu" = ia64; then
# AIX 5 now supports IA64 processor
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
fi
;;
amigaos*)
case $host_cpu in
powerpc)
# see comment about AmigaOS4 .so support
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
;;
m68k)
# FIXME: we need at least 68020 code to build shared libraries, but
# adding the `-m68020' flag to GCC prevents building anything better,
# like `-m68040'.
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
;;
esac
;;
beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
# PIC is the default for these OSes.
;;
mingw* | cygwin* | pw32* | os2* | cegcc*)
# This hack is so that the source file can tell whether it is being
# built for inclusion in a dll (and should export symbols for example).
# Although the cygwin gcc ignores -fPIC, still need this for old-style
# (--disable-auto-import) libraries
m4_if([$1], [GCJ], [],
[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
;;
darwin* | rhapsody*)
# PIC is the default on this platform
# Common symbols not allowed in MH_DYLIB files
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
;;
haiku*)
# PIC is the default for Haiku.
# The "-static" flag exists, but is broken.
_LT_TAGVAR(lt_prog_compiler_static, $1)=
;;
hpux*)
# PIC is the default for 64-bit PA HP-UX, but not for 32-bit
# PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
# sets the default TLS model and affects inlining.
case $host_cpu in
hppa*64*)
# +Z the default
;;
*)
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
;;
esac
;;
interix[[3-9]]*)
# Interix 3.x gcc -fpic/-fPIC options generate broken code.
# Instead, we relocate shared libraries at runtime.
;;
msdosdjgpp*)
# Just because we use GCC doesn't mean we suddenly get shared libraries
# on systems that don't support them.
_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
enable_shared=no
;;
*nto* | *qnx*)
# QNX uses GNU C++, but need to define -shared option too, otherwise
# it will coredump.
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
;;
sysv4*MP*)
if test -d /usr/nec; then
_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
fi
;;
*)
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
;;
esac
case $cc_basename in
nvcc*) # Cuda Compiler Driver 2.2
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
_LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
fi
;;
esac
else
# PORTME Check for flag to pass linker flags through the system compiler.
case $host_os in
aix*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
if test "$host_cpu" = ia64; then
# AIX 5 now supports IA64 processor
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
else
_LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
fi
;;
mingw* | cygwin* | pw32* | os2* | cegcc*)
# This hack is so that the source file can tell whether it is being
# built for inclusion in a dll (and should export symbols for example).
m4_if([$1], [GCJ], [],
[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
;;
hpux9* | hpux10* | hpux11*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
# not for PA HP-UX.
case $host_cpu in
hppa*64*|ia64*)
# +Z the default
;;
*)
_LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
;;
esac
# Is there a better lt_prog_compiler_static that works with the bundled CC?
_LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
;;
irix5* | irix6* | nonstopux*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
# PIC (with -KPIC) is the default.
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
;;
linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
case $cc_basename in
# old Intel for x86_64 which still supported -KPIC.
ecc*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
;;
# icc used to be incompatible with GCC.
# ICC 10 doesn't accept -KPIC any more.
icc* | ifort*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
;;
# Lahey Fortran 8.1.
lf95*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
_LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
;;
nagfor*)
# NAG Fortran compiler
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
;;
pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
# Portland Group compilers (*not* the Pentium gcc compiler,
# which looks to be a dead project)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
;;
ccc*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
# All Alpha code is PIC.
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
;;
xl* | bgxl* | bgf* | mpixl*)
# IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
;;
*)
case `$CC -V 2>&1 | sed 5q` in
*Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
# Sun Fortran 8.3 passes all unrecognized flags to the linker
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
_LT_TAGVAR(lt_prog_compiler_wl, $1)=''
;;
*Sun\ F* | *Sun*Fortran*)
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
;;
*Sun\ C*)
# Sun C 5.9
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
;;
*Intel*\ [[CF]]*Compiler*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
;;
*Portland\ Group*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
;;
esac
;;
esac
;;
newsos6)
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
;;
*nto* | *qnx*)
# QNX uses GNU C++, but need to define -shared option too, otherwise
# it will coredump.
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
;;
osf3* | osf4* | osf5*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
# All OSF/1 code is PIC.
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
;;
rdos*)
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
;;
solaris*)
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
case $cc_basename in
f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
esac
;;
sunos4*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
;;
sysv4 | sysv4.2uw2* | sysv4.3*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
;;
sysv4*MP*)
if test -d /usr/nec ;then
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
fi
;;
sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
;;
unicos*)
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
;;
uts4*)
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
;;
*)
_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
;;
esac
fi
])
case $host_os in
# For platforms which do not support PIC, -DPIC is meaningless:
*djgpp*)
_LT_TAGVAR(lt_prog_compiler_pic, $1)=
;;
*)
_LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
;;
esac
AC_CACHE_CHECK([for $compiler option to produce PIC],
[_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
[_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
#
# Check to make sure the PIC flag actually works.
#
if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
_LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
[_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
[$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
[case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
"" | " "*) ;;
*) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
esac],
[_LT_TAGVAR(lt_prog_compiler_pic, $1)=
_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
fi
_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
[Additional compiler flags for building library objects])
_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
[How to pass a linker flag through the compiler])
#
# Check to make sure the static flag actually works.
#
wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
_LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
$lt_tmp_static_flag,
[],
[_LT_TAGVAR(lt_prog_compiler_static, $1)=])
_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
[Compiler flag to prevent dynamic linking])
])# _LT_COMPILER_PIC
# _LT_LINKER_SHLIBS([TAGNAME])
# ----------------------------
# See if the linker supports building shared libraries.
m4_defun([_LT_LINKER_SHLIBS],
[AC_REQUIRE([LT_PATH_LD])dnl
AC_REQUIRE([LT_PATH_NM])dnl
m4_require([_LT_PATH_MANIFEST_TOOL])dnl
m4_require([_LT_FILEUTILS_DEFAULTS])dnl
m4_require([_LT_DECL_EGREP])dnl
m4_require([_LT_DECL_SED])dnl
m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
m4_require([_LT_TAG_COMPILER])dnl
AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
m4_if([$1], [CXX], [
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
_LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
case $host_os in
aix[[4-9]]*)
# If we're using GNU nm, then we don't want the "-C" option.
# -C means demangle to AIX nm, but means don't demangle with GNU nm
# Also, AIX nm treats weak defined symbols like other global defined
# symbols, whereas GNU nm marks them as "W".
if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
_LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
else
_LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
fi
;;
pw32*)
_LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
;;
cygwin* | mingw* | cegcc*)
case $cc_basename in
cl*)
_LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
;;
*)
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
_LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
;;
esac
;;
linux* | k*bsd*-gnu | gnu*)
_LT_TAGVAR(link_all_deplibs, $1)=no
;;
*)
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
;;
esac
], [
runpath_var=
_LT_TAGVAR(allow_undefined_flag, $1)=
_LT_TAGVAR(always_export_symbols, $1)=no
_LT_TAGVAR(archive_cmds, $1)=
_LT_TAGVAR(archive_expsym_cmds, $1)=
_LT_TAGVAR(compiler_needs_object, $1)=no
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
_LT_TAGVAR(export_dynamic_flag_spec, $1)=
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
_LT_TAGVAR(hardcode_automatic, $1)=no
_LT_TAGVAR(hardcode_direct, $1)=no
_LT_TAGVAR(hardcode_direct_absolute, $1)=no
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
_LT_TAGVAR(hardcode_libdir_separator, $1)=
_LT_TAGVAR(hardcode_minus_L, $1)=no
_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
_LT_TAGVAR(inherit_rpath, $1)=no
_LT_TAGVAR(link_all_deplibs, $1)=unknown
_LT_TAGVAR(module_cmds, $1)=
_LT_TAGVAR(module_expsym_cmds, $1)=
_LT_TAGVAR(old_archive_from_new_cmds, $1)=
_LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
_LT_TAGVAR(thread_safe_flag_spec, $1)=
_LT_TAGVAR(whole_archive_flag_spec, $1)=
# include_expsyms should be a list of space-separated symbols to be *always*
# included in the symbol list
_LT_TAGVAR(include_expsyms, $1)=
# exclude_expsyms can be an extended regexp of symbols to exclude
# it will be wrapped by ` (' and `)$', so one must not match beginning or
# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
# as well as any symbol that contains `d'.
_LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
# platforms (ab)use it in PIC code, but their linkers get confused if
# the symbol is explicitly referenced. Since portable code cannot
# rely on this symbol name, it's probably fine to never include it in
# preloaded symbol tables.
# Exclude shared library initialization/finalization symbols.
dnl Note also adjust exclude_expsyms for C++ above.
extract_expsyms_cmds=
case $host_os in
cygwin* | mingw* | pw32* | cegcc*)
# FIXME: the MSVC++ port hasn't been tested in a loooong time
# When not using gcc, we currently assume that we are using
# Microsoft Visual C++.
if test "$GCC" != yes; then
with_gnu_ld=no
fi
;;
interix*)
# we just hope/assume this is gcc and not c89 (= MSVC++)
with_gnu_ld=yes
;;
openbsd*)
with_gnu_ld=no
;;
linux* | k*bsd*-gnu | gnu*)
_LT_TAGVAR(link_all_deplibs, $1)=no
;;
esac
_LT_TAGVAR(ld_shlibs, $1)=yes
# On some targets, GNU ld is compatible enough with the native linker
# that we're better off using the native interface for both.
lt_use_gnu_ld_interface=no
if test "$with_gnu_ld" = yes; then
case $host_os in
aix*)
# The AIX port of GNU ld has always aspired to compatibility
# with the native linker. However, as the warning in the GNU ld
# block says, versions before 2.19.5* couldn't really create working
# shared libraries, regardless of the interface used.
case `$LD -v 2>&1` in
*\ \(GNU\ Binutils\)\ 2.19.5*) ;;
*\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
*\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
*)
lt_use_gnu_ld_interface=yes
;;
esac
;;
*)
lt_use_gnu_ld_interface=yes
;;
esac
fi
if test "$lt_use_gnu_ld_interface" = yes; then
# If archive_cmds runs LD, not CC, wlarc should be empty
wlarc='${wl}'
# Set some defaults for GNU ld with shared library support. These
# are reset later if shared libraries are not supported. Putting them
# here allows them to be overridden if necessary.
runpath_var=LD_RUN_PATH
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
# ancient GNU ld didn't support --whole-archive et. al.
if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
_LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
else
_LT_TAGVAR(whole_archive_flag_spec, $1)=
fi
supports_anon_versioning=no
case `$LD -v 2>&1` in
*GNU\ gold*) supports_anon_versioning=yes ;;
*\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
*\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
*\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
*\ 2.11.*) ;; # other 2.11 versions
*) supports_anon_versioning=yes ;;
esac
# See if GNU ld supports shared libraries.
case $host_os in
aix[[3-9]]*)
# On AIX/PPC, the GNU linker is very broken
if test "$host_cpu" != ia64; then
_LT_TAGVAR(ld_shlibs, $1)=no
cat <<_LT_EOF 1>&2
*** Warning: the GNU linker, at least up to release 2.19, is reported
*** to be unable to reliably create shared libraries on AIX.
*** Therefore, libtool is disabling shared libraries support. If you
*** really care for shared libraries, you may want to install binutils
*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
*** You will then need to restart the configuration process.
_LT_EOF
fi
;;
amigaos*)
case $host_cpu in
powerpc)
# see comment about AmigaOS4 .so support
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)=''
;;
m68k)
_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
_LT_TAGVAR(hardcode_minus_L, $1)=yes
;;
esac
;;
beos*)
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
# Joseph Beckenbach says some releases of gcc
# support --undefined. This deserves some investigation. FIXME
_LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
else
_LT_TAGVAR(ld_shlibs, $1)=no
fi
;;
cygwin* | mingw* | pw32* | cegcc*)
# _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
# as there is no search path for DLLs.
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
_LT_TAGVAR(always_export_symbols, $1)=no
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
_LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
# If the export-symbols file already is a .def file (1st line
# is EXPORTS), use it as is; otherwise, prepend...
_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
cp $export_symbols $output_objdir/$soname.def;
else
echo EXPORTS > $output_objdir/$soname.def;
cat $export_symbols >> $output_objdir/$soname.def;
fi~
$CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
else
_LT_TAGVAR(ld_shlibs, $1)=no
fi
;;
haiku*)
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
_LT_TAGVAR(link_all_deplibs, $1)=yes
;;
interix[[3-9]]*)
_LT_TAGVAR(hardcode_direct, $1)=no
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
# Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
# Instead, shared libraries are loaded at an image base (0x10000000 by
# default) and relocated if they conflict, which is a slow very memory
# consuming and fragmenting process. To avoid this, we pick a random,
# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
# time. Moving up from 0x10000000 also allows more sbrk(2) space.
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
;;
gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
tmp_diet=no
if test "$host_os" = linux-dietlibc; then
case $cc_basename in
diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
esac
fi
if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
&& test "$tmp_diet" = no
then
tmp_addflag=' $pic_flag'
tmp_sharedflag='-shared'
case $cc_basename,$host_cpu in
pgcc*) # Portland Group C compiler
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
tmp_addflag=' $pic_flag'
;;
pgf77* | pgf90* | pgf95* | pgfortran*)
# Portland Group f77 and f90 compilers
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
tmp_addflag=' $pic_flag -Mnomain' ;;
ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
tmp_addflag=' -i_dynamic' ;;
efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
tmp_addflag=' -i_dynamic -nofor_main' ;;
ifc* | ifort*) # Intel Fortran compiler
tmp_addflag=' -nofor_main' ;;
lf95*) # Lahey Fortran 8.1
_LT_TAGVAR(whole_archive_flag_spec, $1)=
tmp_sharedflag='--shared' ;;
xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
tmp_sharedflag='-qmkshrobj'
tmp_addflag= ;;
nvcc*) # Cuda Compiler Driver 2.2
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
_LT_TAGVAR(compiler_needs_object, $1)=yes
;;
esac
case `$CC -V 2>&1 | sed 5q` in
*Sun\ C*) # Sun C 5.9
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
_LT_TAGVAR(compiler_needs_object, $1)=yes
tmp_sharedflag='-G' ;;
*Sun\ F*) # Sun Fortran 8.3
tmp_sharedflag='-G' ;;
esac
_LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
if test "x$supports_anon_versioning" = xyes; then
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
echo "local: *; };" >> $output_objdir/$libname.ver~
$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
fi
case $cc_basename in
xlf* | bgf* | bgxlf* | mpixlf*)
# IBM XL Fortran 10.1 on PPC cannot create shared libs itself
_LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
_LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
if test "x$supports_anon_versioning" = xyes; then
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
echo "local: *; };" >> $output_objdir/$libname.ver~
$LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
fi
;;
esac
else
_LT_TAGVAR(ld_shlibs, $1)=no
fi
;;
netbsd* | netbsdelf*-gnu)
if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
wlarc=
else
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
fi
;;
solaris*)
if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
_LT_TAGVAR(ld_shlibs, $1)=no
cat <<_LT_EOF 1>&2
*** Warning: The releases 2.8.* of the GNU linker cannot reliably
*** create shared libraries on Solaris systems. Therefore, libtool
*** is disabling shared libraries support. We urge you to upgrade GNU
*** binutils to release 2.9.1 or newer. Another option is to modify
*** your PATH or compiler configuration so that the native linker is
*** used, and then restart.
_LT_EOF
elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
else
_LT_TAGVAR(ld_shlibs, $1)=no
fi
;;
sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
case `$LD -v 2>&1` in
*\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
_LT_TAGVAR(ld_shlibs, $1)=no
cat <<_LT_EOF 1>&2
*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
*** reliably create shared libraries on SCO systems. Therefore, libtool
*** is disabling shared libraries support. We urge you to upgrade GNU
*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
*** your PATH or compiler configuration so that the native linker is
*** used, and then restart.
_LT_EOF
;;
*)
# For security reasons, it is highly recommended that you always
# use absolute paths for naming shared libraries, and exclude the
# DT_RUNPATH tag from executables and libraries. But doing so
# requires that you compile everything twice, which is a pain.
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
else
_LT_TAGVAR(ld_shlibs, $1)=no
fi
;;
esac
;;
sunos4*)
_LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
wlarc=
_LT_TAGVAR(hardcode_direct, $1)=yes
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
;;
*)
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
else
_LT_TAGVAR(ld_shlibs, $1)=no
fi
;;
esac
if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
runpath_var=
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
_LT_TAGVAR(export_dynamic_flag_spec, $1)=
_LT_TAGVAR(whole_archive_flag_spec, $1)=
fi
else
# PORTME fill in a description of your system's linker (not GNU ld)
case $host_os in
aix3*)
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
_LT_TAGVAR(always_export_symbols, $1)=yes
_LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
# Note: this linker hardcodes the directories in LIBPATH if there
# are no directories specified by -L.
_LT_TAGVAR(hardcode_minus_L, $1)=yes
if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
# Neither direct hardcoding nor static linking is supported with a
# broken collect2.
_LT_TAGVAR(hardcode_direct, $1)=unsupported
fi
;;
aix[[4-9]]*)
if test "$host_cpu" = ia64; then
# On IA64, the linker does run time linking by default, so we don't
# have to do anything special.
aix_use_runtimelinking=no
exp_sym_flag='-Bexport'
no_entry_flag=""
else
# If we're using GNU nm, then we don't want the "-C" option.
# -C means demangle to AIX nm, but means don't demangle with GNU nm
# Also, AIX nm treats weak defined symbols like other global
# defined symbols, whereas GNU nm marks them as "W".
if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
_LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
else
_LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
fi
aix_use_runtimelinking=no
# Test if we are trying to use run time linking or normal
# AIX style linking. If -brtl is somewhere in LDFLAGS, we
# need to do runtime linking.
case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
for ld_flag in $LDFLAGS; do
if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
aix_use_runtimelinking=yes
break
fi
done
;;
esac
exp_sym_flag='-bexport'
no_entry_flag='-bnoentry'
fi
# When large executables or shared objects are built, AIX ld can
# have problems creating the table of contents. If linking a library
# or program results in "error TOC overflow" add -mminimal-toc to
# CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
# enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
_LT_TAGVAR(archive_cmds, $1)=''
_LT_TAGVAR(hardcode_direct, $1)=yes
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
_LT_TAGVAR(link_all_deplibs, $1)=yes
_LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
if test "$GCC" = yes; then
case $host_os in aix4.[[012]]|aix4.[[012]].*)
# We only want to do this on AIX 4.2 and lower, the check
# below for broken collect2 doesn't work under 4.3+
collect2name=`${CC} -print-prog-name=collect2`
if test -f "$collect2name" &&
strings "$collect2name" | $GREP resolve_lib_name >/dev/null
then
# We have reworked collect2
:
else
# We have old collect2
_LT_TAGVAR(hardcode_direct, $1)=unsupported
# It fails to find uninstalled libraries when the uninstalled
# path is not listed in the libpath. Setting hardcode_minus_L
# to unsupported forces relinking
_LT_TAGVAR(hardcode_minus_L, $1)=yes
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
_LT_TAGVAR(hardcode_libdir_separator, $1)=
fi
;;
esac
shared_flag='-shared'
if test "$aix_use_runtimelinking" = yes; then
shared_flag="$shared_flag "'${wl}-G'
fi
_LT_TAGVAR(link_all_deplibs, $1)=no
else
# not using gcc
if test "$host_cpu" = ia64; then
# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
# chokes on -Wl,-G. The following line is correct:
shared_flag='-G'
else
if test "$aix_use_runtimelinking" = yes; then
shared_flag='${wl}-G'
else
shared_flag='${wl}-bM:SRE'
fi
fi
fi
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
# It seems that -bexpall does not export symbols beginning with
# underscore (_), so it is better to generate a list of symbols to export.
_LT_TAGVAR(always_export_symbols, $1)=yes
if test "$aix_use_runtimelinking" = yes; then
# Warning - without using the other runtime loading flags (-brtl),
# -berok will link without error, but may produce a broken library.
_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
# Determine the default libpath from the value encoded in an
# empty executable.
_LT_SYS_MODULE_PATH_AIX([$1])
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
else
if test "$host_cpu" = ia64; then
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
_LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
_LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
else
# Determine the default libpath from the value encoded in an
# empty executable.
_LT_SYS_MODULE_PATH_AIX([$1])
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
# Warning - without using the other run time loading flags,
# -berok will link without error, but may produce a broken library.
_LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
if test "$with_gnu_ld" = yes; then
# We only use this code for GNU lds that support --whole-archive.
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
else
# Exported symbols can be pulled into shared objects from archives
_LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
fi
_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
# This is similar to how AIX traditionally builds its shared libraries.
_LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
;;
amigaos*)
case $host_cpu in
powerpc)
# see comment about AmigaOS4 .so support
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)=''
;;
m68k)
_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
_LT_TAGVAR(hardcode_minus_L, $1)=yes
;;
esac
;;
bsdi[[45]]*)
_LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
;;
cygwin* | mingw* | pw32* | cegcc*)
# When not using gcc, we currently assume that we are using
# Microsoft Visual C++.
# hardcode_libdir_flag_spec is actually meaningless, as there is
# no search path for DLLs.
case $cc_basename in
cl*)
# Native MSVC
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
_LT_TAGVAR(always_export_symbols, $1)=yes
_LT_TAGVAR(file_list_spec, $1)='@'
# Tell ltmain to make .lib files, not .a files.
libext=lib
# Tell ltmain to make .dll files, not .so files.
shrext_cmds=".dll"
# FIXME: Setting linknames here is a bad hack.
_LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
else
sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
fi~
$CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
linknames='
# The linker will not automatically build a static lib if we build a DLL.
# _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
_LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1,DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
# Don't use ranlib
_LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
_LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
lt_tool_outputfile="@TOOL_OUTPUT@"~
case $lt_outputfile in
*.exe|*.EXE) ;;
*)
lt_outputfile="$lt_outputfile.exe"
lt_tool_outputfile="$lt_tool_outputfile.exe"
;;
esac~
if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
$MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
$RM "$lt_outputfile.manifest";
fi'
;;
*)
# Assume MSVC wrapper
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
# Tell ltmain to make .lib files, not .a files.
libext=lib
# Tell ltmain to make .dll files, not .so files.
shrext_cmds=".dll"
# FIXME: Setting linknames here is a bad hack.
_LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
# The linker will automatically build a .lib file if we build a DLL.
_LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
# FIXME: Should let the user specify the lib program.
_LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
;;
esac
;;
darwin* | rhapsody*)
_LT_DARWIN_LINKER_FEATURES($1)
;;
dgux*)
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
;;
# FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
# support. Future versions do this automatically, but an explicit c++rt0.o
# does not break anything, and helps significantly (at the cost of a little
# extra space).
freebsd2.2*)
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
_LT_TAGVAR(hardcode_direct, $1)=yes
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
;;
# Unfortunately, older versions of FreeBSD 2 do not have this feature.
freebsd2.*)
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
_LT_TAGVAR(hardcode_direct, $1)=yes
_LT_TAGVAR(hardcode_minus_L, $1)=yes
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
;;
# FreeBSD 3 and greater uses gcc -shared to do shared libraries.
freebsd* | dragonfly*)
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
_LT_TAGVAR(hardcode_direct, $1)=yes
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
;;
hpux9*)
if test "$GCC" = yes; then
_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
else
_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
fi
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
_LT_TAGVAR(hardcode_direct, $1)=yes
# hardcode_minus_L: Not really in the search PATH,
# but as the default location of the library.
_LT_TAGVAR(hardcode_minus_L, $1)=yes
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
;;
hpux10*)
if test "$GCC" = yes && test "$with_gnu_ld" = no; then
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
else
_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
fi
if test "$with_gnu_ld" = no; then
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
_LT_TAGVAR(hardcode_direct, $1)=yes
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
# hardcode_minus_L: Not really in the search PATH,
# but as the default location of the library.
_LT_TAGVAR(hardcode_minus_L, $1)=yes
fi
;;
hpux11*)
if test "$GCC" = yes && test "$with_gnu_ld" = no; then
case $host_cpu in
hppa*64*)
_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
ia64*)
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
;;
*)
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
;;
esac
else
case $host_cpu in
hppa*64*)
_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
ia64*)
_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
;;
*)
m4_if($1, [], [
# Older versions of the 11.00 compiler do not understand -b yet
# (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
_LT_LINKER_OPTION([if $CC understands -b],
_LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
[_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
[_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
[_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
;;
esac
fi
if test "$with_gnu_ld" = no; then
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
case $host_cpu in
hppa*64*|ia64*)
_LT_TAGVAR(hardcode_direct, $1)=no
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
;;
*)
_LT_TAGVAR(hardcode_direct, $1)=yes
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
# hardcode_minus_L: Not really in the search PATH,
# but as the default location of the library.
_LT_TAGVAR(hardcode_minus_L, $1)=yes
;;
esac
fi
;;
irix5* | irix6* | nonstopux*)
if test "$GCC" = yes; then
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
# Try to use the -exported_symbol ld option, if it does not
# work, assume that -exports_file does not work either and
# implicitly export all symbols.
# This should be the same for all languages, so no per-tag cache variable.
AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
[lt_cv_irix_exported_symbol],
[save_LDFLAGS="$LDFLAGS"
LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
AC_LINK_IFELSE(
[AC_LANG_SOURCE(
[AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
[C++], [[int foo (void) { return 0; }]],
[Fortran 77], [[
subroutine foo
end]],
[Fortran], [[
subroutine foo
end]])])],
[lt_cv_irix_exported_symbol=yes],
[lt_cv_irix_exported_symbol=no])
LDFLAGS="$save_LDFLAGS"])
if test "$lt_cv_irix_exported_symbol" = yes; then
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
fi
else
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
fi
_LT_TAGVAR(archive_cmds_need_lc, $1)='no'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
_LT_TAGVAR(inherit_rpath, $1)=yes
_LT_TAGVAR(link_all_deplibs, $1)=yes
;;
netbsd* | netbsdelf*-gnu)
if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
else
_LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
fi
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
_LT_TAGVAR(hardcode_direct, $1)=yes
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
;;
newsos6)
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
_LT_TAGVAR(hardcode_direct, $1)=yes
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
;;
*nto* | *qnx*)
;;
openbsd*)
if test -f /usr/libexec/ld.so; then
_LT_TAGVAR(hardcode_direct, $1)=yes
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
else
case $host_os in
openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
;;
*)
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
;;
esac
fi
else
_LT_TAGVAR(ld_shlibs, $1)=no
fi
;;
os2*)
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
_LT_TAGVAR(hardcode_minus_L, $1)=yes
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
_LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
_LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
;;
osf3*)
if test "$GCC" = yes; then
_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
else
_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
fi
_LT_TAGVAR(archive_cmds_need_lc, $1)='no'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
;;
osf4* | osf5*) # as osf3* with the addition of -msym flag
if test "$GCC" = yes; then
_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
else
_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
$CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
# Both c and cxx compiler support -rpath directly
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
fi
_LT_TAGVAR(archive_cmds_need_lc, $1)='no'
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
;;
solaris*)
_LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
if test "$GCC" = yes; then
wlarc='${wl}'
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
else
case `$CC -V 2>&1` in
*"Compilers 5.0"*)
wlarc=''
_LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
;;
*)
wlarc='${wl}'
_LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
$CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
;;
esac
fi
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
case $host_os in
solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
*)
# The compiler driver will combine and reorder linker options,
# but understands `-z linker_flag'. GCC discards it without `$wl',
# but is careful enough not to reorder.
# Supported since Solaris 2.6 (maybe 2.5.1?)
if test "$GCC" = yes; then
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
else
_LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
fi
;;
esac
_LT_TAGVAR(link_all_deplibs, $1)=yes
;;
sunos4*)
if test "x$host_vendor" = xsequent; then
# Use $CC to link under sequent, because it throws in some extra .o
# files that make .init and .fini sections work.
_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
else
_LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
fi
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
_LT_TAGVAR(hardcode_direct, $1)=yes
_LT_TAGVAR(hardcode_minus_L, $1)=yes
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
;;
sysv4)
case $host_vendor in
sni)
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
_LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
;;
siemens)
## LD is ld it makes a PLAMLIB
## CC just makes a GrossModule.
_LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
_LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
_LT_TAGVAR(hardcode_direct, $1)=no
;;
motorola)
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
_LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
;;
esac
runpath_var='LD_RUN_PATH'
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
;;
sysv4.3*)
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
_LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
;;
sysv4*MP*)
if test -d /usr/nec; then
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
runpath_var=LD_RUN_PATH
hardcode_runpath_var=yes
_LT_TAGVAR(ld_shlibs, $1)=yes
fi
;;
sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
_LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
runpath_var='LD_RUN_PATH'
if test "$GCC" = yes; then
_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
else
_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
fi
;;
sysv5* | sco3.2v5* | sco5v6*)
# Note: We can NOT use -z defs as we might desire, because we do not
# link with -lc, and that would cause any symbols used from libc to
# always be unresolved, which means just about no library would
# ever link correctly. If we're not using GNU ld we use -z text
# though, which does catch some bad symbols but isn't as heavy-handed
# as -z defs.
_LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
_LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
_LT_TAGVAR(link_all_deplibs, $1)=yes
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
runpath_var='LD_RUN_PATH'
if test "$GCC" = yes; then
_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
else
_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
fi
;;
uts4*)
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
;;
*)
_LT_TAGVAR(ld_shlibs, $1)=no
;;
esac
if test x$host_vendor = xsni; then
case $host in
sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
;;
esac
fi
fi
])
AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
_LT_DECL([], [extract_expsyms_cmds], [2],
[The commands to extract the exported symbol list from a shared archive])
#
# Do we need to explicitly link libc?
#
case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
x|xyes)
# Assume -lc should be added
_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
if test "$enable_shared" = yes && test "$GCC" = yes; then
case $_LT_TAGVAR(archive_cmds, $1) in
*'~'*)
# FIXME: we may have to deal with multi-command sequences.
;;
'$CC '*)
# Test whether the compiler implicitly links with -lc since on some
# systems, -lgcc has to come before -lc. If gcc already passes -lc
# to ld, don't add -lc before -lgcc.
AC_CACHE_CHECK([whether -lc should be explicitly linked in],
[lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
[$RM conftest*
echo "$lt_simple_compile_test_code" > conftest.$ac_ext
if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
soname=conftest
lib=conftest
libobjs=conftest.$ac_objext
deplibs=
wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
compiler_flags=-v
linker_flags=-v
verstring=
output_objdir=.
libname=conftest
lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
_LT_TAGVAR(allow_undefined_flag, $1)=
if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
then
lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
else
lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
fi
_LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
else
cat conftest.err 1>&5
fi
$RM conftest*
])
_LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
;;
esac
fi
;;
esac
_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
[Whether or not to add -lc for building shared libraries])
_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
[enable_shared_with_static_runtimes], [0],
[Whether or not to disallow shared libs when runtime libs are static])
_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
[Compiler flag to allow reflexive dlopens])
_LT_TAGDECL([], [whole_archive_flag_spec], [1],
[Compiler flag to generate shared objects directly from archives])
_LT_TAGDECL([], [compiler_needs_object], [1],
[Whether the compiler copes with passing no objects directly])
_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
[Create an old-style archive from a shared archive])
_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
[Create a temporary old-style archive to link instead of a shared archive])
_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
_LT_TAGDECL([], [archive_expsym_cmds], [2])
_LT_TAGDECL([], [module_cmds], [2],
[Commands used to build a loadable module if different from building
a shared archive.])
_LT_TAGDECL([], [module_expsym_cmds], [2])
_LT_TAGDECL([], [with_gnu_ld], [1],
[Whether we are building with GNU ld or not])
_LT_TAGDECL([], [allow_undefined_flag], [1],
[Flag that allows shared libraries with undefined symbols to be built])
_LT_TAGDECL([], [no_undefined_flag], [1],
[Flag that enforces no undefined symbols])
_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
[Flag to hardcode $libdir into a binary during linking.
This must work even if $libdir does not exist])
_LT_TAGDECL([], [hardcode_libdir_separator], [1],
[Whether we need a single "-rpath" flag with a separated argument])
_LT_TAGDECL([], [hardcode_direct], [0],
[Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
DIR into the resulting binary])
_LT_TAGDECL([], [hardcode_direct_absolute], [0],
[Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
DIR into the resulting binary and the resulting library dependency is
"absolute", i.e impossible to change by setting ${shlibpath_var} if the
library is relocated])
_LT_TAGDECL([], [hardcode_minus_L], [0],
[Set to "yes" if using the -LDIR flag during linking hardcodes DIR
into the resulting binary])
_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
[Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
into the resulting binary])
_LT_TAGDECL([], [hardcode_automatic], [0],
[Set to "yes" if building a shared library automatically hardcodes DIR
into the library and all subsequent libraries and executables linked
against it])
_LT_TAGDECL([], [inherit_rpath], [0],
[Set to yes if linker adds runtime paths of dependent libraries
to runtime path list])
_LT_TAGDECL([], [link_all_deplibs], [0],
[Whether libtool must link a program against all its dependency libraries])
_LT_TAGDECL([], [always_export_symbols], [0],
[Set to "yes" if exported symbols are required])
_LT_TAGDECL([], [export_symbols_cmds], [2],
[The commands to list exported symbols])
_LT_TAGDECL([], [exclude_expsyms], [1],
[Symbols that should not be listed in the preloaded symbols])
_LT_TAGDECL([], [include_expsyms], [1],
[Symbols that must always be exported])
_LT_TAGDECL([], [prelink_cmds], [2],
[Commands necessary for linking programs (against libraries) with templates])
_LT_TAGDECL([], [postlink_cmds], [2],
[Commands necessary for finishing linking programs])
_LT_TAGDECL([], [file_list_spec], [1],
[Specify filename containing input files])
dnl FIXME: Not yet implemented
dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
dnl [Compiler flag to generate thread safe objects])
])# _LT_LINKER_SHLIBS
# _LT_LANG_C_CONFIG([TAG])
# ------------------------
# Ensure that the configuration variables for a C compiler are suitably
# defined. These variables are subsequently used by _LT_CONFIG to write
# the compiler configuration to `libtool'.
m4_defun([_LT_LANG_C_CONFIG],
[m4_require([_LT_DECL_EGREP])dnl
lt_save_CC="$CC"
AC_LANG_PUSH(C)
# Source file extension for C test sources.
ac_ext=c
# Object file extension for compiled C test sources.
objext=o
_LT_TAGVAR(objext, $1)=$objext
# Code to be used in simple compile tests
lt_simple_compile_test_code="int some_variable = 0;"
# Code to be used in simple link tests
lt_simple_link_test_code='int main(){return(0);}'
_LT_TAG_COMPILER
# Save the default compiler, since it gets overwritten when the other
# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
compiler_DEFAULT=$CC
# save warnings/boilerplate of simple test code
_LT_COMPILER_BOILERPLATE
_LT_LINKER_BOILERPLATE
## CAVEAT EMPTOR:
## There is no encapsulation within the following macros, do not change
## the running order or otherwise move them around unless you know exactly
## what you are doing...
if test -n "$compiler"; then
_LT_COMPILER_NO_RTTI($1)
_LT_COMPILER_PIC($1)
_LT_COMPILER_C_O($1)
_LT_COMPILER_FILE_LOCKS($1)
_LT_LINKER_SHLIBS($1)
_LT_SYS_DYNAMIC_LINKER($1)
_LT_LINKER_HARDCODE_LIBPATH($1)
LT_SYS_DLOPEN_SELF
_LT_CMD_STRIPLIB
# Report which library types will actually be built
AC_MSG_CHECKING([if libtool supports shared libraries])
AC_MSG_RESULT([$can_build_shared])
AC_MSG_CHECKING([whether to build shared libraries])
test "$can_build_shared" = "no" && enable_shared=no
# On AIX, shared libraries and static libraries use the same namespace, and
# are all built from PIC.
case $host_os in
aix3*)
test "$enable_shared" = yes && enable_static=no
if test -n "$RANLIB"; then
archive_cmds="$archive_cmds~\$RANLIB \$lib"
postinstall_cmds='$RANLIB $lib'
fi
;;
aix[[4-9]]*)
if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
test "$enable_shared" = yes && enable_static=no
fi
;;
esac
AC_MSG_RESULT([$enable_shared])
AC_MSG_CHECKING([whether to build static libraries])
# Make sure either enable_shared or enable_static is yes.
test "$enable_shared" = yes || enable_static=yes
AC_MSG_RESULT([$enable_static])
_LT_CONFIG($1)
fi
AC_LANG_POP
CC="$lt_save_CC"
])# _LT_LANG_C_CONFIG
# _LT_LANG_CXX_CONFIG([TAG])
# --------------------------
# Ensure that the configuration variables for a C++ compiler are suitably
# defined. These variables are subsequently used by _LT_CONFIG to write
# the compiler configuration to `libtool'.
m4_defun([_LT_LANG_CXX_CONFIG],
[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
m4_require([_LT_DECL_EGREP])dnl
m4_require([_LT_PATH_MANIFEST_TOOL])dnl
if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
(test "X$CXX" != "Xg++"))) ; then
AC_PROG_CXXCPP
else
_lt_caught_CXX_error=yes
fi
AC_LANG_PUSH(C++)
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
_LT_TAGVAR(allow_undefined_flag, $1)=
_LT_TAGVAR(always_export_symbols, $1)=no
_LT_TAGVAR(archive_expsym_cmds, $1)=
_LT_TAGVAR(compiler_needs_object, $1)=no
_LT_TAGVAR(export_dynamic_flag_spec, $1)=
_LT_TAGVAR(hardcode_direct, $1)=no
_LT_TAGVAR(hardcode_direct_absolute, $1)=no
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
_LT_TAGVAR(hardcode_libdir_separator, $1)=
_LT_TAGVAR(hardcode_minus_L, $1)=no
_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
_LT_TAGVAR(hardcode_automatic, $1)=no
_LT_TAGVAR(inherit_rpath, $1)=no
_LT_TAGVAR(module_cmds, $1)=
_LT_TAGVAR(module_expsym_cmds, $1)=
_LT_TAGVAR(link_all_deplibs, $1)=unknown
_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
_LT_TAGVAR(reload_flag, $1)=$reload_flag
_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
_LT_TAGVAR(no_undefined_flag, $1)=
_LT_TAGVAR(whole_archive_flag_spec, $1)=
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
# Source file extension for C++ test sources.
ac_ext=cpp
# Object file extension for compiled C++ test sources.
objext=o
_LT_TAGVAR(objext, $1)=$objext
# No sense in running all these tests if we already determined that
# the CXX compiler isn't working. Some variables (like enable_shared)
# are currently assumed to apply to all compilers on this platform,
# and will be corrupted by setting them based on a non-working compiler.
if test "$_lt_caught_CXX_error" != yes; then
# Code to be used in simple compile tests
lt_simple_compile_test_code="int some_variable = 0;"
# Code to be used in simple link tests
lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
_LT_TAG_COMPILER
# save warnings/boilerplate of simple test code
_LT_COMPILER_BOILERPLATE
_LT_LINKER_BOILERPLATE
# Allow CC to be a program name with arguments.
lt_save_CC=$CC
lt_save_CFLAGS=$CFLAGS
lt_save_LD=$LD
lt_save_GCC=$GCC
GCC=$GXX
lt_save_with_gnu_ld=$with_gnu_ld
lt_save_path_LD=$lt_cv_path_LD
if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
else
$as_unset lt_cv_prog_gnu_ld
fi
if test -n "${lt_cv_path_LDCXX+set}"; then
lt_cv_path_LD=$lt_cv_path_LDCXX
else
$as_unset lt_cv_path_LD
fi
test -z "${LDCXX+set}" || LD=$LDCXX
CC=${CXX-"c++"}
CFLAGS=$CXXFLAGS
compiler=$CC
_LT_TAGVAR(compiler, $1)=$CC
_LT_CC_BASENAME([$compiler])
if test -n "$compiler"; then
# We don't want -fno-exception when compiling C++ code, so set the
# no_builtin_flag separately
if test "$GXX" = yes; then
_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
else
_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
fi
if test "$GXX" = yes; then
# Set up default GNU C++ configuration
LT_PATH_LD
# Check if GNU C++ uses GNU ld as the underlying linker, since the
# archiving commands below assume that GNU ld is being used.
if test "$with_gnu_ld" = yes; then
_LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
# If archive_cmds runs LD, not CC, wlarc should be empty
# XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
# investigate it a little bit more. (MM)
wlarc='${wl}'
# ancient GNU ld didn't support --whole-archive et. al.
if eval "`$CC -print-prog-name=ld` --help 2>&1" |
$GREP 'no-whole-archive' > /dev/null; then
_LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
else
_LT_TAGVAR(whole_archive_flag_spec, $1)=
fi
else
with_gnu_ld=no
wlarc=
# A generic and very simple default shared library creation
# command for GNU C++ for the case where it uses the native
# linker, instead of GNU ld. If possible, this setting should
# overridden to take advantage of the native linker features on
# the platform it is being used on.
_LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
fi
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
else
GXX=no
with_gnu_ld=no
wlarc=
fi
# PORTME: fill in a description of your system's C++ link characteristics
AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
_LT_TAGVAR(ld_shlibs, $1)=yes
case $host_os in
aix3*)
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
aix[[4-9]]*)
if test "$host_cpu" = ia64; then
# On IA64, the linker does run time linking by default, so we don't
# have to do anything special.
aix_use_runtimelinking=no
exp_sym_flag='-Bexport'
no_entry_flag=""
else
aix_use_runtimelinking=no
# Test if we are trying to use run time linking or normal
# AIX style linking. If -brtl is somewhere in LDFLAGS, we
# need to do runtime linking.
case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
for ld_flag in $LDFLAGS; do
case $ld_flag in
*-brtl*)
aix_use_runtimelinking=yes
break
;;
esac
done
;;
esac
exp_sym_flag='-bexport'
no_entry_flag='-bnoentry'
fi
# When large executables or shared objects are built, AIX ld can
# have problems creating the table of contents. If linking a library
# or program results in "error TOC overflow" add -mminimal-toc to
# CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
# enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
_LT_TAGVAR(archive_cmds, $1)=''
_LT_TAGVAR(hardcode_direct, $1)=yes
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
_LT_TAGVAR(link_all_deplibs, $1)=yes
_LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
if test "$GXX" = yes; then
case $host_os in aix4.[[012]]|aix4.[[012]].*)
# We only want to do this on AIX 4.2 and lower, the check
# below for broken collect2 doesn't work under 4.3+
collect2name=`${CC} -print-prog-name=collect2`
if test -f "$collect2name" &&
strings "$collect2name" | $GREP resolve_lib_name >/dev/null
then
# We have reworked collect2
:
else
# We have old collect2
_LT_TAGVAR(hardcode_direct, $1)=unsupported
# It fails to find uninstalled libraries when the uninstalled
# path is not listed in the libpath. Setting hardcode_minus_L
# to unsupported forces relinking
_LT_TAGVAR(hardcode_minus_L, $1)=yes
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
_LT_TAGVAR(hardcode_libdir_separator, $1)=
fi
esac
shared_flag='-shared'
if test "$aix_use_runtimelinking" = yes; then
shared_flag="$shared_flag "'${wl}-G'
fi
else
# not using gcc
if test "$host_cpu" = ia64; then
# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
# chokes on -Wl,-G. The following line is correct:
shared_flag='-G'
else
if test "$aix_use_runtimelinking" = yes; then
shared_flag='${wl}-G'
else
shared_flag='${wl}-bM:SRE'
fi
fi
fi
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
# It seems that -bexpall does not export symbols beginning with
# underscore (_), so it is better to generate a list of symbols to
# export.
_LT_TAGVAR(always_export_symbols, $1)=yes
if test "$aix_use_runtimelinking" = yes; then
# Warning - without using the other runtime loading flags (-brtl),
# -berok will link without error, but may produce a broken library.
_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
# Determine the default libpath from the value encoded in an empty
# executable.
_LT_SYS_MODULE_PATH_AIX([$1])
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
else
if test "$host_cpu" = ia64; then
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
_LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
_LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
else
# Determine the default libpath from the value encoded in an
# empty executable.
_LT_SYS_MODULE_PATH_AIX([$1])
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
# Warning - without using the other run time loading flags,
# -berok will link without error, but may produce a broken library.
_LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
if test "$with_gnu_ld" = yes; then
# We only use this code for GNU lds that support --whole-archive.
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
else
# Exported symbols can be pulled into shared objects from archives
_LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
fi
_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
# This is similar to how AIX traditionally builds its shared
# libraries.
_LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
;;
beos*)
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
# Joseph Beckenbach says some releases of gcc
# support --undefined. This deserves some investigation. FIXME
_LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
else
_LT_TAGVAR(ld_shlibs, $1)=no
fi
;;
chorus*)
case $cc_basename in
*)
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
esac
;;
cygwin* | mingw* | pw32* | cegcc*)
case $GXX,$cc_basename in
,cl* | no,cl*)
# Native MSVC
# hardcode_libdir_flag_spec is actually meaningless, as there is
# no search path for DLLs.
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
_LT_TAGVAR(always_export_symbols, $1)=yes
_LT_TAGVAR(file_list_spec, $1)='@'
# Tell ltmain to make .lib files, not .a files.
libext=lib
# Tell ltmain to make .dll files, not .so files.
shrext_cmds=".dll"
# FIXME: Setting linknames here is a bad hack.
_LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
$SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
else
$SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
fi~
$CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
linknames='
# The linker will not automatically build a static lib if we build a DLL.
# _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
# Don't use ranlib
_LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
_LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
lt_tool_outputfile="@TOOL_OUTPUT@"~
case $lt_outputfile in
*.exe|*.EXE) ;;
*)
lt_outputfile="$lt_outputfile.exe"
lt_tool_outputfile="$lt_tool_outputfile.exe"
;;
esac~
func_to_tool_file "$lt_outputfile"~
if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
$MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
$RM "$lt_outputfile.manifest";
fi'
;;
*)
# g++
# _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
# as there is no search path for DLLs.
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
_LT_TAGVAR(always_export_symbols, $1)=no
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
_LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
# If the export-symbols file already is a .def file (1st line
# is EXPORTS), use it as is; otherwise, prepend...
_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
cp $export_symbols $output_objdir/$soname.def;
else
echo EXPORTS > $output_objdir/$soname.def;
cat $export_symbols >> $output_objdir/$soname.def;
fi~
$CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
else
_LT_TAGVAR(ld_shlibs, $1)=no
fi
;;
esac
;;
darwin* | rhapsody*)
_LT_DARWIN_LINKER_FEATURES($1)
;;
dgux*)
case $cc_basename in
ec++*)
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
ghcx*)
# Green Hills C++ Compiler
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
*)
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
esac
;;
freebsd2.*)
# C++ shared libraries reported to be fairly broken before
# switch to ELF
_LT_TAGVAR(ld_shlibs, $1)=no
;;
freebsd-elf*)
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
;;
freebsd* | dragonfly*)
# FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
# conventions
_LT_TAGVAR(ld_shlibs, $1)=yes
;;
haiku*)
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
_LT_TAGVAR(link_all_deplibs, $1)=yes
;;
hpux9*)
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
_LT_TAGVAR(hardcode_direct, $1)=yes
_LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
# but as the default
# location of the library.
case $cc_basename in
CC*)
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
aCC*)
_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
#
# There doesn't appear to be a way to prevent this compiler from
# explicitly linking system object files so we need to strip them
# from the output so that they don't get included in the library
# dependencies.
output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
;;
*)
if test "$GXX" = yes; then
_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
else
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
fi
;;
esac
;;
hpux10*|hpux11*)
if test $with_gnu_ld = no; then
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
case $host_cpu in
hppa*64*|ia64*)
;;
*)
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
;;
esac
fi
case $host_cpu in
hppa*64*|ia64*)
_LT_TAGVAR(hardcode_direct, $1)=no
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
;;
*)
_LT_TAGVAR(hardcode_direct, $1)=yes
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
_LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
# but as the default
# location of the library.
;;
esac
case $cc_basename in
CC*)
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
aCC*)
case $host_cpu in
hppa*64*)
_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
;;
ia64*)
_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
;;
*)
_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
;;
esac
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
#
# There doesn't appear to be a way to prevent this compiler from
# explicitly linking system object files so we need to strip them
# from the output so that they don't get included in the library
# dependencies.
output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
;;
*)
if test "$GXX" = yes; then
if test $with_gnu_ld = no; then
case $host_cpu in
hppa*64*)
_LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
;;
ia64*)
_LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
;;
*)
_LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
;;
esac
fi
else
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
fi
;;
esac
;;
interix[[3-9]]*)
_LT_TAGVAR(hardcode_direct, $1)=no
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
# Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
# Instead, shared libraries are loaded at an image base (0x10000000 by
# default) and relocated if they conflict, which is a slow very memory
# consuming and fragmenting process. To avoid this, we pick a random,
# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
# time. Moving up from 0x10000000 also allows more sbrk(2) space.
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
;;
irix5* | irix6*)
case $cc_basename in
CC*)
# SGI C++
_LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
# Archives containing C++ object files must be created using
# "CC -ar", where "CC" is the IRIX C++ compiler. This is
# necessary to make sure instantiated templates are included
# in the archive.
_LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
;;
*)
if test "$GXX" = yes; then
if test "$with_gnu_ld" = no; then
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
else
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` -o $lib'
fi
fi
_LT_TAGVAR(link_all_deplibs, $1)=yes
;;
esac
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
_LT_TAGVAR(inherit_rpath, $1)=yes
;;
linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
case $cc_basename in
KCC*)
# Kuck and Associates, Inc. (KAI) C++ Compiler
# KCC will only create a shared library if the output file
# ends with ".so" (or ".sl" for HP-UX), so rename the library
# to its proper name (with version) after linking.
_LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
#
# There doesn't appear to be a way to prevent this compiler from
# explicitly linking system object files so we need to strip them
# from the output so that they don't get included in the library
# dependencies.
output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
# Archives containing C++ object files must be created using
# "CC -Bstatic", where "CC" is the KAI C++ compiler.
_LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
;;
icpc* | ecpc* )
# Intel C++
with_gnu_ld=yes
# version 8.0 and above of icpc choke on multiply defined symbols
# if we add $predep_objects and $postdep_objects, however 7.1 and
# earlier do not add the objects themselves.
case `$CC -V 2>&1` in
*"Version 7."*)
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
;;
*) # Version 8.0 or newer
tmp_idyn=
case $host_cpu in
ia64*) tmp_idyn=' -i_dynamic';;
esac
_LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
;;
esac
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
;;
pgCC* | pgcpp*)
# Portland Group C++ compiler
case `$CC -V` in
*pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
_LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
rm -rf $tpldir~
$CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
_LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
rm -rf $tpldir~
$CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
$RANLIB $oldlib'
_LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
rm -rf $tpldir~
$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
$CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
rm -rf $tpldir~
$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
$CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
;;
*) # Version 6 and above use weak symbols
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
;;
esac
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
;;
cxx*)
# Compaq C++
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
runpath_var=LD_RUN_PATH
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
#
# There doesn't appear to be a way to prevent this compiler from
# explicitly linking system object files so we need to strip them
# from the output so that they don't get included in the library
# dependencies.
output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed'
;;
xl* | mpixl* | bgxl*)
# IBM XL 8.0 on PPC, with GNU ld
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
_LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
if test "x$supports_anon_versioning" = xyes; then
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
echo "local: *; };" >> $output_objdir/$libname.ver~
$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
fi
;;
*)
case `$CC -V 2>&1 | sed 5q` in
*Sun\ C*)
# Sun C++ 5.9
_LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
_LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
_LT_TAGVAR(compiler_needs_object, $1)=yes
# Not sure whether something based on
# $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
# would be better.
output_verbose_link_cmd='func_echo_all'
# Archives containing C++ object files must be created using
# "CC -xar", where "CC" is the Sun C++ compiler. This is
# necessary to make sure instantiated templates are included
# in the archive.
_LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
;;
esac
;;
esac
;;
lynxos*)
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
m88k*)
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
mvs*)
case $cc_basename in
cxx*)
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
*)
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
esac
;;
netbsd*)
if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
wlarc=
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
_LT_TAGVAR(hardcode_direct, $1)=yes
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
fi
# Workaround some broken pre-1.5 toolchains
output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
;;
*nto* | *qnx*)
_LT_TAGVAR(ld_shlibs, $1)=yes
;;
openbsd2*)
# C++ shared libraries are fairly broken
_LT_TAGVAR(ld_shlibs, $1)=no
;;
openbsd*)
if test -f /usr/libexec/ld.so; then
_LT_TAGVAR(hardcode_direct, $1)=yes
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
_LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
fi
output_verbose_link_cmd=func_echo_all
else
_LT_TAGVAR(ld_shlibs, $1)=no
fi
;;
osf3* | osf4* | osf5*)
case $cc_basename in
KCC*)
# Kuck and Associates, Inc. (KAI) C++ Compiler
# KCC will only create a shared library if the output file
# ends with ".so" (or ".sl" for HP-UX), so rename the library
# to its proper name (with version) after linking.
_LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
# Archives containing C++ object files must be created using
# the KAI C++ compiler.
case $host in
osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
esac
;;
RCC*)
# Rational C++ 2.4.1
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
cxx*)
case $host in
osf3*)
_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && func_echo_all "${wl}-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
;;
*)
_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
echo "-hidden">> $lib.exp~
$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~
$RM $lib.exp'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
;;
esac
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
#
# There doesn't appear to be a way to prevent this compiler from
# explicitly linking system object files so we need to strip them
# from the output so that they don't get included in the library
# dependencies.
output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
;;
*)
if test "$GXX" = yes && test "$with_gnu_ld" = no; then
_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
case $host in
osf3*)
_LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
;;
*)
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
;;
esac
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
else
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
fi
;;
esac
;;
psos*)
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
sunos4*)
case $cc_basename in
CC*)
# Sun C++ 4.x
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
lcc*)
# Lucid
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
*)
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
esac
;;
solaris*)
case $cc_basename in
CC* | sunCC*)
# Sun C++ 4.2, 5.x and Centerline C++
_LT_TAGVAR(archive_cmds_need_lc,$1)=yes
_LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
_LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
$CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
case $host_os in
solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
*)
# The compiler driver will combine and reorder linker options,
# but understands `-z linker_flag'.
# Supported since Solaris 2.6 (maybe 2.5.1?)
_LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
;;
esac
_LT_TAGVAR(link_all_deplibs, $1)=yes
output_verbose_link_cmd='func_echo_all'
# Archives containing C++ object files must be created using
# "CC -xar", where "CC" is the Sun C++ compiler. This is
# necessary to make sure instantiated templates are included
# in the archive.
_LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
;;
gcx*)
# Green Hills C++ Compiler
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
# The C++ compiler must be used to create the archive.
_LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
;;
*)
# GNU C++ compiler with Solaris linker
if test "$GXX" = yes && test "$with_gnu_ld" = no; then
_LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
if $CC --version | $GREP -v '^2\.7' > /dev/null; then
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
$CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
else
# g++ 2.7 appears to require `-G' NOT `-shared' on this
# platform.
_LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
$CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
fi
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
case $host_os in
solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
*)
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
;;
esac
fi
;;
esac
;;
sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
_LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
runpath_var='LD_RUN_PATH'
case $cc_basename in
CC*)
_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
*)
_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
esac
;;
sysv5* | sco3.2v5* | sco5v6*)
# Note: We can NOT use -z defs as we might desire, because we do not
# link with -lc, and that would cause any symbols used from libc to
# always be unresolved, which means just about no library would
# ever link correctly. If we're not using GNU ld we use -z text
# though, which does catch some bad symbols but isn't as heavy-handed
# as -z defs.
_LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
_LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
_LT_TAGVAR(link_all_deplibs, $1)=yes
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
runpath_var='LD_RUN_PATH'
case $cc_basename in
CC*)
_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
_LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
'"$_LT_TAGVAR(old_archive_cmds, $1)"
_LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
'"$_LT_TAGVAR(reload_cmds, $1)"
;;
*)
_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
esac
;;
tandem*)
case $cc_basename in
NCC*)
# NonStop-UX NCC 3.20
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
*)
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
esac
;;
vxworks*)
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
*)
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
;;
esac
AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
_LT_TAGVAR(GCC, $1)="$GXX"
_LT_TAGVAR(LD, $1)="$LD"
## CAVEAT EMPTOR:
## There is no encapsulation within the following macros, do not change
## the running order or otherwise move them around unless you know exactly
## what you are doing...
_LT_SYS_HIDDEN_LIBDEPS($1)
_LT_COMPILER_PIC($1)
_LT_COMPILER_C_O($1)
_LT_COMPILER_FILE_LOCKS($1)
_LT_LINKER_SHLIBS($1)
_LT_SYS_DYNAMIC_LINKER($1)
_LT_LINKER_HARDCODE_LIBPATH($1)
_LT_CONFIG($1)
fi # test -n "$compiler"
CC=$lt_save_CC
CFLAGS=$lt_save_CFLAGS
LDCXX=$LD
LD=$lt_save_LD
GCC=$lt_save_GCC
with_gnu_ld=$lt_save_with_gnu_ld
lt_cv_path_LDCXX=$lt_cv_path_LD
lt_cv_path_LD=$lt_save_path_LD
lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
fi # test "$_lt_caught_CXX_error" != yes
AC_LANG_POP
])# _LT_LANG_CXX_CONFIG
# _LT_FUNC_STRIPNAME_CNF
# ----------------------
# func_stripname_cnf prefix suffix name
# strip PREFIX and SUFFIX off of NAME.
# PREFIX and SUFFIX must not contain globbing or regex special
# characters, hashes, percent signs, but SUFFIX may contain a leading
# dot (in which case that matches only a dot).
#
# This function is identical to the (non-XSI) version of func_stripname,
# except this one can be used by m4 code that may be executed by configure,
# rather than the libtool script.
m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
AC_REQUIRE([_LT_DECL_SED])
AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
func_stripname_cnf ()
{
case ${2} in
.*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
esac
} # func_stripname_cnf
])# _LT_FUNC_STRIPNAME_CNF
# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
# ---------------------------------
# Figure out "hidden" library dependencies from verbose
# compiler output when linking a shared library.
# Parse the compiler output and extract the necessary
# objects, libraries and library flags.
m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
# Dependencies to place before and after the object being linked:
_LT_TAGVAR(predep_objects, $1)=
_LT_TAGVAR(postdep_objects, $1)=
_LT_TAGVAR(predeps, $1)=
_LT_TAGVAR(postdeps, $1)=
_LT_TAGVAR(compiler_lib_search_path, $1)=
dnl we can't use the lt_simple_compile_test_code here,
dnl because it contains code intended for an executable,
dnl not a library. It's possible we should let each
dnl tag define a new lt_????_link_test_code variable,
dnl but it's only used here...
m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
int a;
void foo (void) { a = 0; }
_LT_EOF
], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
class Foo
{
public:
Foo (void) { a = 0; }
private:
int a;
};
_LT_EOF
], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
subroutine foo
implicit none
integer*4 a
a=0
return
end
_LT_EOF
], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
subroutine foo
implicit none
integer a
a=0
return
end
_LT_EOF
], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
public class foo {
private int a;
public void bar (void) {
a = 0;
}
};
_LT_EOF
], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
package foo
func foo() {
}
_LT_EOF
])
_lt_libdeps_save_CFLAGS=$CFLAGS
case "$CC $CFLAGS " in #(
*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
esac
dnl Parse the compiler output and extract the necessary
dnl objects, libraries and library flags.
if AC_TRY_EVAL(ac_compile); then
# Parse the compiler output and extract the necessary
# objects, libraries and library flags.
# Sentinel used to keep track of whether or not we are before
# the conftest object file.
pre_test_object_deps_done=no
for p in `eval "$output_verbose_link_cmd"`; do
case ${prev}${p} in
-L* | -R* | -l*)
# Some compilers place space between "-{L,R}" and the path.
# Remove the space.
if test $p = "-L" ||
test $p = "-R"; then
prev=$p
continue
fi
# Expand the sysroot to ease extracting the directories later.
if test -z "$prev"; then
case $p in
-L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
-R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
-l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
esac
fi
case $p in
=*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
esac
if test "$pre_test_object_deps_done" = no; then
case ${prev} in
-L | -R)
# Internal compiler library paths should come after those
# provided the user. The postdeps already come after the
# user supplied libs so there is no need to process them.
if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
_LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
else
_LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
fi
;;
# The "-l" case would never come before the object being
# linked, so don't bother handling this case.
esac
else
if test -z "$_LT_TAGVAR(postdeps, $1)"; then
_LT_TAGVAR(postdeps, $1)="${prev}${p}"
else
_LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
fi
fi
prev=
;;
*.lto.$objext) ;; # Ignore GCC LTO objects
*.$objext)
# This assumes that the test object file only shows up
# once in the compiler output.
if test "$p" = "conftest.$objext"; then
pre_test_object_deps_done=yes
continue
fi
if test "$pre_test_object_deps_done" = no; then
if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
_LT_TAGVAR(predep_objects, $1)="$p"
else
_LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
fi
else
if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
_LT_TAGVAR(postdep_objects, $1)="$p"
else
_LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
fi
fi
;;
*) ;; # Ignore the rest.
esac
done
# Clean up.
rm -f a.out a.exe
else
echo "libtool.m4: error: problem compiling $1 test program"
fi
$RM -f confest.$objext
CFLAGS=$_lt_libdeps_save_CFLAGS
# PORTME: override above test on systems where it is broken
m4_if([$1], [CXX],
[case $host_os in
interix[[3-9]]*)
# Interix 3.5 installs completely hosed .la files for C++, so rather than
# hack all around it, let's just trust "g++" to DTRT.
_LT_TAGVAR(predep_objects,$1)=
_LT_TAGVAR(postdep_objects,$1)=
_LT_TAGVAR(postdeps,$1)=
;;
linux*)
case `$CC -V 2>&1 | sed 5q` in
*Sun\ C*)
# Sun C++ 5.9
# The more standards-conforming stlport4 library is
# incompatible with the Cstd library. Avoid specifying
# it if it's in CXXFLAGS. Ignore libCrun as
# -library=stlport4 depends on it.
case " $CXX $CXXFLAGS " in
*" -library=stlport4 "*)
solaris_use_stlport4=yes
;;
esac
if test "$solaris_use_stlport4" != yes; then
_LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
fi
;;
esac
;;
solaris*)
case $cc_basename in
CC* | sunCC*)
# The more standards-conforming stlport4 library is
# incompatible with the Cstd library. Avoid specifying
# it if it's in CXXFLAGS. Ignore libCrun as
# -library=stlport4 depends on it.
case " $CXX $CXXFLAGS " in
*" -library=stlport4 "*)
solaris_use_stlport4=yes
;;
esac
# Adding this requires a known-good setup of shared libraries for
# Sun compiler versions before 5.6, else PIC objects from an old
# archive will be linked into the output, leading to subtle bugs.
if test "$solaris_use_stlport4" != yes; then
_LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
fi
;;
esac
;;
esac
])
case " $_LT_TAGVAR(postdeps, $1) " in
*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
esac
_LT_TAGVAR(compiler_lib_search_dirs, $1)=
if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
_LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
fi
_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
[The directories searched by this compiler when creating a shared library])
_LT_TAGDECL([], [predep_objects], [1],
[Dependencies to place before and after the objects being linked to
create a shared library])
_LT_TAGDECL([], [postdep_objects], [1])
_LT_TAGDECL([], [predeps], [1])
_LT_TAGDECL([], [postdeps], [1])
_LT_TAGDECL([], [compiler_lib_search_path], [1],
[The library search path used internally by the compiler when linking
a shared library])
])# _LT_SYS_HIDDEN_LIBDEPS
# _LT_LANG_F77_CONFIG([TAG])
# --------------------------
# Ensure that the configuration variables for a Fortran 77 compiler are
# suitably defined. These variables are subsequently used by _LT_CONFIG
# to write the compiler configuration to `libtool'.
m4_defun([_LT_LANG_F77_CONFIG],
[AC_LANG_PUSH(Fortran 77)
if test -z "$F77" || test "X$F77" = "Xno"; then
_lt_disable_F77=yes
fi
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
_LT_TAGVAR(allow_undefined_flag, $1)=
_LT_TAGVAR(always_export_symbols, $1)=no
_LT_TAGVAR(archive_expsym_cmds, $1)=
_LT_TAGVAR(export_dynamic_flag_spec, $1)=
_LT_TAGVAR(hardcode_direct, $1)=no
_LT_TAGVAR(hardcode_direct_absolute, $1)=no
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
_LT_TAGVAR(hardcode_libdir_separator, $1)=
_LT_TAGVAR(hardcode_minus_L, $1)=no
_LT_TAGVAR(hardcode_automatic, $1)=no
_LT_TAGVAR(inherit_rpath, $1)=no
_LT_TAGVAR(module_cmds, $1)=
_LT_TAGVAR(module_expsym_cmds, $1)=
_LT_TAGVAR(link_all_deplibs, $1)=unknown
_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
_LT_TAGVAR(reload_flag, $1)=$reload_flag
_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
_LT_TAGVAR(no_undefined_flag, $1)=
_LT_TAGVAR(whole_archive_flag_spec, $1)=
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
# Source file extension for f77 test sources.
ac_ext=f
# Object file extension for compiled f77 test sources.
objext=o
_LT_TAGVAR(objext, $1)=$objext
# No sense in running all these tests if we already determined that
# the F77 compiler isn't working. Some variables (like enable_shared)
# are currently assumed to apply to all compilers on this platform,
# and will be corrupted by setting them based on a non-working compiler.
if test "$_lt_disable_F77" != yes; then
# Code to be used in simple compile tests
lt_simple_compile_test_code="\
subroutine t
return
end
"
# Code to be used in simple link tests
lt_simple_link_test_code="\
program t
end
"
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
_LT_TAG_COMPILER
# save warnings/boilerplate of simple test code
_LT_COMPILER_BOILERPLATE
_LT_LINKER_BOILERPLATE
# Allow CC to be a program name with arguments.
lt_save_CC="$CC"
lt_save_GCC=$GCC
lt_save_CFLAGS=$CFLAGS
CC=${F77-"f77"}
CFLAGS=$FFLAGS
compiler=$CC
_LT_TAGVAR(compiler, $1)=$CC
_LT_CC_BASENAME([$compiler])
GCC=$G77
if test -n "$compiler"; then
AC_MSG_CHECKING([if libtool supports shared libraries])
AC_MSG_RESULT([$can_build_shared])
AC_MSG_CHECKING([whether to build shared libraries])
test "$can_build_shared" = "no" && enable_shared=no
# On AIX, shared libraries and static libraries use the same namespace, and
# are all built from PIC.
case $host_os in
aix3*)
test "$enable_shared" = yes && enable_static=no
if test -n "$RANLIB"; then
archive_cmds="$archive_cmds~\$RANLIB \$lib"
postinstall_cmds='$RANLIB $lib'
fi
;;
aix[[4-9]]*)
if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
test "$enable_shared" = yes && enable_static=no
fi
;;
esac
AC_MSG_RESULT([$enable_shared])
AC_MSG_CHECKING([whether to build static libraries])
# Make sure either enable_shared or enable_static is yes.
test "$enable_shared" = yes || enable_static=yes
AC_MSG_RESULT([$enable_static])
_LT_TAGVAR(GCC, $1)="$G77"
_LT_TAGVAR(LD, $1)="$LD"
## CAVEAT EMPTOR:
## There is no encapsulation within the following macros, do not change
## the running order or otherwise move them around unless you know exactly
## what you are doing...
_LT_COMPILER_PIC($1)
_LT_COMPILER_C_O($1)
_LT_COMPILER_FILE_LOCKS($1)
_LT_LINKER_SHLIBS($1)
_LT_SYS_DYNAMIC_LINKER($1)
_LT_LINKER_HARDCODE_LIBPATH($1)
_LT_CONFIG($1)
fi # test -n "$compiler"
GCC=$lt_save_GCC
CC="$lt_save_CC"
CFLAGS="$lt_save_CFLAGS"
fi # test "$_lt_disable_F77" != yes
AC_LANG_POP
])# _LT_LANG_F77_CONFIG
# _LT_LANG_FC_CONFIG([TAG])
# -------------------------
# Ensure that the configuration variables for a Fortran compiler are
# suitably defined. These variables are subsequently used by _LT_CONFIG
# to write the compiler configuration to `libtool'.
m4_defun([_LT_LANG_FC_CONFIG],
[AC_LANG_PUSH(Fortran)
if test -z "$FC" || test "X$FC" = "Xno"; then
_lt_disable_FC=yes
fi
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
_LT_TAGVAR(allow_undefined_flag, $1)=
_LT_TAGVAR(always_export_symbols, $1)=no
_LT_TAGVAR(archive_expsym_cmds, $1)=
_LT_TAGVAR(export_dynamic_flag_spec, $1)=
_LT_TAGVAR(hardcode_direct, $1)=no
_LT_TAGVAR(hardcode_direct_absolute, $1)=no
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
_LT_TAGVAR(hardcode_libdir_separator, $1)=
_LT_TAGVAR(hardcode_minus_L, $1)=no
_LT_TAGVAR(hardcode_automatic, $1)=no
_LT_TAGVAR(inherit_rpath, $1)=no
_LT_TAGVAR(module_cmds, $1)=
_LT_TAGVAR(module_expsym_cmds, $1)=
_LT_TAGVAR(link_all_deplibs, $1)=unknown
_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
_LT_TAGVAR(reload_flag, $1)=$reload_flag
_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
_LT_TAGVAR(no_undefined_flag, $1)=
_LT_TAGVAR(whole_archive_flag_spec, $1)=
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
# Source file extension for fc test sources.
ac_ext=${ac_fc_srcext-f}
# Object file extension for compiled fc test sources.
objext=o
_LT_TAGVAR(objext, $1)=$objext
# No sense in running all these tests if we already determined that
# the FC compiler isn't working. Some variables (like enable_shared)
# are currently assumed to apply to all compilers on this platform,
# and will be corrupted by setting them based on a non-working compiler.
if test "$_lt_disable_FC" != yes; then
# Code to be used in simple compile tests
lt_simple_compile_test_code="\
subroutine t
return
end
"
# Code to be used in simple link tests
lt_simple_link_test_code="\
program t
end
"
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
_LT_TAG_COMPILER
# save warnings/boilerplate of simple test code
_LT_COMPILER_BOILERPLATE
_LT_LINKER_BOILERPLATE
# Allow CC to be a program name with arguments.
lt_save_CC="$CC"
lt_save_GCC=$GCC
lt_save_CFLAGS=$CFLAGS
CC=${FC-"f95"}
CFLAGS=$FCFLAGS
compiler=$CC
GCC=$ac_cv_fc_compiler_gnu
_LT_TAGVAR(compiler, $1)=$CC
_LT_CC_BASENAME([$compiler])
if test -n "$compiler"; then
AC_MSG_CHECKING([if libtool supports shared libraries])
AC_MSG_RESULT([$can_build_shared])
AC_MSG_CHECKING([whether to build shared libraries])
test "$can_build_shared" = "no" && enable_shared=no
# On AIX, shared libraries and static libraries use the same namespace, and
# are all built from PIC.
case $host_os in
aix3*)
test "$enable_shared" = yes && enable_static=no
if test -n "$RANLIB"; then
archive_cmds="$archive_cmds~\$RANLIB \$lib"
postinstall_cmds='$RANLIB $lib'
fi
;;
aix[[4-9]]*)
if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
test "$enable_shared" = yes && enable_static=no
fi
;;
esac
AC_MSG_RESULT([$enable_shared])
AC_MSG_CHECKING([whether to build static libraries])
# Make sure either enable_shared or enable_static is yes.
test "$enable_shared" = yes || enable_static=yes
AC_MSG_RESULT([$enable_static])
_LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
_LT_TAGVAR(LD, $1)="$LD"
## CAVEAT EMPTOR:
## There is no encapsulation within the following macros, do not change
## the running order or otherwise move them around unless you know exactly
## what you are doing...
_LT_SYS_HIDDEN_LIBDEPS($1)
_LT_COMPILER_PIC($1)
_LT_COMPILER_C_O($1)
_LT_COMPILER_FILE_LOCKS($1)
_LT_LINKER_SHLIBS($1)
_LT_SYS_DYNAMIC_LINKER($1)
_LT_LINKER_HARDCODE_LIBPATH($1)
_LT_CONFIG($1)
fi # test -n "$compiler"
GCC=$lt_save_GCC
CC=$lt_save_CC
CFLAGS=$lt_save_CFLAGS
fi # test "$_lt_disable_FC" != yes
AC_LANG_POP
])# _LT_LANG_FC_CONFIG
# _LT_LANG_GCJ_CONFIG([TAG])
# --------------------------
# Ensure that the configuration variables for the GNU Java Compiler compiler
# are suitably defined. These variables are subsequently used by _LT_CONFIG
# to write the compiler configuration to `libtool'.
m4_defun([_LT_LANG_GCJ_CONFIG],
[AC_REQUIRE([LT_PROG_GCJ])dnl
AC_LANG_SAVE
# Source file extension for Java test sources.
ac_ext=java
# Object file extension for compiled Java test sources.
objext=o
_LT_TAGVAR(objext, $1)=$objext
# Code to be used in simple compile tests
lt_simple_compile_test_code="class foo {}"
# Code to be used in simple link tests
lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
_LT_TAG_COMPILER
# save warnings/boilerplate of simple test code
_LT_COMPILER_BOILERPLATE
_LT_LINKER_BOILERPLATE
# Allow CC to be a program name with arguments.
lt_save_CC=$CC
lt_save_CFLAGS=$CFLAGS
lt_save_GCC=$GCC
GCC=yes
CC=${GCJ-"gcj"}
CFLAGS=$GCJFLAGS
compiler=$CC
_LT_TAGVAR(compiler, $1)=$CC
_LT_TAGVAR(LD, $1)="$LD"
_LT_CC_BASENAME([$compiler])
# GCJ did not exist at the time GCC didn't implicitly link libc in.
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
_LT_TAGVAR(reload_flag, $1)=$reload_flag
_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
## CAVEAT EMPTOR:
## There is no encapsulation within the following macros, do not change
## the running order or otherwise move them around unless you know exactly
## what you are doing...
if test -n "$compiler"; then
_LT_COMPILER_NO_RTTI($1)
_LT_COMPILER_PIC($1)
_LT_COMPILER_C_O($1)
_LT_COMPILER_FILE_LOCKS($1)
_LT_LINKER_SHLIBS($1)
_LT_LINKER_HARDCODE_LIBPATH($1)
_LT_CONFIG($1)
fi
AC_LANG_RESTORE
GCC=$lt_save_GCC
CC=$lt_save_CC
CFLAGS=$lt_save_CFLAGS
])# _LT_LANG_GCJ_CONFIG
# _LT_LANG_GO_CONFIG([TAG])
# --------------------------
# Ensure that the configuration variables for the GNU Go compiler
# are suitably defined. These variables are subsequently used by _LT_CONFIG
# to write the compiler configuration to `libtool'.
m4_defun([_LT_LANG_GO_CONFIG],
[AC_REQUIRE([LT_PROG_GO])dnl
AC_LANG_SAVE
# Source file extension for Go test sources.
ac_ext=go
# Object file extension for compiled Go test sources.
objext=o
_LT_TAGVAR(objext, $1)=$objext
# Code to be used in simple compile tests
lt_simple_compile_test_code="package main; func main() { }"
# Code to be used in simple link tests
lt_simple_link_test_code='package main; func main() { }'
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
_LT_TAG_COMPILER
# save warnings/boilerplate of simple test code
_LT_COMPILER_BOILERPLATE
_LT_LINKER_BOILERPLATE
# Allow CC to be a program name with arguments.
lt_save_CC=$CC
lt_save_CFLAGS=$CFLAGS
lt_save_GCC=$GCC
GCC=yes
CC=${GOC-"gccgo"}
CFLAGS=$GOFLAGS
compiler=$CC
_LT_TAGVAR(compiler, $1)=$CC
_LT_TAGVAR(LD, $1)="$LD"
_LT_CC_BASENAME([$compiler])
# Go did not exist at the time GCC didn't implicitly link libc in.
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
_LT_TAGVAR(reload_flag, $1)=$reload_flag
_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
## CAVEAT EMPTOR:
## There is no encapsulation within the following macros, do not change
## the running order or otherwise move them around unless you know exactly
## what you are doing...
if test -n "$compiler"; then
_LT_COMPILER_NO_RTTI($1)
_LT_COMPILER_PIC($1)
_LT_COMPILER_C_O($1)
_LT_COMPILER_FILE_LOCKS($1)
_LT_LINKER_SHLIBS($1)
_LT_LINKER_HARDCODE_LIBPATH($1)
_LT_CONFIG($1)
fi
AC_LANG_RESTORE
GCC=$lt_save_GCC
CC=$lt_save_CC
CFLAGS=$lt_save_CFLAGS
])# _LT_LANG_GO_CONFIG
# _LT_LANG_RC_CONFIG([TAG])
# -------------------------
# Ensure that the configuration variables for the Windows resource compiler
# are suitably defined. These variables are subsequently used by _LT_CONFIG
# to write the compiler configuration to `libtool'.
m4_defun([_LT_LANG_RC_CONFIG],
[AC_REQUIRE([LT_PROG_RC])dnl
AC_LANG_SAVE
# Source file extension for RC test sources.
ac_ext=rc
# Object file extension for compiled RC test sources.
objext=o
_LT_TAGVAR(objext, $1)=$objext
# Code to be used in simple compile tests
lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
# Code to be used in simple link tests
lt_simple_link_test_code="$lt_simple_compile_test_code"
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
_LT_TAG_COMPILER
# save warnings/boilerplate of simple test code
_LT_COMPILER_BOILERPLATE
_LT_LINKER_BOILERPLATE
# Allow CC to be a program name with arguments.
lt_save_CC="$CC"
lt_save_CFLAGS=$CFLAGS
lt_save_GCC=$GCC
GCC=
CC=${RC-"windres"}
CFLAGS=
compiler=$CC
_LT_TAGVAR(compiler, $1)=$CC
_LT_CC_BASENAME([$compiler])
_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
if test -n "$compiler"; then
:
_LT_CONFIG($1)
fi
GCC=$lt_save_GCC
AC_LANG_RESTORE
CC=$lt_save_CC
CFLAGS=$lt_save_CFLAGS
])# _LT_LANG_RC_CONFIG
# LT_PROG_GCJ
# -----------
AC_DEFUN([LT_PROG_GCJ],
[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
[m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
[AC_CHECK_TOOL(GCJ, gcj,)
test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
AC_SUBST(GCJFLAGS)])])[]dnl
])
# Old name:
AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
# LT_PROG_GO
# ----------
AC_DEFUN([LT_PROG_GO],
[AC_CHECK_TOOL(GOC, gccgo,)
])
# LT_PROG_RC
# ----------
AC_DEFUN([LT_PROG_RC],
[AC_CHECK_TOOL(RC, windres,)
])
# Old name:
AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([LT_AC_PROG_RC], [])
# _LT_DECL_EGREP
# --------------
# If we don't have a new enough Autoconf to choose the best grep
# available, choose the one first in the user's PATH.
m4_defun([_LT_DECL_EGREP],
[AC_REQUIRE([AC_PROG_EGREP])dnl
AC_REQUIRE([AC_PROG_FGREP])dnl
test -z "$GREP" && GREP=grep
_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
_LT_DECL([], [EGREP], [1], [An ERE matcher])
_LT_DECL([], [FGREP], [1], [A literal string matcher])
dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
AC_SUBST([GREP])
])
# _LT_DECL_OBJDUMP
# --------------
# If we don't have a new enough Autoconf to choose the best objdump
# available, choose the one first in the user's PATH.
m4_defun([_LT_DECL_OBJDUMP],
[AC_CHECK_TOOL(OBJDUMP, objdump, false)
test -z "$OBJDUMP" && OBJDUMP=objdump
_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
AC_SUBST([OBJDUMP])
])
# _LT_DECL_DLLTOOL
# ----------------
# Ensure DLLTOOL variable is set.
m4_defun([_LT_DECL_DLLTOOL],
[AC_CHECK_TOOL(DLLTOOL, dlltool, false)
test -z "$DLLTOOL" && DLLTOOL=dlltool
_LT_DECL([], [DLLTOOL], [1], [DLL creation program])
AC_SUBST([DLLTOOL])
])
# _LT_DECL_SED
# ------------
# Check for a fully-functional sed program, that truncates
# as few characters as possible. Prefer GNU sed if found.
m4_defun([_LT_DECL_SED],
[AC_PROG_SED
test -z "$SED" && SED=sed
Xsed="$SED -e 1s/^X//"
_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
[Sed that helps us avoid accidentally triggering echo(1) options like -n])
])# _LT_DECL_SED
m4_ifndef([AC_PROG_SED], [
############################################################
# NOTE: This macro has been submitted for inclusion into #
# GNU Autoconf as AC_PROG_SED. When it is available in #
# a released version of Autoconf we should remove this #
# macro and use it instead. #
############################################################
m4_defun([AC_PROG_SED],
[AC_MSG_CHECKING([for a sed that does not truncate output])
AC_CACHE_VAL(lt_cv_path_SED,
[# Loop through the user's path and test for sed and gsed.
# Then use that list of sed's as ones to test for truncation.
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for lt_ac_prog in sed gsed; do
for ac_exec_ext in '' $ac_executable_extensions; do
if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
fi
done
done
done
IFS=$as_save_IFS
lt_ac_max=0
lt_ac_count=0
# Add /usr/xpg4/bin/sed as it is typically found on Solaris
# along with /bin/sed that truncates output.
for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
test ! -f $lt_ac_sed && continue
cat /dev/null > conftest.in
lt_ac_count=0
echo $ECHO_N "0123456789$ECHO_C" >conftest.in
# Check for GNU sed and select it if it is found.
if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
lt_cv_path_SED=$lt_ac_sed
break
fi
while true; do
cat conftest.in conftest.in >conftest.tmp
mv conftest.tmp conftest.in
cp conftest.in conftest.nl
echo >>conftest.nl
$lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
cmp -s conftest.out conftest.nl || break
# 10000 chars as input seems more than enough
test $lt_ac_count -gt 10 && break
lt_ac_count=`expr $lt_ac_count + 1`
if test $lt_ac_count -gt $lt_ac_max; then
lt_ac_max=$lt_ac_count
lt_cv_path_SED=$lt_ac_sed
fi
done
done
])
SED=$lt_cv_path_SED
AC_SUBST([SED])
AC_MSG_RESULT([$SED])
])#AC_PROG_SED
])#m4_ifndef
# Old name:
AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([LT_AC_PROG_SED], [])
# _LT_CHECK_SHELL_FEATURES
# ------------------------
# Find out whether the shell is Bourne or XSI compatible,
# or has some other useful features.
m4_defun([_LT_CHECK_SHELL_FEATURES],
[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
# Try some XSI features
xsi_shell=no
( _lt_dummy="a/b/c"
test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
= c,a/b,b/c, \
&& eval 'test $(( 1 + 1 )) -eq 2 \
&& test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
&& xsi_shell=yes
AC_MSG_RESULT([$xsi_shell])
_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
AC_MSG_CHECKING([whether the shell understands "+="])
lt_shell_append=no
( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
>/dev/null 2>&1 \
&& lt_shell_append=yes
AC_MSG_RESULT([$lt_shell_append])
_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
lt_unset=unset
else
lt_unset=false
fi
_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
# test EBCDIC or ASCII
case `echo X|tr X '\101'` in
A) # ASCII based system
# \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
lt_SP2NL='tr \040 \012'
lt_NL2SP='tr \015\012 \040\040'
;;
*) # EBCDIC based system
lt_SP2NL='tr \100 \n'
lt_NL2SP='tr \r\n \100\100'
;;
esac
_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
])# _LT_CHECK_SHELL_FEATURES
# _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY)
# ------------------------------------------------------
# In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and
# '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY.
m4_defun([_LT_PROG_FUNCTION_REPLACE],
[dnl {
sed -e '/^$1 ()$/,/^} # $1 /c\
$1 ()\
{\
m4_bpatsubsts([$2], [$], [\\], [^\([ ]\)], [\\\1])
} # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \
&& mv -f "$cfgfile.tmp" "$cfgfile" \
|| (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
test 0 -eq $? || _lt_function_replace_fail=:
])
# _LT_PROG_REPLACE_SHELLFNS
# -------------------------
# Replace existing portable implementations of several shell functions with
# equivalent extended shell implementations where those features are available..
m4_defun([_LT_PROG_REPLACE_SHELLFNS],
[if test x"$xsi_shell" = xyes; then
_LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl
case ${1} in
*/*) func_dirname_result="${1%/*}${2}" ;;
* ) func_dirname_result="${3}" ;;
esac])
_LT_PROG_FUNCTION_REPLACE([func_basename], [dnl
func_basename_result="${1##*/}"])
_LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl
case ${1} in
*/*) func_dirname_result="${1%/*}${2}" ;;
* ) func_dirname_result="${3}" ;;
esac
func_basename_result="${1##*/}"])
_LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl
# pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
# positional parameters, so assign one to ordinary parameter first.
func_stripname_result=${3}
func_stripname_result=${func_stripname_result#"${1}"}
func_stripname_result=${func_stripname_result%"${2}"}])
_LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl
func_split_long_opt_name=${1%%=*}
func_split_long_opt_arg=${1#*=}])
_LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl
func_split_short_opt_arg=${1#??}
func_split_short_opt_name=${1%"$func_split_short_opt_arg"}])
_LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl
case ${1} in
*.lo) func_lo2o_result=${1%.lo}.${objext} ;;
*) func_lo2o_result=${1} ;;
esac])
_LT_PROG_FUNCTION_REPLACE([func_xform], [ func_xform_result=${1%.*}.lo])
_LT_PROG_FUNCTION_REPLACE([func_arith], [ func_arith_result=$(( $[*] ))])
_LT_PROG_FUNCTION_REPLACE([func_len], [ func_len_result=${#1}])
fi
if test x"$lt_shell_append" = xyes; then
_LT_PROG_FUNCTION_REPLACE([func_append], [ eval "${1}+=\\${2}"])
_LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl
func_quote_for_eval "${2}"
dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \
eval "${1}+=\\\\ \\$func_quote_for_eval_result"])
# Save a `func_append' function call where possible by direct use of '+='
sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
&& mv -f "$cfgfile.tmp" "$cfgfile" \
|| (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
test 0 -eq $? || _lt_function_replace_fail=:
else
# Save a `func_append' function call even when '+=' is not available
sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
&& mv -f "$cfgfile.tmp" "$cfgfile" \
|| (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
test 0 -eq $? || _lt_function_replace_fail=:
fi
if test x"$_lt_function_replace_fail" = x":"; then
AC_MSG_WARN([Unable to substitute extended shell functions in $ofile])
fi
])
# _LT_PATH_CONVERSION_FUNCTIONS
# -----------------------------
# Determine which file name conversion functions should be used by
# func_to_host_file (and, implicitly, by func_to_host_path). These are needed
# for certain cross-compile configurations and native mingw.
m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
AC_REQUIRE([AC_CANONICAL_BUILD])dnl
AC_MSG_CHECKING([how to convert $build file names to $host format])
AC_CACHE_VAL(lt_cv_to_host_file_cmd,
[case $host in
*-*-mingw* )
case $build in
*-*-mingw* ) # actually msys
lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
;;
*-*-cygwin* )
lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
;;
* ) # otherwise, assume *nix
lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
;;
esac
;;
*-*-cygwin* )
case $build in
*-*-mingw* ) # actually msys
lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
;;
*-*-cygwin* )
lt_cv_to_host_file_cmd=func_convert_file_noop
;;
* ) # otherwise, assume *nix
lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
;;
esac
;;
* ) # unhandled hosts (and "normal" native builds)
lt_cv_to_host_file_cmd=func_convert_file_noop
;;
esac
])
to_host_file_cmd=$lt_cv_to_host_file_cmd
AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
[0], [convert $build file names to $host format])dnl
AC_MSG_CHECKING([how to convert $build file names to toolchain format])
AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
[#assume ordinary cross tools, or native build.
lt_cv_to_tool_file_cmd=func_convert_file_noop
case $host in
*-*-mingw* )
case $build in
*-*-mingw* ) # actually msys
lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
;;
esac
;;
esac
])
to_tool_file_cmd=$lt_cv_to_tool_file_cmd
AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
[0], [convert $build files to toolchain format])dnl
])# _LT_PATH_CONVERSION_FUNCTIONS
pspp-0.8.5/m4/ltoptions.m4 0000644 0001750 0001750 00000030073 12541162053 012246 0000000 0000000 # Helper functions for option handling. -*- Autoconf -*-
#
# Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# Written by Gary V. Vaughan, 2004
#
# This file is free software; the Free Software Foundation gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
# serial 7 ltoptions.m4
# This is to help aclocal find these macros, as it can't see m4_define.
AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
# ------------------------------------------
m4_define([_LT_MANGLE_OPTION],
[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
# ---------------------------------------
# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
# matching handler defined, dispatch to it. Other OPTION-NAMEs are
# saved as a flag.
m4_define([_LT_SET_OPTION],
[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
_LT_MANGLE_DEFUN([$1], [$2]),
[m4_warning([Unknown $1 option `$2'])])[]dnl
])
# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
# ------------------------------------------------------------
# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
m4_define([_LT_IF_OPTION],
[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
# -------------------------------------------------------
# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
# are set.
m4_define([_LT_UNLESS_OPTIONS],
[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
[m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
[m4_define([$0_found])])])[]dnl
m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
])[]dnl
])
# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
# ----------------------------------------
# OPTION-LIST is a space-separated list of Libtool options associated
# with MACRO-NAME. If any OPTION has a matching handler declared with
# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
# the unknown option and exit.
m4_defun([_LT_SET_OPTIONS],
[# Set options
m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
[_LT_SET_OPTION([$1], _LT_Option)])
m4_if([$1],[LT_INIT],[
dnl
dnl Simply set some default values (i.e off) if boolean options were not
dnl specified:
_LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
])
_LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
])
dnl
dnl If no reference was made to various pairs of opposing options, then
dnl we run the default mode handler for the pair. For example, if neither
dnl `shared' nor `disable-shared' was passed, we enable building of shared
dnl archives by default:
_LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
_LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
_LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
_LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
[_LT_ENABLE_FAST_INSTALL])
])
])# _LT_SET_OPTIONS
## --------------------------------- ##
## Macros to handle LT_INIT options. ##
## --------------------------------- ##
# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
# -----------------------------------------
m4_define([_LT_MANGLE_DEFUN],
[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
# -----------------------------------------------
m4_define([LT_OPTION_DEFINE],
[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
])# LT_OPTION_DEFINE
# dlopen
# ------
LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
])
AU_DEFUN([AC_LIBTOOL_DLOPEN],
[_LT_SET_OPTION([LT_INIT], [dlopen])
AC_DIAGNOSE([obsolete],
[$0: Remove this warning and the call to _LT_SET_OPTION when you
put the `dlopen' option into LT_INIT's first parameter.])
])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
# win32-dll
# ---------
# Declare package support for building win32 dll's.
LT_OPTION_DEFINE([LT_INIT], [win32-dll],
[enable_win32_dll=yes
case $host in
*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
AC_CHECK_TOOL(AS, as, false)
AC_CHECK_TOOL(DLLTOOL, dlltool, false)
AC_CHECK_TOOL(OBJDUMP, objdump, false)
;;
esac
test -z "$AS" && AS=as
_LT_DECL([], [AS], [1], [Assembler program])dnl
test -z "$DLLTOOL" && DLLTOOL=dlltool
_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
test -z "$OBJDUMP" && OBJDUMP=objdump
_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
])# win32-dll
AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
_LT_SET_OPTION([LT_INIT], [win32-dll])
AC_DIAGNOSE([obsolete],
[$0: Remove this warning and the call to _LT_SET_OPTION when you
put the `win32-dll' option into LT_INIT's first parameter.])
])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
# _LT_ENABLE_SHARED([DEFAULT])
# ----------------------------
# implement the --enable-shared flag, and supports the `shared' and
# `disable-shared' LT_INIT options.
# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
m4_define([_LT_ENABLE_SHARED],
[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
AC_ARG_ENABLE([shared],
[AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
[build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
[p=${PACKAGE-default}
case $enableval in
yes) enable_shared=yes ;;
no) enable_shared=no ;;
*)
enable_shared=no
# Look at the argument we got. We use all the common list separators.
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
for pkg in $enableval; do
IFS="$lt_save_ifs"
if test "X$pkg" = "X$p"; then
enable_shared=yes
fi
done
IFS="$lt_save_ifs"
;;
esac],
[enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
_LT_DECL([build_libtool_libs], [enable_shared], [0],
[Whether or not to build shared libraries])
])# _LT_ENABLE_SHARED
LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
# Old names:
AC_DEFUN([AC_ENABLE_SHARED],
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
])
AC_DEFUN([AC_DISABLE_SHARED],
[_LT_SET_OPTION([LT_INIT], [disable-shared])
])
AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AM_ENABLE_SHARED], [])
dnl AC_DEFUN([AM_DISABLE_SHARED], [])
# _LT_ENABLE_STATIC([DEFAULT])
# ----------------------------
# implement the --enable-static flag, and support the `static' and
# `disable-static' LT_INIT options.
# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
m4_define([_LT_ENABLE_STATIC],
[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
AC_ARG_ENABLE([static],
[AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
[build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
[p=${PACKAGE-default}
case $enableval in
yes) enable_static=yes ;;
no) enable_static=no ;;
*)
enable_static=no
# Look at the argument we got. We use all the common list separators.
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
for pkg in $enableval; do
IFS="$lt_save_ifs"
if test "X$pkg" = "X$p"; then
enable_static=yes
fi
done
IFS="$lt_save_ifs"
;;
esac],
[enable_static=]_LT_ENABLE_STATIC_DEFAULT)
_LT_DECL([build_old_libs], [enable_static], [0],
[Whether or not to build static libraries])
])# _LT_ENABLE_STATIC
LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
# Old names:
AC_DEFUN([AC_ENABLE_STATIC],
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
])
AC_DEFUN([AC_DISABLE_STATIC],
[_LT_SET_OPTION([LT_INIT], [disable-static])
])
AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AM_ENABLE_STATIC], [])
dnl AC_DEFUN([AM_DISABLE_STATIC], [])
# _LT_ENABLE_FAST_INSTALL([DEFAULT])
# ----------------------------------
# implement the --enable-fast-install flag, and support the `fast-install'
# and `disable-fast-install' LT_INIT options.
# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
m4_define([_LT_ENABLE_FAST_INSTALL],
[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
AC_ARG_ENABLE([fast-install],
[AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
[optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
[p=${PACKAGE-default}
case $enableval in
yes) enable_fast_install=yes ;;
no) enable_fast_install=no ;;
*)
enable_fast_install=no
# Look at the argument we got. We use all the common list separators.
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
for pkg in $enableval; do
IFS="$lt_save_ifs"
if test "X$pkg" = "X$p"; then
enable_fast_install=yes
fi
done
IFS="$lt_save_ifs"
;;
esac],
[enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
_LT_DECL([fast_install], [enable_fast_install], [0],
[Whether or not to optimize for fast installation])dnl
])# _LT_ENABLE_FAST_INSTALL
LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
# Old names:
AU_DEFUN([AC_ENABLE_FAST_INSTALL],
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
AC_DIAGNOSE([obsolete],
[$0: Remove this warning and the call to _LT_SET_OPTION when you put
the `fast-install' option into LT_INIT's first parameter.])
])
AU_DEFUN([AC_DISABLE_FAST_INSTALL],
[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
AC_DIAGNOSE([obsolete],
[$0: Remove this warning and the call to _LT_SET_OPTION when you put
the `disable-fast-install' option into LT_INIT's first parameter.])
])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
# _LT_WITH_PIC([MODE])
# --------------------
# implement the --with-pic flag, and support the `pic-only' and `no-pic'
# LT_INIT options.
# MODE is either `yes' or `no'. If omitted, it defaults to `both'.
m4_define([_LT_WITH_PIC],
[AC_ARG_WITH([pic],
[AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
[lt_p=${PACKAGE-default}
case $withval in
yes|no) pic_mode=$withval ;;
*)
pic_mode=default
# Look at the argument we got. We use all the common list separators.
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
for lt_pkg in $withval; do
IFS="$lt_save_ifs"
if test "X$lt_pkg" = "X$lt_p"; then
pic_mode=yes
fi
done
IFS="$lt_save_ifs"
;;
esac],
[pic_mode=default])
test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
])# _LT_WITH_PIC
LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
# Old name:
AU_DEFUN([AC_LIBTOOL_PICMODE],
[_LT_SET_OPTION([LT_INIT], [pic-only])
AC_DIAGNOSE([obsolete],
[$0: Remove this warning and the call to _LT_SET_OPTION when you
put the `pic-only' option into LT_INIT's first parameter.])
])
dnl aclocal-1.4 backwards compatibility:
dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
## ----------------- ##
## LTDL_INIT Options ##
## ----------------- ##
m4_define([_LTDL_MODE], [])
LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
[m4_define([_LTDL_MODE], [nonrecursive])])
LT_OPTION_DEFINE([LTDL_INIT], [recursive],
[m4_define([_LTDL_MODE], [recursive])])
LT_OPTION_DEFINE([LTDL_INIT], [subproject],
[m4_define([_LTDL_MODE], [subproject])])
m4_define([_LTDL_TYPE], [])
LT_OPTION_DEFINE([LTDL_INIT], [installable],
[m4_define([_LTDL_TYPE], [installable])])
LT_OPTION_DEFINE([LTDL_INIT], [convenience],
[m4_define([_LTDL_TYPE], [convenience])])
pspp-0.8.5/m4/ltsugar.m4 0000644 0001750 0001750 00000010424 12541162053 011672 0000000 0000000 # ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
#
# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
# Written by Gary V. Vaughan, 2004
#
# This file is free software; the Free Software Foundation gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
# serial 6 ltsugar.m4
# This is to help aclocal find these macros, as it can't see m4_define.
AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
# lt_join(SEP, ARG1, [ARG2...])
# -----------------------------
# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
# associated separator.
# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
# versions in m4sugar had bugs.
m4_define([lt_join],
[m4_if([$#], [1], [],
[$#], [2], [[$2]],
[m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
m4_define([_lt_join],
[m4_if([$#$2], [2], [],
[m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
# lt_car(LIST)
# lt_cdr(LIST)
# ------------
# Manipulate m4 lists.
# These macros are necessary as long as will still need to support
# Autoconf-2.59 which quotes differently.
m4_define([lt_car], [[$1]])
m4_define([lt_cdr],
[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
[$#], 1, [],
[m4_dquote(m4_shift($@))])])
m4_define([lt_unquote], $1)
# lt_append(MACRO-NAME, STRING, [SEPARATOR])
# ------------------------------------------
# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
# Note that neither SEPARATOR nor STRING are expanded; they are appended
# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
# No SEPARATOR is output if MACRO-NAME was previously undefined (different
# than defined and empty).
#
# This macro is needed until we can rely on Autoconf 2.62, since earlier
# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
m4_define([lt_append],
[m4_define([$1],
m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
# ----------------------------------------------------------
# Produce a SEP delimited list of all paired combinations of elements of
# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
# has the form PREFIXmINFIXSUFFIXn.
# Needed until we can rely on m4_combine added in Autoconf 2.62.
m4_define([lt_combine],
[m4_if(m4_eval([$# > 3]), [1],
[m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
[[m4_foreach([_Lt_prefix], [$2],
[m4_foreach([_Lt_suffix],
]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
[_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
# -----------------------------------------------------------------------
# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
m4_define([lt_if_append_uniq],
[m4_ifdef([$1],
[m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
[lt_append([$1], [$2], [$3])$4],
[$5])],
[lt_append([$1], [$2], [$3])$4])])
# lt_dict_add(DICT, KEY, VALUE)
# -----------------------------
m4_define([lt_dict_add],
[m4_define([$1($2)], [$3])])
# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
# --------------------------------------------
m4_define([lt_dict_add_subkey],
[m4_define([$1($2:$3)], [$4])])
# lt_dict_fetch(DICT, KEY, [SUBKEY])
# ----------------------------------
m4_define([lt_dict_fetch],
[m4_ifval([$3],
m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
# -----------------------------------------------------------------
m4_define([lt_if_dict_fetch],
[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
[$5],
[$6])])
# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
# --------------------------------------------------------------
m4_define([lt_dict_filter],
[m4_if([$5], [], [],
[lt_join(m4_quote(m4_default([$4], [[, ]])),
lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
[lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
])
pspp-0.8.5/m4/lt~obsolete.m4 0000644 0001750 0001750 00000013756 12541162053 012576 0000000 0000000 # lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
#
# Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
# Written by Scott James Remnant, 2004.
#
# This file is free software; the Free Software Foundation gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
# serial 5 lt~obsolete.m4
# These exist entirely to fool aclocal when bootstrapping libtool.
#
# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
# which have later been changed to m4_define as they aren't part of the
# exported API, or moved to Autoconf or Automake where they belong.
#
# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
# using a macro with the same name in our local m4/libtool.m4 it'll
# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
# and doesn't know about Autoconf macros at all.)
#
# So we provide this file, which has a silly filename so it's always
# included after everything else. This provides aclocal with the
# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
# because those macros already exist, or will be overwritten later.
# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
#
# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
# Yes, that means every name once taken will need to remain here until
# we give up compatibility with versions before 1.7, at which point
# we need to keep only those names which we still refer to.
# This is to help aclocal find these macros, as it can't see m4_define.
AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
pspp-0.8.5/m4/ltversion.m4 0000644 0001750 0001750 00000001262 12541162053 012236 0000000 0000000 # ltversion.m4 -- version numbers -*- Autoconf -*-
#
# Copyright (C) 2004 Free Software Foundation, Inc.
# Written by Scott James Remnant, 2004
#
# This file is free software; the Free Software Foundation gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
# @configure_input@
# serial 3337 ltversion.m4
# This file is part of GNU Libtool
m4_define([LT_PACKAGE_VERSION], [2.4.2])
m4_define([LT_PACKAGE_REVISION], [1.3337])
AC_DEFUN([LTVERSION_VERSION],
[macro_version='2.4.2'
macro_revision='1.3337'
_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
_LT_DECL(, macro_revision, 0)
])
pspp-0.8.5/TODO 0000644 0001750 0001750 00000003465 12135546033 010131 0000000 0000000 warning: `bank.sav' near offset 0x500: Integer format indicated by system
file (1) differs from expected (2).
http://www.uccs.edu/~faculty/lbecker/SPSS/data/bank.sav
$FL2@(#) SPSS DATA FILE SPSS for Unix Release 5.0 (SCO UNIX
To fix before merging
---------------------
Moving the focus to a different top-level window, then back to the
datasheet or variable sheet window, causes editing of the current cell
to stop. One must click again to start editing again.
Other bugs
----------
If you resize the columns on the variable view, for example the Type
column, such that it is narrower than default, the button gets cut,
before the label. This causes the startup condition to look odd in
locales with longer than normal labels. For example a German locale,
which says "Numerisch" and then there is half a button to the right.
Switching between Data and Variable view causes the Toolbar to be
redrawn. I guess that's ok. But it redraws in a funny way. It seems
to redraw, then insert the buttons one by one, redrawing after each.
Looks distracting. (Reported by John Darrington.)
The case buttons at the head of each row in the data sheet should not
scroll with the rest of the row. (Reported by John Darrington.)
The space to the right of the "new variable" column in the data sheet
doesn't look like the SPSS sheet or like a normal spreadsheet.
(Reported by John Darrington and Michel Boaventura.)
I think a solid line or some kind of separator beneath the data
sheet's entry/label hbox would make the appearance nicer. (Reported
by John Darrington and Michel Boaventura.)
If I click on Insert Case in the data sheet, the new case assumes the
value of the cell which is currently selected. It should have all
values empty. This happens only on Windows. (Reported by John
Darrington.)
Large copies hang in the data sheet.
pspp-0.8.5/glade/ 0000755 0001750 0001750 00000000000 12541312456 010566 5 0000000 0000000 pspp-0.8.5/glade/dictview.c 0000644 0001750 0001750 00000003160 12470242642 012470 0000000 0000000 #include
#include
#include
#include "psppire-dictview.h"
#include
GType
psppire_dict_get_type ()
{
return 0;
}
void
glade_psppire_dictview_post_create (GladeWidgetAdaptor *adaptor,
GObject *object,
GladeCreateReason reason)
{
GladeWidget *widget ;
PsppireDictView *dictview = PSPPIRE_DICT_VIEW (object);
g_return_if_fail (PSPPIRE_IS_DICT_VIEW (dictview));
widget = glade_widget_get_from_gobject (GTK_WIDGET (dictview));
if (!widget)
return;
if (reason == GLADE_CREATE_USER)
{
/* HIG complient border-width defaults on dictviews */
glade_widget_property_set (widget, "border-width", 5);
}
}
GtkWidget *
glade_psppire_dictview_get_internal_child (GladeWidgetAdaptor *adaptor,
PsppireDictView *dictview,
const gchar *name)
{
#if DEBUGGING
g_print ("%s\n", __FUNCTION__);
#endif
return GTK_WIDGET (dictview);
}
void
glade_psppire_dictview_set_property (GladeWidgetAdaptor *adaptor,
GObject *object,
const gchar *id,
const GValue *value)
{
#if DEBUGGING
g_print ("%s(%p) Type=\"%s\" Id=\"%s\"\n", __FUNCTION__, object,
G_OBJECT_TYPE_NAME( object ),
id);
#endif
GWA_GET_CLASS (GTK_TYPE_WINDOW)->set_property (adaptor, object,
id, value);
}
GList *
glade_psppire_dictview_get_children (GladeWidgetAdaptor *adaptor,
PsppireDictView *dv)
{
GList *list = NULL;
g_return_val_if_fail (PSPPIRE_IS_DICT_VIEW (dv), NULL);
list = glade_util_container_get_all_children (GTK_CONTAINER (dv));
return list;
}
pspp-0.8.5/glade/acr.c 0000644 0001750 0001750 00000002742 12470413451 011422 0000000 0000000 #include
#include
#include
#include "psppire-acr.h"
#include
void
glade_psppire_acr_post_create (GladeWidgetAdaptor *adaptor,
GObject *object,
GladeCreateReason reason)
{
GladeWidget *widget ;
PsppireAcr *acr = PSPPIRE_ACR (object);
g_return_if_fail (PSPPIRE_IS_ACR (acr));
widget = glade_widget_get_from_gobject (GTK_WIDGET (acr));
if (!widget)
return;
if (reason == GLADE_CREATE_USER)
{
/* HIG complient border-width defaults on acrs */
glade_widget_property_set (widget, "border-width", 5);
}
}
GtkWidget *
glade_psppire_acr_get_internal_child (GladeWidgetAdaptor *adaptor,
PsppireAcr *acr,
const gchar *name)
{
#if DEBUGGING
g_print ("%s\n", __FUNCTION__);
#endif
return GTK_WIDGET (acr);
}
void
glade_psppire_acr_set_property (GladeWidgetAdaptor *adaptor,
GObject *object,
const gchar *id,
const GValue *value)
{
#if DEBUGGING
g_print ("%s(%p) Type=\"%s\" Id=\"%s\"\n", __FUNCTION__, object,
G_OBJECT_TYPE_NAME( object ),
id);
#endif
GWA_GET_CLASS (GTK_TYPE_WINDOW)->set_property (adaptor, object,
id, value);
}
GList *
glade_psppire_acr_get_children (GladeWidgetAdaptor *adaptor,
PsppireAcr *acr)
{
GList *list = NULL;
g_return_val_if_fail (PSPPIRE_IS_ACR (acr), NULL);
list = glade_util_container_get_all_children (GTK_CONTAINER (acr));
return list;
}
pspp-0.8.5/glade/selector.c 0000644 0001750 0001750 00000003106 12470413451 012470 0000000 0000000 #include
#include
#include
#include "psppire-selector.h"
#include
void
glade_psppire_selector_post_create (GladeWidgetAdaptor *adaptor,
GObject *object,
GladeCreateReason reason)
{
GladeWidget *widget ;
PsppireSelector *selector = PSPPIRE_SELECTOR (object);
g_return_if_fail (PSPPIRE_IS_SELECTOR (selector));
widget = glade_widget_get_from_gobject (GTK_WIDGET (selector));
if (!widget)
return;
if (reason == GLADE_CREATE_USER)
{
/* HIG complient border-width defaults on selectors */
glade_widget_property_set (widget, "border-width", 5);
}
}
GtkWidget *
glade_psppire_selector_get_internal_child (GladeWidgetAdaptor *adaptor,
PsppireSelector *selector,
const gchar *name)
{
#if DEBUGGING
g_print ("%s\n", __FUNCTION__);
#endif
return GTK_WIDGET (selector);
}
void
glade_psppire_selector_set_property (GladeWidgetAdaptor *adaptor,
GObject *object,
const gchar *id,
const GValue *value)
{
#if DEBUGGING
g_print ("%s(%p) Type=\"%s\" Id=\"%s\"\n", __FUNCTION__, object,
G_OBJECT_TYPE_NAME( object ),
id);
#endif
GWA_GET_CLASS (GTK_TYPE_WINDOW)->set_property (adaptor, object,
id, value);
}
GList *
glade_psppire_selector_get_children (GladeWidgetAdaptor *adaptor,
PsppireSelector *selector)
{
GList *list = NULL;
g_return_val_if_fail (PSPPIRE_IS_SELECTOR (selector), NULL);
list = glade_util_container_get_all_children (GTK_CONTAINER (selector));
return list;
}
pspp-0.8.5/glade/bbox.c 0000644 0001750 0001750 00000003104 12470413451 011600 0000000 0000000 #include
#include
#include
#include "psppire-buttonbox.h"
void
glade_psppire_button_box_post_create (GladeWidgetAdaptor *adaptor,
GObject *object,
GladeCreateReason reason)
{
GladeWidget *box_widget;
PsppireButtonBox *bbox = PSPPIRE_BUTTONBOX (object);
g_return_if_fail (PSPPIRE_IS_BUTTONBOX (bbox));
box_widget = glade_widget_get_from_gobject (GTK_WIDGET (bbox));
if (!box_widget)
return;
if (reason == GLADE_CREATE_USER)
{
/* HIG complient border-width defaults on dialogs */
glade_widget_property_set (box_widget, "border-width", 5);
}
}
GtkWidget *
glade_psppire_button_box_get_internal_child (GladeWidgetAdaptor *adaptor,
PsppireButtonBox *bbox,
const gchar *name)
{
#if DEBUGGING
g_print ("%s\n", __FUNCTION__);
#endif
return GTK_WIDGET (bbox);
}
void
glade_psppire_button_box_set_property (GladeWidgetAdaptor *adaptor,
GObject *object,
const gchar *id,
const GValue *value)
{
#if DEBUGGING
g_print ("%s(%p) Type=\"%s\" Id=\"%s\"\n", __FUNCTION__, object,
G_OBJECT_TYPE_NAME( object ),
id);
#endif
GWA_GET_CLASS (GTK_TYPE_WINDOW)->set_property (adaptor, object,
id, value);
}
GList *
glade_psppire_button_box_get_children (GladeWidgetAdaptor *adaptor,
PsppireButtonBox *bbox)
{
GList *list = NULL;
g_return_val_if_fail (PSPPIRE_IS_BUTTONBOX (bbox), NULL);
list = glade_util_container_get_all_children (GTK_CONTAINER (bbox));
return list;
}
pspp-0.8.5/glade/dialog.c 0000644 0001750 0001750 00000004506 12470413451 012114 0000000 0000000 #include
#include
#include
#include "psppire-dialog.h"
#include
#include
#include
void
glade_psppire_dialog_post_create (GladeWidgetAdaptor *adaptor,
GObject *object,
GladeCreateReason reason)
{
GladeWidget *widget ;
GladeWidget *box_widget;
PsppireDialog *dialog = PSPPIRE_DIALOG (object);
g_return_if_fail (PSPPIRE_IS_DIALOG (dialog));
widget = glade_widget_get_from_gobject (GTK_WIDGET (dialog));
if (!widget)
return;
if (reason == GLADE_CREATE_USER)
{
/* HIG compliant border-width defaults on dialogs */
glade_widget_property_set (widget, "border-width", 5);
}
box_widget = glade_widget_adaptor_create_internal
(widget, G_OBJECT(dialog->box),
"hbox", "dialog", FALSE, reason);
/* These properties are controlled by the GtkDialog style properties:
* "content-area-border", "button-spacing" and "action-area-border",
* so we must disable their use.
*/
glade_widget_remove_property (box_widget, "border-width");
/* Only set these on the original create. */
if (reason == GLADE_CREATE_USER)
{
/* HIG compliant spacing defaults on dialogs */
glade_widget_property_set (box_widget, "spacing", 2);
glade_widget_property_set (box_widget, "size", 2);
}
}
GtkWidget *
glade_psppire_dialog_get_internal_child (GladeWidgetAdaptor *adaptor,
PsppireDialog *dialog,
const gchar *name)
{
#if DEBUGGING
g_print ("%s\n", __FUNCTION__);
#endif
g_assert (0 == strcmp (name, "hbox"));
return dialog->box;
}
void
glade_psppire_dialog_set_property (GladeWidgetAdaptor *adaptor,
GObject *object,
const gchar *id,
const GValue *value)
{
#if DEBUGGING
g_print ("%s(%p) Type=\"%s\" Id=\"%s\"\n", __FUNCTION__, object,
G_OBJECT_TYPE_NAME( object ),
id);
#endif
assert ( GWA_GET_CLASS (GTK_TYPE_WINDOW)->set_property );
GWA_GET_CLASS (GTK_TYPE_WINDOW)->set_property (adaptor, object,
id, value);
}
GList *
glade_psppire_dialog_get_children (GladeWidgetAdaptor *adaptor,
PsppireDialog *dialog)
{
GList *list = NULL;
g_return_val_if_fail (PSPPIRE_IS_DIALOG (dialog), NULL);
list = glade_util_container_get_all_children (GTK_CONTAINER (dialog));
return list;
}
pspp-0.8.5/glade/psppire.xml 0000644 0001750 0001750 00000022567 12470242642 012726 0000000 0000000
glade_psppire_dialog_post_create
glade_psppire_dialog_get_internal_child
glade_psppire_dialog_get_children
glade_psppire_button_box_post_create
glade_psppire_button_box_get_children
glade_psppire_button_box_get_internal_child
glade_psppire_button_box_post_create
glade_psppire_button_box_get_children
glade_psppire_button_box_get_internal_child
glade_psppire_selector_post_create
glade_psppire_selector_get_children
glade_psppire_selector_get_internal_child
glade_psppire_acr_post_create
glade_psppire_acr_get_children
glade_psppire_acr_get_internal_child
glade_psppire_dictview_post_create
glade_psppire_dictview_get_children
glade_psppire_dictview_get_internal_child
glade_psppire_var_view_post_create
glade_psppire_var_view_get_children
glade_psppire_var_view_get_internal_child
pspp-0.8.5/glade/var-view.c 0000644 0001750 0001750 00000003327 12470242642 012417 0000000 0000000 #include
#include
#include
#include "psppire-var-view.h"
#include
/* Dummy function to keep the linker happy.
Glade never actually needs to use this return value.
*/
GType
psppire_var_ptr_get_type (void)
{
return 0;
}
void
glade_psppire_var_view_post_create (GladeWidgetAdaptor *adaptor,
GObject *object,
GladeCreateReason reason)
{
GladeWidget *widget ;
PsppireVarView *var_view = PSPPIRE_VAR_VIEW (object);
g_return_if_fail (PSPPIRE_IS_VAR_VIEW (var_view));
widget = glade_widget_get_from_gobject (GTK_WIDGET (var_view));
if (!widget)
return;
if (reason == GLADE_CREATE_USER)
{
/* HIG complient border-width defaults on var_views */
glade_widget_property_set (widget, "border-width", 5);
}
}
GtkWidget *
glade_psppire_var_view_get_internal_child (GladeWidgetAdaptor *adaptor,
PsppireVarView *var_view,
const gchar *name)
{
#if DEBUGGING
g_print ("%s\n", __FUNCTION__);
#endif
return GTK_WIDGET (var_view);
}
void
glade_psppire_var_view_set_property (GladeWidgetAdaptor *adaptor,
GObject *object,
const gchar *id,
const GValue *value)
{
#if DEBUGGING
g_print ("%s(%p) Type=\"%s\" Id=\"%s\"\n", __FUNCTION__, object,
G_OBJECT_TYPE_NAME( object ),
id);
#endif
GWA_GET_CLASS (GTK_TYPE_WINDOW)->set_property (adaptor, object,
id, value);
}
GList *
glade_psppire_var_view_get_children (GladeWidgetAdaptor *adaptor,
PsppireVarView *dv)
{
GList *list = NULL;
g_return_val_if_fail (PSPPIRE_IS_VAR_VIEW (dv), NULL);
list = glade_util_container_get_all_children (GTK_CONTAINER (dv));
return list;
}
pspp-0.8.5/glade/automake.mk 0000644 0001750 0001750 00000003234 12523704223 012644 0000000 0000000 ## Process this file with automake to produce Makefile.in -*- makefile -*-
module_LTLIBRARIES = libglade-psppire.la
moduledir = `pkg-config --variable=moduledir gladeui-1.0`
catalogdir = `pkg-config --variable=catalogdir gladeui-1.0`
pixmapdir = `pkg-config --variable=pixmapdir gladeui-1.0`
small_pixmapdir = $(pixmapdir)/16x16
large_pixmapdir = $(pixmapdir)/22x22
libglade_psppire_la_SOURCES = \
glade/dialog.c \
glade/bbox.c \
glade/selector.c \
glade/acr.c \
glade/dictview.c \
glade/var-view.c \
src/ui/gui/helper.c \
src/ui/gui/psppire-conf.c \
src/ui/gui/psppire-acr.c \
src/ui/gui/psppire-buttonbox.c \
src/ui/gui/psppire-hbuttonbox.c \
src/ui/gui/psppire-vbuttonbox.c \
src/ui/gui/psppire-dialog.c \
src/ui/gui/psppire-keypad.c \
src/ui/gui/psppire-dictview.c \
src/ui/gui/psppire-selector.c \
src/ui/gui/psppire-select-dest.c \
src/ui/gui/psppire-var-view.c \
src/ui/gui/psppire-window-base.c
dist_catalog_DATA = \
glade/psppire.xml
dist_small_pixmap_DATA = \
glade/icons/16x16/psppire-acr.png \
glade/icons/16x16/psppire-hbuttonbox.png \
glade/icons/16x16/psppire-vbuttonbox.png \
glade/icons/16x16/psppire-dialog.png \
glade/icons/16x16/psppire-keypad.png \
glade/icons/16x16/psppire-selector.png
dist_large_pixmap_DATA = \
glade/icons/22x22/psppire-acr.png \
glade/icons/22x22/psppire-hbuttonbox.png \
glade/icons/22x22/psppire-vbuttonbox.png \
glade/icons/22x22/psppire-dialog.png \
glade/icons/22x22/psppire-keypad.png \
glade/icons/22x22/psppire-selector.png
libglade_psppire_la_CFLAGS = $(GLADE_UI_CFLAGS) $(GLADE_CFLAGS) \
$(GTKSOURCEVIEW_CFLAGS) -I $(top_srcdir)/src/ui/gui -DDEBUGGING
libglade_psppire_la_LIBADD = gl/libgl.la
pspp-0.8.5/glade/icons/ 0000755 0001750 0001750 00000000000 12541312455 011700 5 0000000 0000000 pspp-0.8.5/glade/icons/22x22/ 0000755 0001750 0001750 00000000000 12541312455 012457 5 0000000 0000000 pspp-0.8.5/glade/icons/22x22/psppire-acr.png 0000644 0001750 0001750 00000000373 12470242642 015336 0000000 0000000 PNG
IHDR Ĵl; bKGD pHYs tIME
U IDAT8UA
c'/7. !$E4a݁5$g +n^Fp5A "c
sX7K+ x &6 c*hfw$XӊQhZ]6ڭڱTf1A~]z IENDB` pspp-0.8.5/glade/icons/22x22/psppire-selector.png 0000644 0001750 0001750 00000000206 12470242642 016404 0000000 0000000 PNG
IHDR Ĵl; MIDAT8풹
0CĎ)I&t\G5n ( 'gq ,V:>g*ZGߍ VV IENDB` pspp-0.8.5/glade/icons/22x22/psppire-vbuttonbox.png 0000644 0001750 0001750 00000000206 12470242642 016776 0000000 0000000 PNG
IHDR Ĵl; MIDAT8cd f \r% < JCQc
[&D2r3!Ix3ymUU0>i$o). ʲJ5&f?!^snx-ho1I|)shHJ 9 |YhllZ/,˦ k-1u]m!dm;;oNY^P̑DJ J94M71jR{t5mx'Sډ@ IENDB` pspp-0.8.5/glade/icons/16x16/ 0000755 0001750 0001750 00000000000 12541312455 012465 5 0000000 0000000 pspp-0.8.5/glade/icons/16x16/psppire-acr.png 0000644 0001750 0001750 00000000636 12470242642 015346 0000000 0000000 PNG
IHDR a bKGD pHYs tIME
;yy +IDAT8˥S@=n!"ŀ aM VOmFa@b1E U`
)ǜs5$m;\.?ĶpAJ9 }Bd9NSH @JfJJ)e8mIRJ8ZV 4UU
i
˲= ,yjUJM;c R?u Z,{i_q"as&n9u2(2׳C4UCJ zy(b3Oq
{CP IENDB` pspp-0.8.5/glade/icons/16x16/psppire-selector.png 0000644 0001750 0001750 00000000174 12470242642 016416 0000000 0000000 PNG
IHDR a CIDAT8c` <<xxb3b3 rJF d^' (h@`!V'./4 3HN: IENDB` pspp-0.8.5/glade/icons/16x16/psppire-vbuttonbox.png 0000644 0001750 0001750 00000000174 12470242642 017010 0000000 0000000 PNG
IHDR a CIDAT8cdfB+W@
qcbK{aXA :c]m IENDB` pspp-0.8.5/glade/icons/16x16/psppire-keypad.png 0000644 0001750 0001750 00000000160 12470242642 016046 0000000 0000000 PNG
IHDR a 7IDAT8cOc``@HgHcb)2a4GZHQv ej1K- IENDB` pspp-0.8.5/glade/icons/16x16/psppire-hbuttonbox.png 0000644 0001750 0001750 00000000200 12470242642 016760 0000000 0000000 PNG
IHDR a GIDAT8ϱ
0 {2l)CC6"M
|z;̼F;jm6P"}4"7J(" IENDB` pspp-0.8.5/glade/icons/16x16/psppire-dialog.png 0000644 0001750 0001750 00000000324 12470242642 016032 0000000 0000000 PNG
IHDR a IDAT8ݓ
͙/zEӹò9RA.w ˑ|ycԵHjd J)) q )xe9<2Ժ")I23H̾Bn=c
X
[4M IENDB` pspp-0.8.5/tests/ 0000755 0001750 0001750 00000000000 12541312456 010654 5 0000000 0000000 pspp-0.8.5/tests/valgrind-wrapper.in 0000755 0001750 0001750 00000001374 12470242646 014424 0000000 0000000 #! /bin/sh
program=`basename "$0"`
new_PATH=
save_IFS=$IFS
IFS=:
found=no
for dir in $PATH; do
IFS=$save_IFS
if test "X$dir" = X; then
dir=.
fi
if test -x "$dir/$program"; then
if test $found = no; then
found=yes
continue
else
if test "X$next_program" = X; then
next_program=$dir/$program
fi
fi
fi
done
IFS=$save_IFS
if test $found = no; then
echo "$0: $program not found in PATH ($PATH)" >&2
exit 1
elif test "X$next_program" = X; then
echo "$0: $program found only once in PATH ($PATH)" >&2
exit 1
fi
: ${VALGRIND:=libtool --mode=execute valgrind --log-file=valgrind.%p --leak-check=full --num-callers=20}
exec $VALGRIND $next_program "$@"
echo "$0: $VALGRIND $wrap_program $* failed" >&2
exit 1
pspp-0.8.5/tests/math/ 0000755 0001750 0001750 00000000000 12541312456 011605 5 0000000 0000000 pspp-0.8.5/tests/math/chart-get-scale-test.c 0000644 0001750 0001750 00000004537 12537363615 015632 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2015 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
#include
#include
#include
#include
#include
#include "libpspp/compiler.h"
#include "math/chart-geometry.h"
#include
#include
#include
#if 0
static void
dump_scale (const double low, const double interval, int n_ticks)
{
int i;
double tick = low;
for (i = 0; i <= n_ticks; ++i)
{
printf ("Tick %d: %g\n", i, tick);
tick += interval;
}
}
#endif
static void
test_range (double low, double high)
{
int n_ticks = 0;
double interval;
double lower;
chart_get_scale (high, low,
&lower, &interval, &n_ticks);
if ((high - low) < 10 * DBL_MIN){
assert (n_ticks == 0);
assert (lower == low);
assert (interval <= 10 * DBL_MIN);
}
else
assert (n_ticks > 4);
assert (n_ticks <= 10);
#if 0
printf("%s: high: %lg, low %lg, interval: %lg, nticks: %d\n",
__FUNCTION__, high, low, interval, n_ticks);
dump_scale (lower, interval, n_ticks);
#endif
if ((high - low) > 10 * DBL_MIN) {
assert (lower <= low);
assert (lower + interval > low);
assert (lower + n_ticks * interval < high);
assert (lower + (n_ticks + 1) * interval >= high);
}
}
int
main (int argc UNUSED, char **argv UNUSED)
{
test_range (0, 0);
test_range (5, 5);
test_range (-5, -5);
test_range (0, 7);
test_range (0.2, 11);
test_range (-0.2, 11);
test_range (-10, 0.2);
test_range (-10, -0.2);
test_range (-10000, 10003);
test_range (50042,50053);
test_range (-50010, -49999);
test_range (0.000100002, 0.000100010);
test_range (102, 50030);
test_range (0.00102, 0.0050030);
return 0;
}
pspp-0.8.5/tests/math/chart-get-ticks-format-test.c 0000644 0001750 0001750 00000005405 12537363615 017141 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2015 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
#include
#include
#include
#include "math/chart-geometry.h"
#include "libpspp/compiler.h"
struct range {
double lower;
double interval;
int nticks;
};
struct range tv[] = {
{ 1000.0, 10.0, 10},
{ 10000.0, 10.0, 10},
{ 100000.0, 10.0, 10},
{ 1000000.0, 10.0, 10},
{ 10000000.0, 10.0, 10},
{ 100000000.0, 10.0, 10},
{ 0.1, 0.01, 10},
{ 0.01, 0.001, 10},
{ 0.001, 0.0001, 10},
{ 0.0001, 0.00001, 10},
{ 0.00001, 0.0000001, 10},
{ 0.0000001, 0.00000001, 10},
{ -5.0, 1.0, 10},
{ -5.0, 0.5, 10},
{ -5.0, 0.2, 9},
{ -5.0, 2.0, 10},
{ -0.5, 0.1, 9},
{ 0.975E9, 0.005E9, 9},
{ 0.970E9, 0.01E9, 9},
{ -4E7, 1E7, 9},
{ -3E7, 0.5E7, 9},
{ 1.001E-95, 0.0002E-95, 10},
{ 1.001E98, 0.0002E98, 10},
{ 5984, 0.00001, 10},
{ 3E33, 1E-22, 10},
{ 3E33, 1000, 10},
{ 0.1, 2E-42, 10},
{ 0.0, 0.0, -1}
};
int
main (int argc UNUSED, char **argv UNUSED)
{
char *fs;
double scale;
int i = 0;
double lower, interval;
int nticks;
for(i=0;tv[i].nticks > 0;i++)
{
lower = tv[i].lower;
interval = tv[i].interval;
nticks = tv[i].nticks;
fs = chart_get_ticks_format (lower, interval, nticks, &scale);
printf("lower: %lg, interval: %lg, nticks: %d, fs: %s, scale: %lg, ex: ",
lower, interval, nticks, fs, scale);
printf(fs,(lower + 3 * interval)*scale);
printf(", ex 2: ");
printf(fs,(lower + 4 * interval)*scale);
printf("\n");
free(fs);
}
return 0;
}
pspp-0.8.5/tests/math/chart-geometry.at 0000644 0001750 0001750 00000006210 12541161621 015000 0000000 0000000 AT_BANNER([Chart Geometry])
AT_SETUP([Chart Scale])
AT_CHECK([../../math/chart-get-scale-test], [0], [ignore])
AT_CLEANUP
AT_SETUP([Chart Ticks Format])
AT_CHECK([../../math/chart-get-ticks-format-test], [0], [dnl
lower: 1000, interval: 10, nticks: 10, fs: %.0lf, scale: 1, ex: 1030, ex 2: 1040
lower: 10000, interval: 10, nticks: 10, fs: %.0lf, scale: 1, ex: 10030, ex 2: 10040
lower: 100000, interval: 10, nticks: 10, fs: %.0lf, scale: 1, ex: 100030, ex 2: 100040
lower: 1e+06, interval: 10, nticks: 10, fs: %.0lf, scale: 1, ex: 1000030, ex 2: 1000040
lower: 1e+07, interval: 10, nticks: 10, fs: %.0lf, scale: 1, ex: 10000030, ex 2: 10000040
lower: 1e+08, interval: 10, nticks: 10, fs: %.0lf, scale: 1, ex: 100000030, ex 2: 100000040
lower: 0.1, interval: 0.01, nticks: 10, fs: %.2lf, scale: 1, ex: 0.13, ex 2: 0.14
lower: 0.01, interval: 0.001, nticks: 10, fs: %.3lf, scale: 1, ex: 0.013, ex 2: 0.014
lower: 0.001, interval: 0.0001, nticks: 10, fs: %.4lf, scale: 1, ex: 0.0013, ex 2: 0.0014
lower: 0.0001, interval: 1e-05, nticks: 10, fs: %.1lf×10-4, scale: 10000, ex: 1.3×10-4, ex 2: 1.4×10-4
lower: 1e-05, interval: 1e-07, nticks: 10, fs: %.2lf×10-5, scale: 100000, ex: 1.03×10-5, ex 2: 1.04×10-5
lower: 1e-07, interval: 1e-08, nticks: 10, fs: %.1lf×10-7, scale: 1e+07, ex: 1.3×10-7, ex 2: 1.4×10-7
lower: -5, interval: 1, nticks: 10, fs: %.0lf, scale: 1, ex: -2, ex 2: -1
lower: -5, interval: 0.5, nticks: 10, fs: %.1lf, scale: 1, ex: -3.5, ex 2: -3.0
lower: -5, interval: 0.2, nticks: 9, fs: %.1lf, scale: 1, ex: -4.4, ex 2: -4.2
lower: -5, interval: 2, nticks: 10, fs: %.0lf, scale: 1, ex: 1, ex 2: 3
lower: -0.5, interval: 0.1, nticks: 9, fs: %.1lf, scale: 1, ex: -0.2, ex 2: -0.1
lower: 9.75e+08, interval: 5e+06, nticks: 9, fs: %.3lf×109, scale: 1e-09, ex: 0.990×109, ex 2: 0.995×109
lower: 9.7e+08, interval: 1e+07, nticks: 9, fs: %.2lf×109, scale: 1e-09, ex: 1.00×109, ex 2: 1.01×109
lower: -4e+07, interval: 1e+07, nticks: 9, fs: %.0lf×107, scale: 1e-07, ex: -1×107, ex 2: 0×107
lower: -3e+07, interval: 5e+06, nticks: 9, fs: %.1lf×107, scale: 1e-07, ex: -1.5×107, ex 2: -1.0×107
lower: 1.001e-95, interval: 2e-99, nticks: 10, fs: %.4lf×10-95, scale: 1e+95, ex: 1.0016×10-95, ex 2: 1.0018×10-95
lower: 1.001e+98, interval: 2e+94, nticks: 10, fs: %.4lf×1098, scale: 1e-98, ex: 1.0016×1098, ex 2: 1.0018×1098
lower: 5984, interval: 1e-05, nticks: 10, fs: %.5lf, scale: 1, ex: 5984.00003, ex 2: 5984.00004
lower: 3e+33, interval: 1e-22, nticks: 10, fs: %lg, scale: 1, ex: 3e+33, ex 2: 3e+33
lower: 3e+33, interval: 1000, nticks: 10, fs: %.8lf×1033, scale: 1e-33, ex: 3.00000000×1033, ex 2: 3.00000000×1033
lower: 0.1, interval: 2e-42, nticks: 10, fs: %.8lf, scale: 1, ex: 0.10000000, ex 2: 0.10000000
])
AT_CLEANUP
pspp-0.8.5/tests/math/moments.at 0000644 0001750 0001750 00000002202 12470242642 013531 0000000 0000000 AT_BANNER([calculating moments])
m4_define([MOMENTS_TESTCASES],
[[[1 2 3 4], [W=4.000 M1=2.500 M2=1.667 M3=0.000 M4=-1.200]],
[[1*5 2*5 3*5 4*5], [W=20.000 M1=2.500 M2=1.316 M3=0.000 M4=-1.401]],
[[1*1 2*2 3*3 4*4], [W=10.000 M1=3.000 M2=1.111 M3=-0.712 M4=-0.450]],
[[1*0], [W=0.000 M1=sysmis M2=sysmis M3=sysmis M4=sysmis]],
[[1*1], [W=1.000 M1=1.000 M2=sysmis M3=sysmis M4=sysmis]],
[[1*2], [W=2.000 M1=1.000 M2=0.000 M3=sysmis M4=sysmis]],
[[1*3], [W=3.000 M1=1.000 M2=0.000 M3=sysmis M4=sysmis]],
[[1*2 3], [W=3.000 M1=1.667 M2=1.333 M3=1.732 M4=sysmis]],
[[1 1.00000001], [W=2.000 M1=1.000 M2=0.000 M3=sysmis M4=sysmis]],
[[1000001 1000002 1000003 1000004], [W=4.000 M1=1000002.500 M2=1.667 M3=0.000 M4=-1.200]]])
m4_define([TEST_MOMENTS],
[AT_SETUP([$1 moments])
AT_CAPTURE_FILE([moments.sps])
AT_DATA([moments.sps],
[m4_foreach([pair], [MOMENTS_TESTCASES], [DEBUG MOMENTS $2/m4_car(pair).
])])
AT_CHECK([pspp --testing-mode --no-output moments.sps], [0],
[],
[m4_foreach([pair], [MOMENTS_TESTCASES], [m4_argn([2], pair)
])])
AT_CLEANUP
])
TEST_MOMENTS([two-pass], [])
TEST_MOMENTS([one-pass], [ONEPASS])
pspp-0.8.5/tests/math/randist.at 0000644 0001750 0001750 00000512232 12470242646 013530 0000000 0000000 AT_BANNER([random distributions])
m4_divert_push([PREPARE_TESTS])
[randist_compare () {
cat > compare.pl <<'EOF'
use strict;
use warnings 'all';
my ($epsilon) = 1;
open (EXPECTED, '<', $ARGV[0]) or die "$ARGV[0]: open: $!\n";
open (ACTUAL, '<', $ARGV[1]) or die "$ARGV[1]: open: $!\n";
my ($errors) = 0;
LINE: for (;;) {
my $a = ;
my $b = ;
last if !defined $a && !defined $b;
die "$ARGV[0]:$.: unexpected end of file\n" if !defined $a;
die "$ARGV[1]:$.: unexpected end of file\n" if !defined $b;
my (@a) = split (' ', $a);
my (@b) = split (' ', $b);
die "$ARGV[1]:$.: contains ". scalar (@b) . " fields but should "
. "contain " . scalar (@a) . "\n"
if $#a != $#b;
foreach my $i (0...$#a) {
die "$ARGV[1]:$.: unexpected number of decimals\n"
if count_decimals ($a[$i]) != count_decimals ($b[$i]);
my ($an) = to_int ($a[$i]);
my ($bn) = to_int ($b[$i]);
if ($an ne $bn && ($bn < $an - $epsilon || $bn > $an + $epsilon)) {
$errors++;
if ($errors > 50) {
print "$ARGV[1]: Additional differences suppressed.\n";
last LINE;
}
print "$ARGV[1]:$.: Values differ from $ARGV[0]:$.\n";
print "Expected:\n", $a;
print "Calculated:\n", $b;
}
}
}
exit ($errors > 0);
sub count_decimals {
my ($s) = @_;
return length (substr ($s, index ($s, '.')));
}
sub to_int {
local ($_) = @_;
s/\.//;
return $_;
}
EOF
}]
m4_divert_pop([PREPARE_TESTS])
m4_define([RANDIST_CHECK],
[AT_SETUP([random distributions -- $1])
randist_compare
AT_DATA([$1.in], [$4])
AT_DATA([$1.sps], [dnl
DATA LIST LIST FILE='$1.in' NOTABLE SKIP=1
/P $2[]m4_foreach_w([function], [x $3], [ X[]function]).
NUMERIC x $3 (F10.4).
COMPUTE x = IDF.$1(P[]m4_foreach_w([variable], [$2], [, variable])).
m4_foreach_w([function], [$3],
[COMPUTE function = function[].$1[](x[]m4_foreach_w([variable], [$2], [, variable])).
])dnl
DO IF $CASENUM = 1.
PRINT OUTFILE='$1.out'/"dnl
m4_foreach_w([variable], [P $2], [m4_format([%8s ], variable)])dnl
m4_foreach_w([function], [x $3], [m4_format([%10s ], function)])".
END IF.
PRINT OUTFILE='$1.out'/P $2 x $3.
EXECUTE.
])
AT_CHECK([pspp -O format=csv $1.sps])
AT_CHECK([$PERL compare.pl $1.in $1.out])
AT_CLEANUP])
RANDIST_CHECK([beta], [a b], [cdf pdf], [dnl
P a b x cdf pdf
.01 .75 .25 .0107 .0100 .7059
.01 .75 .50 .0047 .0100 1.5975
.01 .75 1.00 .0022 .0100 3.4812
.01 .75 1.50 .0014 .0100 5.4014
.01 .75 2.00 .0010 .0100 7.3328
.01 .75 2.50 .0008 .0100 9.2691
.01 .75 3.00 .0007 .0100 11.2077
.01 1.00 .25 .0394 .0100 .2577
.01 1.00 .50 .0199 .0100 .5051
.01 1.00 1.00 .0100 .0100 1.0000
.01 1.00 1.50 .0067 .0100 1.4950
.01 1.00 2.00 .0050 .0100 1.9900
.01 1.00 2.50 .0040 .0100 2.4850
.01 1.00 3.00 .0033 .0100 2.9800
.01 1.50 .25 .1343 .0100 .1168
.01 1.50 .50 .0808 .0100 .1888
.01 1.50 1.00 .0464 .0100 .3232
.01 1.50 1.50 .0328 .0100 .4538
.01 1.50 2.00 .0255 .0100 .5831
.01 1.50 2.50 .0208 .0100 .7118
.01 1.50 3.00 .0176 .0100 .8402
.10 .75 .25 .2094 .1000 .3968
.10 .75 .50 .0985 .1000 .7845
.10 .75 1.00 .0464 .1000 1.6158
.10 .75 1.50 .0302 .1000 2.4656
.10 .75 2.00 .0223 .1000 3.3210
.10 .75 2.50 .0177 .1000 4.1787
.10 .75 3.00 .0146 .1000 5.0376
.10 1.00 .25 .3439 .1000 .3429
.10 1.00 .50 .1900 .1000 .5556
.10 1.00 1.00 .1000 .1000 1.0000
.10 1.00 1.50 .0678 .1000 1.4482
.10 1.00 2.00 .0513 .1000 1.8974
.10 1.00 2.50 .0413 .1000 2.3469
.10 1.00 3.00 .0345 .1000 2.7965
.10 1.50 .25 .5280 .1000 .3650
.10 1.50 .50 .3514 .1000 .4685
.10 1.50 1.00 .2154 .1000 .6962
.10 1.50 1.50 .1565 .1000 .9252
.10 1.50 2.00 .1231 .1000 1.1537
.10 1.50 2.50 .1015 .1000 1.3821
.10 1.50 3.00 .0864 .1000 1.6102
.20 .75 .25 .4559 .2000 .4324
.20 .75 .50 .2372 .2000 .6847
.20 .75 1.00 .1170 .2000 1.2825
.20 .75 1.50 .0770 .2000 1.9025
.20 .75 2.00 .0573 .2000 2.5285
.20 .75 2.50 .0456 .2000 3.1569
.20 .75 3.00 .0379 .2000 3.7865
.20 1.00 .25 .5904 .2000 .4883
.20 1.00 .50 .3600 .2000 .6250
.20 1.00 1.00 .2000 .2000 1.0000
.20 1.00 1.50 .1382 .2000 1.3925
.20 1.00 2.00 .1056 .2000 1.7889
.20 1.00 2.50 .0854 .2000 2.1867
.20 1.00 3.00 .0717 .2000 2.5853
.20 1.50 .25 .7324 .2000 .6579
.20 1.50 .50 .5280 .2000 .6733
.20 1.50 1.00 .3420 .2000 .8772
.20 1.50 1.50 .2541 .2000 1.1086
.20 1.50 2.00 .2024 .2000 1.3456
.20 1.50 2.50 .1683 .2000 1.5847
.20 1.50 3.00 .1441 .2000 1.8249
.30 .75 .25 .6615 .3000 .5624
.30 .75 .50 .3852 .3000 .6756
.30 .75 1.00 .2008 .3000 1.1204
.30 .75 1.50 .1346 .3000 1.6023
.30 .75 2.00 .1010 .3000 2.0929
.30 .75 2.50 .0808 .3000 2.5868
.30 .75 3.00 .0673 .3000 3.0823
.30 1.00 .25 .7599 .3000 .7289
.30 1.00 .50 .5100 .3000 .7143
.30 1.00 1.00 .3000 .3000 1.0000
.30 1.00 1.50 .2116 .3000 1.3319
.30 1.00 2.00 .1633 .3000 1.6733
.30 1.00 2.50 .1330 .3000 2.0184
.30 1.00 3.00 .1121 .3000 2.3651
.30 1.50 .25 .8510 .3000 1.1004
.30 1.50 .50 .6576 .3000 .8823
.30 1.50 1.00 .4481 .3000 1.0041
.30 1.50 1.50 .3402 .3000 1.2064
.30 1.50 2.00 .2743 .3000 1.4253
.30 1.50 2.50 .2298 .3000 1.6503
.30 1.50 3.00 .1978 .3000 1.8782
.40 .75 .25 .8106 .4000 .8261
.40 .75 .50 .5300 .4000 .7134
.40 .75 1.00 .2947 .4000 1.0179
.40 .75 1.50 .2017 .4000 1.3908
.40 .75 2.00 .1530 .4000 1.7776
.40 .75 2.50 .1231 .4000 2.1695
.40 .75 3.00 .1029 .4000 2.5638
.40 1.00 .25 .8704 .4000 1.1574
.40 1.00 .50 .6400 .4000 .8333
.40 1.00 1.00 .4000 .4000 1.0000
.40 1.00 1.50 .2886 .4000 1.2651
.40 1.00 2.00 .2254 .4000 1.5492
.40 1.00 2.50 .1848 .4000 1.8401
.40 1.00 3.00 .1566 .4000 2.1341
.40 1.50 .25 .9219 .4000 1.8596
.40 1.50 .50 .7581 .4000 1.1269
.40 1.50 1.00 .5429 .4000 1.1052
.40 1.50 1.50 .4211 .4000 1.2573
.40 1.50 2.00 .3438 .4000 1.4428
.40 1.50 2.50 .2904 .4000 1.6405
.40 1.50 3.00 .2514 .4000 1.8440
.50 .75 .25 .9067 .5000 1.3662
.50 .75 .50 .6633 .5000 .7969
.50 .75 1.00 .3969 .5000 .9449
.50 .75 1.50 .2786 .5000 1.2197
.50 .75 2.00 .2139 .5000 1.5170
.50 .75 2.50 .1734 .5000 1.8224
.50 .75 3.00 .1458 .5000 2.1314
.50 1.00 .25 .9375 .5000 2.0000
.50 1.00 .50 .7500 .5000 1.0000
.50 1.00 1.00 .5000 .5000 1.0000
.50 1.00 1.50 .3700 .5000 1.1906
.50 1.00 2.00 .2929 .5000 1.4142
.50 1.00 2.50 .2421 .5000 1.6494
.50 1.00 3.00 .2063 .5000 1.8899
.50 1.50 .25 .9630 .5000 3.3258
.50 1.50 .50 .8368 .5000 1.4416
.50 1.50 1.00 .6300 .5000 1.1906
.50 1.50 1.50 .5000 .5000 1.2732
.50 1.50 2.00 .4136 .5000 1.4142
.50 1.50 2.50 .3525 .5000 1.5755
.50 1.50 3.00 .3069 .5000 1.7464
.60 .75 .25 .9613 .6000 2.6072
.60 .75 .50 .7793 .6000 .9454
.60 .75 1.00 .5061 .6000 .8892
.60 .75 1.50 .3662 .6000 1.0676
.60 .75 2.00 .2856 .6000 1.2826
.60 .75 2.50 .2337 .6000 1.5099
.60 .75 3.00 .1976 .6000 1.7426
.60 1.00 .25 .9744 .6000 3.9063
.60 1.00 .50 .8400 .6000 1.2500
.60 1.00 1.00 .6000 .6000 1.0000
.60 1.00 1.50 .4571 .6000 1.1052
.60 1.00 2.00 .3675 .6000 1.2649
.60 1.00 2.50 .3069 .6000 1.4427
.60 1.00 3.00 .2632 .6000 1.6287
.60 1.50 .25 .9850 .6000 6.6134
.60 1.50 .50 .8978 .6000 1.8869
.60 1.50 1.00 .7114 .6000 1.2651
.60 1.50 1.50 .5789 .6000 1.2573
.60 1.50 2.00 .4860 .6000 1.3438
.60 1.50 2.50 .4182 .6000 1.4617
.60 1.50 3.00 .3667 .6000 1.5938
.70 .75 .25 .9877 .7000 6.1137
.70 .75 .50 .8736 .7000 1.2142
.70 .75 1.00 .6215 .7000 .8447
.70 .75 1.50 .4670 .7000 .9214
.70 .75 2.00 .3714 .7000 1.0570
.70 .75 2.50 .3075 .7000 1.2110
.70 .75 3.00 .2622 .7000 1.3731
.70 1.00 .25 .9919 .7000 9.2593
.70 1.00 .50 .9100 .7000 1.6667
.70 1.00 1.00 .7000 .7000 1.0000
.70 1.00 1.50 .5519 .7000 1.0041
.70 1.00 2.00 .4523 .7000 1.0954
.70 1.00 2.50 .3822 .7000 1.2140
.70 1.00 3.00 .3306 .7000 1.3444
.70 1.50 .25 .9953 .7000 15.8068
.70 1.50 .50 .9434 .7000 2.5994
.70 1.50 1.00 .7884 .7000 1.3319
.70 1.50 1.50 .6598 .7000 1.2064
.70 1.50 2.00 .5635 .7000 1.2287
.70 1.50 2.50 .4905 .7000 1.2972
.70 1.50 3.00 .4337 .7000 1.3859
.80 .75 .25 .9976 .8000 20.5520
.80 .75 .50 .9431 .8000 1.7757
.80 .75 1.00 .7427 .8000 .8079
.80 .75 1.50 .5855 .8000 .7679
.80 .75 2.00 .4781 .8000 .8238
.80 .75 2.50 .4025 .8000 .9075
.80 .75 3.00 .3469 .8000 1.0028
.80 1.00 .25 .9984 .8000 31.2500
.80 1.00 .50 .9600 .8000 2.5000
.80 1.00 1.00 .8000 .8000 1.0000
.80 1.00 1.50 .6580 .8000 .8772
.80 1.00 2.00 .5528 .8000 .8944
.80 1.00 2.50 .4747 .8000 .9518
.80 1.00 3.00 .4152 .8000 1.0260
.80 1.50 .25 .9991 .8000 53.5108
.80 1.50 .50 .9751 .8000 3.9855
.80 1.50 1.00 .8618 .8000 1.3925
.80 1.50 1.50 .7459 .8000 1.1086
.80 1.50 2.00 .6508 .8000 1.0564
.80 1.50 2.50 .5748 .8000 1.0706
.80 1.50 3.00 .5137 .8000 1.1124
.90 .75 .25 .9998 .9000 164.2657
.90 .75 .50 .9857 .9000 3.4998
.90 .75 1.00 .8689 .9000 .7768
.90 .75 1.50 .7336 .9000 .5818
.90 .75 2.00 .6239 .9000 .5555
.90 .75 2.50 .5392 .9000 .5712
.90 .75 3.00 .4734 .9000 .6033
.90 1.00 .25 .9999 .9000 250.0000
.90 1.00 .50 .9900 .9000 5.0000
.90 1.00 1.00 .9000 .9000 1.0000
.90 1.00 1.50 .7846 .9000 .6962
.90 1.00 2.00 .6838 .9000 .6325
.90 1.00 2.50 .6019 .9000 .6280
.90 1.00 3.00 .5358 .9000 .6463
.90 1.50 .25 .9999 .9000 428.3866
.90 1.50 .50 .9938 .9000 8.0723
.90 1.50 1.00 .9322 .9000 1.4482
.90 1.50 1.50 .8435 .9000 .9252
.90 1.50 2.00 .7586 .9000 .7883
.90 1.50 2.50 .6847 .9000 .7461
.90 1.50 3.00 .6218 .9000 .7400
.99 .75 .25 1.0000 .9900 164255.717
.99 .75 .50 .9999 .9900 34.8318
.99 .75 1.00 .9867 .9900 .7525
.99 .75 1.50 .9412 .9900 .2568
.99 .75 2.00 .8779 .9900 .1656
.99 .75 2.50 .8116 .9900 .1348
.99 .75 3.00 .7492 .9900 .1220
.99 1.00 .25 1.0000 .9900 249999.999
.99 1.00 .50 .9999 .9900 50.0000
.99 1.00 1.00 .9900 .9900 1.0000
.99 1.00 1.50 .9536 .9900 .3232
.99 1.00 2.00 .9000 .9900 .2000
.99 1.00 2.50 .8415 .9900 .1577
.99 1.00 3.00 .7846 .9900 .1392
.99 1.50 .25 1.0000 .9900 428406.592
.99 1.50 .50 .9999 .9900 81.0536
.99 1.50 1.00 .9933 .9900 1.4950
.99 1.50 1.50 .9672 .9900 .4538
.99 1.50 2.00 .9260 .9900 .2669
.99 1.50 2.50 .8786 .9900 .2020
.99 1.50 3.00 .8302 .9900 .1724
])
RANDIST_CHECK([cauchy], [a b], [cdf pdf], [dnl
P a b x cdf pdf
.01 -5.00 .50 -20.9103 .0100 .0006
.01 -5.00 .75 -28.8654 .0100 .0004
.01 -5.00 1.00 -36.8205 .0100 .0003
.01 -5.00 1.25 -44.7756 .0100 .0003
.01 -5.00 1.50 -52.7308 .0100 .0002
.01 -4.00 .50 -19.9103 .0100 .0006
.01 -4.00 .75 -27.8654 .0100 .0004
.01 -4.00 1.00 -35.8205 .0100 .0003
.01 -4.00 1.25 -43.7756 .0100 .0003
.01 -4.00 1.50 -51.7308 .0100 .0002
.01 -3.00 .50 -18.9103 .0100 .0006
.01 -3.00 .75 -26.8654 .0100 .0004
.01 -3.00 1.00 -34.8205 .0100 .0003
.01 -3.00 1.25 -42.7756 .0100 .0003
.01 -3.00 1.50 -50.7308 .0100 .0002
.01 -2.00 .50 -17.9103 .0100 .0006
.01 -2.00 .75 -25.8654 .0100 .0004
.01 -2.00 1.00 -33.8205 .0100 .0003
.01 -2.00 1.25 -41.7756 .0100 .0003
.01 -2.00 1.50 -49.7308 .0100 .0002
.01 -1.00 .50 -16.9103 .0100 .0006
.01 -1.00 .75 -24.8654 .0100 .0004
.01 -1.00 1.00 -32.8205 .0100 .0003
.01 -1.00 1.25 -40.7756 .0100 .0003
.01 -1.00 1.50 -48.7308 .0100 .0002
.01 .00 .50 -15.9103 .0100 .0006
.01 .00 .75 -23.8654 .0100 .0004
.01 .00 1.00 -31.8205 .0100 .0003
.01 .00 1.25 -39.7756 .0100 .0003
.01 .00 1.50 -47.7308 .0100 .0002
.01 1.00 .50 -14.9103 .0100 .0006
.01 1.00 .75 -22.8654 .0100 .0004
.01 1.00 1.00 -30.8205 .0100 .0003
.01 1.00 1.25 -38.7756 .0100 .0003
.01 1.00 1.50 -46.7308 .0100 .0002
.01 2.00 .50 -13.9103 .0100 .0006
.01 2.00 .75 -21.8654 .0100 .0004
.01 2.00 1.00 -29.8205 .0100 .0003
.01 2.00 1.25 -37.7756 .0100 .0003
.01 2.00 1.50 -45.7308 .0100 .0002
.01 3.00 .50 -12.9103 .0100 .0006
.01 3.00 .75 -20.8654 .0100 .0004
.01 3.00 1.00 -28.8205 .0100 .0003
.01 3.00 1.25 -36.7756 .0100 .0003
.01 3.00 1.50 -44.7308 .0100 .0002
.01 4.00 .50 -11.9103 .0100 .0006
.01 4.00 .75 -19.8654 .0100 .0004
.01 4.00 1.00 -27.8205 .0100 .0003
.01 4.00 1.25 -35.7756 .0100 .0003
.01 4.00 1.50 -43.7308 .0100 .0002
.01 5.00 .50 -10.9103 .0100 .0006
.01 5.00 .75 -18.8654 .0100 .0004
.01 5.00 1.00 -26.8205 .0100 .0003
.01 5.00 1.25 -34.7756 .0100 .0003
.01 5.00 1.50 -42.7308 .0100 .0002
.10 -5.00 .50 -6.5388 .1000 .0608
.10 -5.00 .75 -7.3083 .1000 .0405
.10 -5.00 1.00 -8.0777 .1000 .0304
.10 -5.00 1.25 -8.8471 .1000 .0243
.10 -5.00 1.50 -9.6165 .1000 .0203
.10 -4.00 .50 -5.5388 .1000 .0608
.10 -4.00 .75 -6.3083 .1000 .0405
.10 -4.00 1.00 -7.0777 .1000 .0304
.10 -4.00 1.25 -7.8471 .1000 .0243
.10 -4.00 1.50 -8.6165 .1000 .0203
.10 -3.00 .50 -4.5388 .1000 .0608
.10 -3.00 .75 -5.3083 .1000 .0405
.10 -3.00 1.00 -6.0777 .1000 .0304
.10 -3.00 1.25 -6.8471 .1000 .0243
.10 -3.00 1.50 -7.6165 .1000 .0203
.10 -2.00 .50 -3.5388 .1000 .0608
.10 -2.00 .75 -4.3083 .1000 .0405
.10 -2.00 1.00 -5.0777 .1000 .0304
.10 -2.00 1.25 -5.8471 .1000 .0243
.10 -2.00 1.50 -6.6165 .1000 .0203
.10 -1.00 .50 -2.5388 .1000 .0608
.10 -1.00 .75 -3.3083 .1000 .0405
.10 -1.00 1.00 -4.0777 .1000 .0304
.10 -1.00 1.25 -4.8471 .1000 .0243
.10 -1.00 1.50 -5.6165 .1000 .0203
.10 .00 .50 -1.5388 .1000 .0608
.10 .00 .75 -2.3083 .1000 .0405
.10 .00 1.00 -3.0777 .1000 .0304
.10 .00 1.25 -3.8471 .1000 .0243
.10 .00 1.50 -4.6165 .1000 .0203
.10 1.00 .50 -.5388 .1000 .0608
.10 1.00 .75 -1.3083 .1000 .0405
.10 1.00 1.00 -2.0777 .1000 .0304
.10 1.00 1.25 -2.8471 .1000 .0243
.10 1.00 1.50 -3.6165 .1000 .0203
.10 2.00 .50 .4612 .1000 .0608
.10 2.00 .75 -.3083 .1000 .0405
.10 2.00 1.00 -1.0777 .1000 .0304
.10 2.00 1.25 -1.8471 .1000 .0243
.10 2.00 1.50 -2.6165 .1000 .0203
.10 3.00 .50 1.4612 .1000 .0608
.10 3.00 .75 .6917 .1000 .0405
.10 3.00 1.00 -.0777 .1000 .0304
.10 3.00 1.25 -.8471 .1000 .0243
.10 3.00 1.50 -1.6165 .1000 .0203
.10 4.00 .50 2.4612 .1000 .0608
.10 4.00 .75 1.6917 .1000 .0405
.10 4.00 1.00 .9223 .1000 .0304
.10 4.00 1.25 .1529 .1000 .0243
.10 4.00 1.50 -.6165 .1000 .0203
.10 5.00 .50 3.4612 .1000 .0608
.10 5.00 .75 2.6917 .1000 .0405
.10 5.00 1.00 1.9223 .1000 .0304
.10 5.00 1.25 1.1529 .1000 .0243
.10 5.00 1.50 .3835 .1000 .0203
.20 -5.00 .50 -5.6882 .2000 .2199
.20 -5.00 .75 -6.0323 .2000 .1466
.20 -5.00 1.00 -6.3764 .2000 .1100
.20 -5.00 1.25 -6.7205 .2000 .0880
.20 -5.00 1.50 -7.0646 .2000 .0733
.20 -4.00 .50 -4.6882 .2000 .2199
.20 -4.00 .75 -5.0323 .2000 .1466
.20 -4.00 1.00 -5.3764 .2000 .1100
.20 -4.00 1.25 -5.7205 .2000 .0880
.20 -4.00 1.50 -6.0646 .2000 .0733
.20 -3.00 .50 -3.6882 .2000 .2199
.20 -3.00 .75 -4.0323 .2000 .1466
.20 -3.00 1.00 -4.3764 .2000 .1100
.20 -3.00 1.25 -4.7205 .2000 .0880
.20 -3.00 1.50 -5.0646 .2000 .0733
.20 -2.00 .50 -2.6882 .2000 .2199
.20 -2.00 .75 -3.0323 .2000 .1466
.20 -2.00 1.00 -3.3764 .2000 .1100
.20 -2.00 1.25 -3.7205 .2000 .0880
.20 -2.00 1.50 -4.0646 .2000 .0733
.20 -1.00 .50 -1.6882 .2000 .2199
.20 -1.00 .75 -2.0323 .2000 .1466
.20 -1.00 1.00 -2.3764 .2000 .1100
.20 -1.00 1.25 -2.7205 .2000 .0880
.20 -1.00 1.50 -3.0646 .2000 .0733
.20 .00 .50 -.6882 .2000 .2199
.20 .00 .75 -1.0323 .2000 .1466
.20 .00 1.00 -1.3764 .2000 .1100
.20 .00 1.25 -1.7205 .2000 .0880
.20 .00 1.50 -2.0646 .2000 .0733
.20 1.00 .50 .3118 .2000 .2199
.20 1.00 .75 -.0323 .2000 .1466
.20 1.00 1.00 -.3764 .2000 .1100
.20 1.00 1.25 -.7205 .2000 .0880
.20 1.00 1.50 -1.0646 .2000 .0733
.20 2.00 .50 1.3118 .2000 .2199
.20 2.00 .75 .9677 .2000 .1466
.20 2.00 1.00 .6236 .2000 .1100
.20 2.00 1.25 .2795 .2000 .0880
.20 2.00 1.50 -.0646 .2000 .0733
.20 3.00 .50 2.3118 .2000 .2199
.20 3.00 .75 1.9677 .2000 .1466
.20 3.00 1.00 1.6236 .2000 .1100
.20 3.00 1.25 1.2795 .2000 .0880
.20 3.00 1.50 .9354 .2000 .0733
.20 4.00 .50 3.3118 .2000 .2199
.20 4.00 .75 2.9677 .2000 .1466
.20 4.00 1.00 2.6236 .2000 .1100
.20 4.00 1.25 2.2795 .2000 .0880
.20 4.00 1.50 1.9354 .2000 .0733
.20 5.00 .50 4.3118 .2000 .2199
.20 5.00 .75 3.9677 .2000 .1466
.20 5.00 1.00 3.6236 .2000 .1100
.20 5.00 1.25 3.2795 .2000 .0880
.20 5.00 1.50 2.9354 .2000 .0733
.30 -5.00 .50 -5.3633 .3000 .4167
.30 -5.00 .75 -5.5449 .3000 .2778
.30 -5.00 1.00 -5.7265 .3000 .2083
.30 -5.00 1.25 -5.9082 .3000 .1667
.30 -5.00 1.50 -6.0898 .3000 .1389
.30 -4.00 .50 -4.3633 .3000 .4167
.30 -4.00 .75 -4.5449 .3000 .2778
.30 -4.00 1.00 -4.7265 .3000 .2083
.30 -4.00 1.25 -4.9082 .3000 .1667
.30 -4.00 1.50 -5.0898 .3000 .1389
.30 -3.00 .50 -3.3633 .3000 .4167
.30 -3.00 .75 -3.5449 .3000 .2778
.30 -3.00 1.00 -3.7265 .3000 .2083
.30 -3.00 1.25 -3.9082 .3000 .1667
.30 -3.00 1.50 -4.0898 .3000 .1389
.30 -2.00 .50 -2.3633 .3000 .4167
.30 -2.00 .75 -2.5449 .3000 .2778
.30 -2.00 1.00 -2.7265 .3000 .2083
.30 -2.00 1.25 -2.9082 .3000 .1667
.30 -2.00 1.50 -3.0898 .3000 .1389
.30 -1.00 .50 -1.3633 .3000 .4167
.30 -1.00 .75 -1.5449 .3000 .2778
.30 -1.00 1.00 -1.7265 .3000 .2083
.30 -1.00 1.25 -1.9082 .3000 .1667
.30 -1.00 1.50 -2.0898 .3000 .1389
.30 .00 .50 -.3633 .3000 .4167
.30 .00 .75 -.5449 .3000 .2778
.30 .00 1.00 -.7265 .3000 .2083
.30 .00 1.25 -.9082 .3000 .1667
.30 .00 1.50 -1.0898 .3000 .1389
.30 1.00 .50 .6367 .3000 .4167
.30 1.00 .75 .4551 .3000 .2778
.30 1.00 1.00 .2735 .3000 .2083
.30 1.00 1.25 .0918 .3000 .1667
.30 1.00 1.50 -.0898 .3000 .1389
.30 2.00 .50 1.6367 .3000 .4167
.30 2.00 .75 1.4551 .3000 .2778
.30 2.00 1.00 1.2735 .3000 .2083
.30 2.00 1.25 1.0918 .3000 .1667
.30 2.00 1.50 .9102 .3000 .1389
.30 3.00 .50 2.6367 .3000 .4167
.30 3.00 .75 2.4551 .3000 .2778
.30 3.00 1.00 2.2735 .3000 .2083
.30 3.00 1.25 2.0918 .3000 .1667
.30 3.00 1.50 1.9102 .3000 .1389
.30 4.00 .50 3.6367 .3000 .4167
.30 4.00 .75 3.4551 .3000 .2778
.30 4.00 1.00 3.2735 .3000 .2083
.30 4.00 1.25 3.0918 .3000 .1667
.30 4.00 1.50 2.9102 .3000 .1389
.30 5.00 .50 4.6367 .3000 .4167
.30 5.00 .75 4.4551 .3000 .2778
.30 5.00 1.00 4.2735 .3000 .2083
.30 5.00 1.25 4.0918 .3000 .1667
.30 5.00 1.50 3.9102 .3000 .1389
.40 -5.00 .50 -5.1625 .4000 .5758
.40 -5.00 .75 -5.2437 .4000 .3839
.40 -5.00 1.00 -5.3249 .4000 .2879
.40 -5.00 1.25 -5.4061 .4000 .2303
.40 -5.00 1.50 -5.4874 .4000 .1919
.40 -4.00 .50 -4.1625 .4000 .5758
.40 -4.00 .75 -4.2437 .4000 .3839
.40 -4.00 1.00 -4.3249 .4000 .2879
.40 -4.00 1.25 -4.4061 .4000 .2303
.40 -4.00 1.50 -4.4874 .4000 .1919
.40 -3.00 .50 -3.1625 .4000 .5758
.40 -3.00 .75 -3.2437 .4000 .3839
.40 -3.00 1.00 -3.3249 .4000 .2879
.40 -3.00 1.25 -3.4061 .4000 .2303
.40 -3.00 1.50 -3.4874 .4000 .1919
.40 -2.00 .50 -2.1625 .4000 .5758
.40 -2.00 .75 -2.2437 .4000 .3839
.40 -2.00 1.00 -2.3249 .4000 .2879
.40 -2.00 1.25 -2.4061 .4000 .2303
.40 -2.00 1.50 -2.4874 .4000 .1919
.40 -1.00 .50 -1.1625 .4000 .5758
.40 -1.00 .75 -1.2437 .4000 .3839
.40 -1.00 1.00 -1.3249 .4000 .2879
.40 -1.00 1.25 -1.4061 .4000 .2303
.40 -1.00 1.50 -1.4874 .4000 .1919
.40 .00 .50 -.1625 .4000 .5758
.40 .00 .75 -.2437 .4000 .3839
.40 .00 1.00 -.3249 .4000 .2879
.40 .00 1.25 -.4061 .4000 .2303
.40 .00 1.50 -.4874 .4000 .1919
.40 1.00 .50 .8375 .4000 .5758
.40 1.00 .75 .7563 .4000 .3839
.40 1.00 1.00 .6751 .4000 .2879
.40 1.00 1.25 .5939 .4000 .2303
.40 1.00 1.50 .5126 .4000 .1919
.40 2.00 .50 1.8375 .4000 .5758
.40 2.00 .75 1.7563 .4000 .3839
.40 2.00 1.00 1.6751 .4000 .2879
.40 2.00 1.25 1.5939 .4000 .2303
.40 2.00 1.50 1.5126 .4000 .1919
.40 3.00 .50 2.8375 .4000 .5758
.40 3.00 .75 2.7563 .4000 .3839
.40 3.00 1.00 2.6751 .4000 .2879
.40 3.00 1.25 2.5939 .4000 .2303
.40 3.00 1.50 2.5126 .4000 .1919
.40 4.00 .50 3.8375 .4000 .5758
.40 4.00 .75 3.7563 .4000 .3839
.40 4.00 1.00 3.6751 .4000 .2879
.40 4.00 1.25 3.5939 .4000 .2303
.40 4.00 1.50 3.5126 .4000 .1919
.40 5.00 .50 4.8375 .4000 .5758
.40 5.00 .75 4.7563 .4000 .3839
.40 5.00 1.00 4.6751 .4000 .2879
.40 5.00 1.25 4.5939 .4000 .2303
.40 5.00 1.50 4.5126 .4000 .1919
.50 -5.00 .50 -5.0000 .5000 .6366
.50 -5.00 .75 -5.0000 .5000 .4244
.50 -5.00 1.00 -5.0000 .5000 .3183
.50 -5.00 1.25 -5.0000 .5000 .2546
.50 -5.00 1.50 -5.0000 .5000 .2122
.50 -4.00 .50 -4.0000 .5000 .6366
.50 -4.00 .75 -4.0000 .5000 .4244
.50 -4.00 1.00 -4.0000 .5000 .3183
.50 -4.00 1.25 -4.0000 .5000 .2546
.50 -4.00 1.50 -4.0000 .5000 .2122
.50 -3.00 .50 -3.0000 .5000 .6366
.50 -3.00 .75 -3.0000 .5000 .4244
.50 -3.00 1.00 -3.0000 .5000 .3183
.50 -3.00 1.25 -3.0000 .5000 .2546
.50 -3.00 1.50 -3.0000 .5000 .2122
.50 -2.00 .50 -2.0000 .5000 .6366
.50 -2.00 .75 -2.0000 .5000 .4244
.50 -2.00 1.00 -2.0000 .5000 .3183
.50 -2.00 1.25 -2.0000 .5000 .2546
.50 -2.00 1.50 -2.0000 .5000 .2122
.50 -1.00 .50 -1.0000 .5000 .6366
.50 -1.00 .75 -1.0000 .5000 .4244
.50 -1.00 1.00 -1.0000 .5000 .3183
.50 -1.00 1.25 -1.0000 .5000 .2546
.50 -1.00 1.50 -1.0000 .5000 .2122
.50 .00 .50 .0000 .5000 .6366
.50 .00 .75 .0000 .5000 .4244
.50 .00 1.00 .0000 .5000 .3183
.50 .00 1.25 .0000 .5000 .2546
.50 .00 1.50 .0000 .5000 .2122
.50 1.00 .50 1.0000 .5000 .6366
.50 1.00 .75 1.0000 .5000 .4244
.50 1.00 1.00 1.0000 .5000 .3183
.50 1.00 1.25 1.0000 .5000 .2546
.50 1.00 1.50 1.0000 .5000 .2122
.50 2.00 .50 2.0000 .5000 .6366
.50 2.00 .75 2.0000 .5000 .4244
.50 2.00 1.00 2.0000 .5000 .3183
.50 2.00 1.25 2.0000 .5000 .2546
.50 2.00 1.50 2.0000 .5000 .2122
.50 3.00 .50 3.0000 .5000 .6366
.50 3.00 .75 3.0000 .5000 .4244
.50 3.00 1.00 3.0000 .5000 .3183
.50 3.00 1.25 3.0000 .5000 .2546
.50 3.00 1.50 3.0000 .5000 .2122
.50 4.00 .50 4.0000 .5000 .6366
.50 4.00 .75 4.0000 .5000 .4244
.50 4.00 1.00 4.0000 .5000 .3183
.50 4.00 1.25 4.0000 .5000 .2546
.50 4.00 1.50 4.0000 .5000 .2122
.50 5.00 .50 5.0000 .5000 .6366
.50 5.00 .75 5.0000 .5000 .4244
.50 5.00 1.00 5.0000 .5000 .3183
.50 5.00 1.25 5.0000 .5000 .2546
.50 5.00 1.50 5.0000 .5000 .2122
.60 -5.00 .50 -4.8375 .6000 .5758
.60 -5.00 .75 -4.7563 .6000 .3839
.60 -5.00 1.00 -4.6751 .6000 .2879
.60 -5.00 1.25 -4.5939 .6000 .2303
.60 -5.00 1.50 -4.5126 .6000 .1919
.60 -4.00 .50 -3.8375 .6000 .5758
.60 -4.00 .75 -3.7563 .6000 .3839
.60 -4.00 1.00 -3.6751 .6000 .2879
.60 -4.00 1.25 -3.5939 .6000 .2303
.60 -4.00 1.50 -3.5126 .6000 .1919
.60 -3.00 .50 -2.8375 .6000 .5758
.60 -3.00 .75 -2.7563 .6000 .3839
.60 -3.00 1.00 -2.6751 .6000 .2879
.60 -3.00 1.25 -2.5939 .6000 .2303
.60 -3.00 1.50 -2.5126 .6000 .1919
.60 -2.00 .50 -1.8375 .6000 .5758
.60 -2.00 .75 -1.7563 .6000 .3839
.60 -2.00 1.00 -1.6751 .6000 .2879
.60 -2.00 1.25 -1.5939 .6000 .2303
.60 -2.00 1.50 -1.5126 .6000 .1919
.60 -1.00 .50 -.8375 .6000 .5758
.60 -1.00 .75 -.7563 .6000 .3839
.60 -1.00 1.00 -.6751 .6000 .2879
.60 -1.00 1.25 -.5939 .6000 .2303
.60 -1.00 1.50 -.5126 .6000 .1919
.60 .00 .50 .1625 .6000 .5758
.60 .00 .75 .2437 .6000 .3839
.60 .00 1.00 .3249 .6000 .2879
.60 .00 1.25 .4061 .6000 .2303
.60 .00 1.50 .4874 .6000 .1919
.60 1.00 .50 1.1625 .6000 .5758
.60 1.00 .75 1.2437 .6000 .3839
.60 1.00 1.00 1.3249 .6000 .2879
.60 1.00 1.25 1.4061 .6000 .2303
.60 1.00 1.50 1.4874 .6000 .1919
.60 2.00 .50 2.1625 .6000 .5758
.60 2.00 .75 2.2437 .6000 .3839
.60 2.00 1.00 2.3249 .6000 .2879
.60 2.00 1.25 2.4061 .6000 .2303
.60 2.00 1.50 2.4874 .6000 .1919
.60 3.00 .50 3.1625 .6000 .5758
.60 3.00 .75 3.2437 .6000 .3839
.60 3.00 1.00 3.3249 .6000 .2879
.60 3.00 1.25 3.4061 .6000 .2303
.60 3.00 1.50 3.4874 .6000 .1919
.60 4.00 .50 4.1625 .6000 .5758
.60 4.00 .75 4.2437 .6000 .3839
.60 4.00 1.00 4.3249 .6000 .2879
.60 4.00 1.25 4.4061 .6000 .2303
.60 4.00 1.50 4.4874 .6000 .1919
.60 5.00 .50 5.1625 .6000 .5758
.60 5.00 .75 5.2437 .6000 .3839
.60 5.00 1.00 5.3249 .6000 .2879
.60 5.00 1.25 5.4061 .6000 .2303
.60 5.00 1.50 5.4874 .6000 .1919
.70 -5.00 .50 -4.6367 .7000 .4167
.70 -5.00 .75 -4.4551 .7000 .2778
.70 -5.00 1.00 -4.2735 .7000 .2083
.70 -5.00 1.25 -4.0918 .7000 .1667
.70 -5.00 1.50 -3.9102 .7000 .1389
.70 -4.00 .50 -3.6367 .7000 .4167
.70 -4.00 .75 -3.4551 .7000 .2778
.70 -4.00 1.00 -3.2735 .7000 .2083
.70 -4.00 1.25 -3.0918 .7000 .1667
.70 -4.00 1.50 -2.9102 .7000 .1389
.70 -3.00 .50 -2.6367 .7000 .4167
.70 -3.00 .75 -2.4551 .7000 .2778
.70 -3.00 1.00 -2.2735 .7000 .2083
.70 -3.00 1.25 -2.0918 .7000 .1667
.70 -3.00 1.50 -1.9102 .7000 .1389
.70 -2.00 .50 -1.6367 .7000 .4167
.70 -2.00 .75 -1.4551 .7000 .2778
.70 -2.00 1.00 -1.2735 .7000 .2083
.70 -2.00 1.25 -1.0918 .7000 .1667
.70 -2.00 1.50 -.9102 .7000 .1389
.70 -1.00 .50 -.6367 .7000 .4167
.70 -1.00 .75 -.4551 .7000 .2778
.70 -1.00 1.00 -.2735 .7000 .2083
.70 -1.00 1.25 -.0918 .7000 .1667
.70 -1.00 1.50 .0898 .7000 .1389
.70 .00 .50 .3633 .7000 .4167
.70 .00 .75 .5449 .7000 .2778
.70 .00 1.00 .7265 .7000 .2083
.70 .00 1.25 .9082 .7000 .1667
.70 .00 1.50 1.0898 .7000 .1389
.70 1.00 .50 1.3633 .7000 .4167
.70 1.00 .75 1.5449 .7000 .2778
.70 1.00 1.00 1.7265 .7000 .2083
.70 1.00 1.25 1.9082 .7000 .1667
.70 1.00 1.50 2.0898 .7000 .1389
.70 2.00 .50 2.3633 .7000 .4167
.70 2.00 .75 2.5449 .7000 .2778
.70 2.00 1.00 2.7265 .7000 .2083
.70 2.00 1.25 2.9082 .7000 .1667
.70 2.00 1.50 3.0898 .7000 .1389
.70 3.00 .50 3.3633 .7000 .4167
.70 3.00 .75 3.5449 .7000 .2778
.70 3.00 1.00 3.7265 .7000 .2083
.70 3.00 1.25 3.9082 .7000 .1667
.70 3.00 1.50 4.0898 .7000 .1389
.70 4.00 .50 4.3633 .7000 .4167
.70 4.00 .75 4.5449 .7000 .2778
.70 4.00 1.00 4.7265 .7000 .2083
.70 4.00 1.25 4.9082 .7000 .1667
.70 4.00 1.50 5.0898 .7000 .1389
.70 5.00 .50 5.3633 .7000 .4167
.70 5.00 .75 5.5449 .7000 .2778
.70 5.00 1.00 5.7265 .7000 .2083
.70 5.00 1.25 5.9082 .7000 .1667
.70 5.00 1.50 6.0898 .7000 .1389
.80 -5.00 .50 -4.3118 .8000 .2199
.80 -5.00 .75 -3.9677 .8000 .1466
.80 -5.00 1.00 -3.6236 .8000 .1100
.80 -5.00 1.25 -3.2795 .8000 .0880
.80 -5.00 1.50 -2.9354 .8000 .0733
.80 -4.00 .50 -3.3118 .8000 .2199
.80 -4.00 .75 -2.9677 .8000 .1466
.80 -4.00 1.00 -2.6236 .8000 .1100
.80 -4.00 1.25 -2.2795 .8000 .0880
.80 -4.00 1.50 -1.9354 .8000 .0733
.80 -3.00 .50 -2.3118 .8000 .2199
.80 -3.00 .75 -1.9677 .8000 .1466
.80 -3.00 1.00 -1.6236 .8000 .1100
.80 -3.00 1.25 -1.2795 .8000 .0880
.80 -3.00 1.50 -.9354 .8000 .0733
.80 -2.00 .50 -1.3118 .8000 .2199
.80 -2.00 .75 -.9677 .8000 .1466
.80 -2.00 1.00 -.6236 .8000 .1100
.80 -2.00 1.25 -.2795 .8000 .0880
.80 -2.00 1.50 .0646 .8000 .0733
.80 -1.00 .50 -.3118 .8000 .2199
.80 -1.00 .75 .0323 .8000 .1466
.80 -1.00 1.00 .3764 .8000 .1100
.80 -1.00 1.25 .7205 .8000 .0880
.80 -1.00 1.50 1.0646 .8000 .0733
.80 .00 .50 .6882 .8000 .2199
.80 .00 .75 1.0323 .8000 .1466
.80 .00 1.00 1.3764 .8000 .1100
.80 .00 1.25 1.7205 .8000 .0880
.80 .00 1.50 2.0646 .8000 .0733
.80 1.00 .50 1.6882 .8000 .2199
.80 1.00 .75 2.0323 .8000 .1466
.80 1.00 1.00 2.3764 .8000 .1100
.80 1.00 1.25 2.7205 .8000 .0880
.80 1.00 1.50 3.0646 .8000 .0733
.80 2.00 .50 2.6882 .8000 .2199
.80 2.00 .75 3.0323 .8000 .1466
.80 2.00 1.00 3.3764 .8000 .1100
.80 2.00 1.25 3.7205 .8000 .0880
.80 2.00 1.50 4.0646 .8000 .0733
.80 3.00 .50 3.6882 .8000 .2199
.80 3.00 .75 4.0323 .8000 .1466
.80 3.00 1.00 4.3764 .8000 .1100
.80 3.00 1.25 4.7205 .8000 .0880
.80 3.00 1.50 5.0646 .8000 .0733
.80 4.00 .50 4.6882 .8000 .2199
.80 4.00 .75 5.0323 .8000 .1466
.80 4.00 1.00 5.3764 .8000 .1100
.80 4.00 1.25 5.7205 .8000 .0880
.80 4.00 1.50 6.0646 .8000 .0733
.80 5.00 .50 5.6882 .8000 .2199
.80 5.00 .75 6.0323 .8000 .1466
.80 5.00 1.00 6.3764 .8000 .1100
.80 5.00 1.25 6.7205 .8000 .0880
.80 5.00 1.50 7.0646 .8000 .0733
.90 -5.00 .50 -3.4612 .9000 .0608
.90 -5.00 .75 -2.6917 .9000 .0405
.90 -5.00 1.00 -1.9223 .9000 .0304
.90 -5.00 1.25 -1.1529 .9000 .0243
.90 -5.00 1.50 -.3835 .9000 .0203
.90 -4.00 .50 -2.4612 .9000 .0608
.90 -4.00 .75 -1.6917 .9000 .0405
.90 -4.00 1.00 -.9223 .9000 .0304
.90 -4.00 1.25 -.1529 .9000 .0243
.90 -4.00 1.50 .6165 .9000 .0203
.90 -3.00 .50 -1.4612 .9000 .0608
.90 -3.00 .75 -.6917 .9000 .0405
.90 -3.00 1.00 .0777 .9000 .0304
.90 -3.00 1.25 .8471 .9000 .0243
.90 -3.00 1.50 1.6165 .9000 .0203
.90 -2.00 .50 -.4612 .9000 .0608
.90 -2.00 .75 .3083 .9000 .0405
.90 -2.00 1.00 1.0777 .9000 .0304
.90 -2.00 1.25 1.8471 .9000 .0243
.90 -2.00 1.50 2.6165 .9000 .0203
.90 -1.00 .50 .5388 .9000 .0608
.90 -1.00 .75 1.3083 .9000 .0405
.90 -1.00 1.00 2.0777 .9000 .0304
.90 -1.00 1.25 2.8471 .9000 .0243
.90 -1.00 1.50 3.6165 .9000 .0203
.90 .00 .50 1.5388 .9000 .0608
.90 .00 .75 2.3083 .9000 .0405
.90 .00 1.00 3.0777 .9000 .0304
.90 .00 1.25 3.8471 .9000 .0243
.90 .00 1.50 4.6165 .9000 .0203
.90 1.00 .50 2.5388 .9000 .0608
.90 1.00 .75 3.3083 .9000 .0405
.90 1.00 1.00 4.0777 .9000 .0304
.90 1.00 1.25 4.8471 .9000 .0243
.90 1.00 1.50 5.6165 .9000 .0203
.90 2.00 .50 3.5388 .9000 .0608
.90 2.00 .75 4.3083 .9000 .0405
.90 2.00 1.00 5.0777 .9000 .0304
.90 2.00 1.25 5.8471 .9000 .0243
.90 2.00 1.50 6.6165 .9000 .0203
.90 3.00 .50 4.5388 .9000 .0608
.90 3.00 .75 5.3083 .9000 .0405
.90 3.00 1.00 6.0777 .9000 .0304
.90 3.00 1.25 6.8471 .9000 .0243
.90 3.00 1.50 7.6165 .9000 .0203
.90 4.00 .50 5.5388 .9000 .0608
.90 4.00 .75 6.3083 .9000 .0405
.90 4.00 1.00 7.0777 .9000 .0304
.90 4.00 1.25 7.8471 .9000 .0243
.90 4.00 1.50 8.6165 .9000 .0203
.90 5.00 .50 6.5388 .9000 .0608
.90 5.00 .75 7.3083 .9000 .0405
.90 5.00 1.00 8.0777 .9000 .0304
.90 5.00 1.25 8.8471 .9000 .0243
.90 5.00 1.50 9.6165 .9000 .0203
.99 -5.00 .50 10.9103 .9900 .0006
.99 -5.00 .75 18.8654 .9900 .0004
.99 -5.00 1.00 26.8205 .9900 .0003
.99 -5.00 1.25 34.7756 .9900 .0003
.99 -5.00 1.50 42.7308 .9900 .0002
.99 -4.00 .50 11.9103 .9900 .0006
.99 -4.00 .75 19.8654 .9900 .0004
.99 -4.00 1.00 27.8205 .9900 .0003
.99 -4.00 1.25 35.7756 .9900 .0003
.99 -4.00 1.50 43.7308 .9900 .0002
.99 -3.00 .50 12.9103 .9900 .0006
.99 -3.00 .75 20.8654 .9900 .0004
.99 -3.00 1.00 28.8205 .9900 .0003
.99 -3.00 1.25 36.7756 .9900 .0003
.99 -3.00 1.50 44.7308 .9900 .0002
.99 -2.00 .50 13.9103 .9900 .0006
.99 -2.00 .75 21.8654 .9900 .0004
.99 -2.00 1.00 29.8205 .9900 .0003
.99 -2.00 1.25 37.7756 .9900 .0003
.99 -2.00 1.50 45.7308 .9900 .0002
.99 -1.00 .50 14.9103 .9900 .0006
.99 -1.00 .75 22.8654 .9900 .0004
.99 -1.00 1.00 30.8205 .9900 .0003
.99 -1.00 1.25 38.7756 .9900 .0003
.99 -1.00 1.50 46.7308 .9900 .0002
.99 .00 .50 15.9103 .9900 .0006
.99 .00 .75 23.8654 .9900 .0004
.99 .00 1.00 31.8205 .9900 .0003
.99 .00 1.25 39.7756 .9900 .0003
.99 .00 1.50 47.7308 .9900 .0002
.99 1.00 .50 16.9103 .9900 .0006
.99 1.00 .75 24.8654 .9900 .0004
.99 1.00 1.00 32.8205 .9900 .0003
.99 1.00 1.25 40.7756 .9900 .0003
.99 1.00 1.50 48.7308 .9900 .0002
.99 2.00 .50 17.9103 .9900 .0006
.99 2.00 .75 25.8654 .9900 .0004
.99 2.00 1.00 33.8205 .9900 .0003
.99 2.00 1.25 41.7756 .9900 .0003
.99 2.00 1.50 49.7308 .9900 .0002
.99 3.00 .50 18.9103 .9900 .0006
.99 3.00 .75 26.8654 .9900 .0004
.99 3.00 1.00 34.8205 .9900 .0003
.99 3.00 1.25 42.7756 .9900 .0003
.99 3.00 1.50 50.7308 .9900 .0002
.99 4.00 .50 19.9103 .9900 .0006
.99 4.00 .75 27.8654 .9900 .0004
.99 4.00 1.00 35.8205 .9900 .0003
.99 4.00 1.25 43.7756 .9900 .0003
.99 4.00 1.50 51.7308 .9900 .0002
.99 5.00 .50 20.9103 .9900 .0006
.99 5.00 .75 28.8654 .9900 .0004
.99 5.00 1.00 36.8205 .9900 .0003
.99 5.00 1.25 44.7756 .9900 .0003
.99 5.00 1.50 52.7308 .9900 .0002
])
RANDIST_CHECK([chisq], [df], [cdf pdf sig], [dnl
P df x cdf pdf sig
.01 1.00 .0002 .0100 31.8277 .9900
.01 2.00 .0201 .0100 .4950 .9900
.01 5.00 .5543 .0100 .0416 .9900
.01 10.00 2.5582 .0100 .0155 .9900
.10 1.00 .0158 .1000 3.1498 .9000
.10 2.00 .2107 .1000 .4500 .9000
.10 5.00 1.6103 .1000 .1215 .9000
.10 10.00 4.8652 .1000 .0641 .9000
.20 1.00 .0642 .2000 1.5250 .8000
.20 2.00 .4463 .2000 .4000 .8000
.20 5.00 2.3425 .2000 .1478 .8000
.20 10.00 6.1791 .2000 .0864 .8000
.30 1.00 .1485 .3000 .9613 .7000
.30 2.00 .7133 .3000 .3500 .7000
.30 5.00 2.9999 .3000 .1542 .7000
.30 10.00 7.2672 .3000 .0960 .7000
.40 1.00 .2750 .4000 .6630 .6000
.40 2.00 1.0217 .4000 .3000 .6000
.40 5.00 3.6555 .4000 .1494 .6000
.40 10.00 8.2955 .4000 .0974 .6000
.50 1.00 .4549 .5000 .4711 .5000
.50 2.00 1.3863 .5000 .2500 .5000
.50 5.00 4.3515 .5000 .1370 .5000
.50 10.00 9.3418 .5000 .0929 .5000
.60 1.00 .7083 .6000 .3326 .4000
.60 2.00 1.8326 .6000 .2000 .4000
.60 5.00 5.1319 .6000 .1188 .4000
.60 10.00 10.4732 .6000 .0833 .4000
.70 1.00 1.0742 .7000 .2250 .3000
.70 2.00 2.4079 .7000 .1500 .3000
.70 5.00 6.0644 .7000 .0957 .3000
.70 10.00 11.7807 .7000 .0694 .3000
.80 1.00 1.6424 .8000 .1369 .2000
.80 2.00 3.2189 .8000 .1000 .2000
.80 5.00 7.2893 .8000 .0684 .2000
.80 10.00 13.4420 .8000 .0512 .2000
.90 1.00 2.7055 .9000 .0627 .1000
.90 2.00 4.6052 .9000 .0500 .1000
.90 5.00 9.2364 .9000 .0368 .1000
.90 10.00 15.9872 .9000 .0287 .1000
.99 1.00 6.6349 .9900 .0056 .0100
.99 2.00 9.2103 .9900 .0050 .0100
.99 5.00 15.0863 .9900 .0041 .0100
.99 10.00 23.2093 .9900 .0034 .0100
])
RANDIST_CHECK([exp], [a], [cdf pdf], [dnl
P a x cdf pdf
.01 1.00 .0101 .0100 .9900
.01 2.00 .0050 .0100 1.9800
.01 5.00 .0020 .0100 4.9500
.01 10.00 .0010 .0100 9.9000
.10 1.00 .1054 .1000 .9000
.10 2.00 .0527 .1000 1.8000
.10 5.00 .0211 .1000 4.5000
.10 10.00 .0105 .1000 9.0000
.20 1.00 .2231 .2000 .8000
.20 2.00 .1116 .2000 1.6000
.20 5.00 .0446 .2000 4.0000
.20 10.00 .0223 .2000 8.0000
.30 1.00 .3567 .3000 .7000
.30 2.00 .1783 .3000 1.4000
.30 5.00 .0713 .3000 3.5000
.30 10.00 .0357 .3000 7.0000
.40 1.00 .5108 .4000 .6000
.40 2.00 .2554 .4000 1.2000
.40 5.00 .1022 .4000 3.0000
.40 10.00 .0511 .4000 6.0000
.50 1.00 .6931 .5000 .5000
.50 2.00 .3466 .5000 1.0000
.50 5.00 .1386 .5000 2.5000
.50 10.00 .0693 .5000 5.0000
.60 1.00 .9163 .6000 .4000
.60 2.00 .4581 .6000 .8000
.60 5.00 .1833 .6000 2.0000
.60 10.00 .0916 .6000 4.0000
.70 1.00 1.2040 .7000 .3000
.70 2.00 .6020 .7000 .6000
.70 5.00 .2408 .7000 1.5000
.70 10.00 .1204 .7000 3.0000
.80 1.00 1.6094 .8000 .2000
.80 2.00 .8047 .8000 .4000
.80 5.00 .3219 .8000 1.0000
.80 10.00 .1609 .8000 2.0000
.90 1.00 2.3026 .9000 .1000
.90 2.00 1.1513 .9000 .2000
.90 5.00 .4605 .9000 .5000
.90 10.00 .2303 .9000 1.0000
.99 1.00 4.6052 .9900 .0100
.99 2.00 2.3026 .9900 .0200
.99 5.00 .9210 .9900 .0500
.99 10.00 .4605 .9900 .1000
])
RANDIST_CHECK([f], [df1 df2], [cdf pdf], [dnl
P df1 df2 x cdf pdf
.01 1.00 1.00 .0002 .0100 20.2576
.01 1.00 2.00 .0002 .0100 24.9950
.01 1.00 5.00 .0002 .0100 28.8162
.01 1.00 10.00 .0002 .0100 30.2774
.01 2.00 1.00 .0102 .0100 .9703
.01 2.00 2.00 .0101 .0100 .9801
.01 2.00 5.00 .0101 .0100 .9860
.01 2.00 10.00 .0101 .0100 .9880
.01 5.00 1.00 .0615 .0100 .3238
.01 5.00 2.00 .0753 .0100 .2793
.01 5.00 5.00 .0912 .0100 .2417
.01 5.00 10.00 .0995 .0100 .2261
.01 10.00 1.00 .0996 .0100 .2704
.01 10.00 2.00 .1323 .0100 .2275
.01 10.00 5.00 .1774 .0100 .1907
.01 10.00 10.00 .2062 .0100 .1747
.10 1.00 1.00 .0251 .1000 1.9605
.10 1.00 2.00 .0202 .1000 2.4503
.10 1.00 5.00 .0175 .1000 2.8421
.10 1.00 10.00 .0166 .1000 2.9915
.10 2.00 1.00 .1173 .1000 .7290
.10 2.00 2.00 .1111 .1000 .8100
.10 2.00 5.00 .1076 .1000 .8629
.10 2.00 10.00 .1065 .1000 .8812
.10 5.00 1.00 .2463 .1000 .5220
.10 5.00 2.00 .2646 .1000 .5687
.10 5.00 5.00 .2896 .1000 .5934
.10 5.00 10.00 .3033 .1000 .6006
.10 10.00 1.00 .3044 .1000 .4857
.10 10.00 2.00 .3419 .1000 .5396
.10 10.00 5.00 .3966 .1000 .5816
.10 10.00 10.00 .4306 .1000 .6031
.20 1.00 1.00 .1056 .2000 .8861
.20 1.00 2.00 .0833 .2000 1.1520
.20 1.00 5.00 .0714 .2000 1.3616
.20 1.00 10.00 .0677 .2000 1.4410
.20 2.00 1.00 .2812 .2000 .5120
.20 2.00 2.00 .2500 .2000 .6400
.20 2.00 5.00 .2334 .2000 .7317
.20 2.00 10.00 .2282 .2000 .7651
.20 5.00 1.00 .4591 .2000 .4124
.20 5.00 2.00 .4426 .2000 .5362
.20 5.00 5.00 .4489 .2000 .6397
.20 5.00 10.00 .4563 .2000 .6842
.20 10.00 1.00 .5311 .2000 .3893
.20 10.00 2.00 .5267 .2000 .5225
.20 10.00 5.00 .5547 .2000 .6584
.20 10.00 10.00 .5775 .2000 .7343
.30 1.00 1.00 .2596 .3000 .4960
.30 1.00 2.00 .1978 .3000 .6901
.30 1.00 5.00 .1667 .3000 .8428
.30 1.00 10.00 .1573 .3000 .9004
.30 2.00 1.00 .5204 .3000 .3430
.30 2.00 2.00 .4286 .3000 .4900
.30 2.00 5.00 .3834 .3000 .6069
.30 2.00 10.00 .3697 .3000 .6518
.30 5.00 1.00 .7486 .3000 .2880
.30 5.00 2.00 .6466 .3000 .4433
.30 5.00 5.00 .6094 .3000 .5984
.30 5.00 10.00 .6026 .3000 .6729
.30 10.00 1.00 .8370 .3000 .2732
.30 10.00 2.00 .7346 .3000 .4370
.30 10.00 5.00 .7085 .3000 .6313
.30 10.00 10.00 .7112 .3000 .7487
.40 1.00 1.00 .5279 .4000 .2868
.40 1.00 2.00 .3810 .4000 .4410
.40 1.00 5.00 .3130 .4000 .5656
.40 1.00 10.00 .2933 .4000 .6129
.40 2.00 1.00 .8889 .4000 .2160
.40 2.00 2.00 .6667 .4000 .3600
.40 2.00 5.00 .5668 .4000 .4891
.40 2.00 10.00 .5378 .4000 .5417
.40 5.00 1.00 1.1826 .4000 .1847
.40 5.00 2.00 .9035 .4000 .3396
.40 5.00 5.00 .7879 .4000 .5199
.40 5.00 10.00 .7573 .4000 .6147
.40 10.00 1.00 1.2941 .4000 .1755
.40 10.00 2.00 .9944 .4000 .3368
.40 10.00 5.00 .8763 .4000 .5572
.40 10.00 10.00 .8484 .4000 .7011
.50 1.00 1.00 1.0000 .5000 .1592
.50 1.00 2.00 .6667 .5000 .2813
.50 1.00 5.00 .5281 .5000 .3865
.50 1.00 10.00 .4897 .5000 .4274
.50 2.00 1.00 1.5000 .5000 .1250
.50 2.00 2.00 1.0000 .5000 .2500
.50 2.00 5.00 .7988 .5000 .3789
.50 2.00 10.00 .7435 .5000 .4353
.50 5.00 1.00 1.8937 .5000 .1078
.50 5.00 2.00 1.2519 .5000 .2418
.50 5.00 5.00 1.0000 .5000 .4244
.50 5.00 10.00 .9319 .5000 .5295
.50 10.00 1.00 2.0419 .5000 .1025
.50 10.00 2.00 1.3450 .5000 .2406
.50 10.00 5.00 1.0730 .5000 .4599
.50 10.00 10.00 1.0000 .5000 .6152
.60 1.00 1.00 1.8944 .6000 .0799
.60 1.00 2.00 1.1250 .6000 .1707
.60 1.00 5.00 .8456 .6000 .2583
.60 1.00 10.00 .7727 .6000 .2939
.60 2.00 1.00 2.6250 .6000 .0640
.60 2.00 2.00 1.5000 .6000 .1600
.60 2.00 5.00 1.1067 .6000 .2773
.60 2.00 10.00 1.0056 .6000 .3330
.60 5.00 1.00 3.1953 .6000 .0554
.60 5.00 2.00 1.7644 .6000 .1571
.60 5.00 5.00 1.2692 .6000 .3227
.60 5.00 10.00 1.1412 .6000 .4278
.60 10.00 1.00 3.4100 .6000 .0527
.60 10.00 2.00 1.8593 .6000 .1567
.60 10.00 5.00 1.3204 .6000 .3526
.60 10.00 10.00 1.1787 .6000 .5047
.70 1.00 1.00 3.8518 .7000 .0334
.70 1.00 2.00 1.9216 .7000 .0929
.70 1.00 5.00 1.3358 .7000 .1614
.70 1.00 10.00 1.1948 .7000 .1914
.70 2.00 1.00 5.0556 .7000 .0270
.70 2.00 2.00 2.3333 .7000 .0900
.70 2.00 5.00 1.5466 .7000 .1853
.70 2.00 10.00 1.3613 .7000 .2358
.70 5.00 1.00 6.0006 .7000 .0234
.70 5.00 2.00 2.6084 .7000 .0892
.70 5.00 5.00 1.6410 .7000 .2222
.70 5.00 10.00 1.4114 .7000 .3169
.70 10.00 1.00 6.3579 .7000 .0223
.70 10.00 2.00 2.7049 .7000 .0891
.70 10.00 5.00 1.6595 .7000 .2443
.70 10.00 10.00 1.4061 .7000 .3787
.80 1.00 1.00 9.4721 .8000 .0099
.80 1.00 2.00 3.5556 .8000 .0405
.80 1.00 5.00 2.1782 .8000 .0869
.80 1.00 10.00 1.8829 .8000 .1098
.80 2.00 1.00 12.0000 .8000 .0080
.80 2.00 2.00 4.0000 .8000 .0400
.80 2.00 5.00 2.2591 .8000 .1051
.80 2.00 10.00 1.8986 .8000 .1450
.80 5.00 1.00 14.0084 .8000 .0069
.80 5.00 2.00 4.2844 .8000 .0399
.80 5.00 5.00 2.2275 .8000 .1289
.80 5.00 10.00 1.8027 .8000 .2026
.80 10.00 1.00 14.7719 .8000 .0066
.80 10.00 2.00 4.3822 .8000 .0398
.80 10.00 5.00 2.1914 .8000 .1425
.80 10.00 10.00 1.7316 .8000 .2449
.90 1.00 1.00 39.8635 .9000 .0012
.90 1.00 2.00 8.5263 .9000 .0100
.90 1.00 5.00 4.0604 .9000 .0317
.90 1.00 10.00 3.2850 .9000 .0450
.90 2.00 1.00 49.5000 .9000 .0010
.90 2.00 2.00 9.0000 .9000 .0100
.90 2.00 5.00 3.7797 .9000 .0398
.90 2.00 10.00 2.9245 .9000 .0631
.90 5.00 1.00 57.2401 .9000 .0009
.90 5.00 2.00 9.2926 .9000 .0100
.90 5.00 5.00 3.4530 .9000 .0498
.90 5.00 10.00 2.5216 .9000 .0915
.90 10.00 1.00 60.1950 .9000 .0008
.90 10.00 2.00 9.3916 .9000 .0100
.90 10.00 5.00 3.2974 .9000 .0552
.90 10.00 10.00 2.3226 .9000 .1118
.99 1.00 1.00 4052.1807 .9900 .0000
.99 1.00 2.00 98.5025 .9900 .0001
.99 1.00 5.00 16.2582 .9900 .0012
.99 1.00 10.00 10.0443 .9900 .0027
.99 2.00 1.00 4999.5000 .9900 .0000
.99 2.00 2.00 99.0000 .9900 .0001
.99 2.00 5.00 13.2739 .9900 .0016
.99 2.00 10.00 7.5594 .9900 .0040
.99 5.00 1.00 5763.6496 .9900 .0000
.99 5.00 2.00 99.2993 .9900 .0001
.99 5.00 5.00 10.9670 .9900 .0020
.99 5.00 10.00 5.6363 .9900 .0060
.99 10.00 1.00 6055.8467 .9900 .0000
.99 10.00 2.00 99.3992 .9900 .0001
.99 10.00 5.00 10.0510 .9900 .0022
.99 10.00 10.00 4.8491 .9900 .0074
])
RANDIST_CHECK([gamma], [a b], [cdf pdf], [dnl
P a b x cdf pdf
.01 .50 -10.00 . . .
.01 .50 -5.00 . . .
.01 .50 .00 . . .
.01 .50 5.00 .0000 .0100 318.2766
.01 .50 10.00 .0000 .0100 636.5531
.01 1.00 -10.00 . . .
.01 1.00 -5.00 . . .
.01 1.00 .00 . . .
.01 1.00 5.00 .0020 .0100 4.9500
.01 1.00 10.00 .0010 .0100 9.9000
.01 2.00 -10.00 . . .
.01 2.00 -5.00 . . .
.01 2.00 .00 . . .
.01 2.00 5.00 .0297 .0100 .6402
.01 2.00 10.00 .0149 .0100 1.2805
.01 5.00 -10.00 . . .
.01 5.00 -5.00 . . .
.01 5.00 .00 . . .
.01 5.00 5.00 .2558 .0100 .1552
.01 5.00 10.00 .1279 .0100 .3104
.10 .50 -10.00 . . .
.10 .50 -5.00 . . .
.10 .50 .00 . . .
.10 .50 5.00 .0016 .1000 31.4977
.10 .50 10.00 .0008 .1000 62.9955
.10 1.00 -10.00 . . .
.10 1.00 -5.00 . . .
.10 1.00 .00 . . .
.10 1.00 5.00 .0211 .1000 4.5000
.10 1.00 10.00 .0105 .1000 9.0000
.10 2.00 -10.00 . . .
.10 2.00 -5.00 . . .
.10 2.00 .00 . . .
.10 2.00 5.00 .1064 .1000 1.5623
.10 2.00 10.00 .0532 .1000 3.1246
.10 5.00 -10.00 . . .
.10 5.00 -5.00 . . .
.10 5.00 .00 . . .
.10 5.00 5.00 .4865 .1000 .6406
.10 5.00 10.00 .2433 .1000 1.2812
.20 .50 -10.00 . . .
.20 .50 -5.00 . . .
.20 .50 .00 . . .
.20 .50 5.00 .0064 .2000 15.2495
.20 .50 10.00 .0032 .2000 30.4991
.20 1.00 -10.00 . . .
.20 1.00 -5.00 . . .
.20 1.00 .00 . . .
.20 1.00 5.00 .0446 .2000 4.0000
.20 1.00 10.00 .0223 .2000 8.0000
.20 2.00 -10.00 . . .
.20 2.00 -5.00 . . .
.20 2.00 .00 . . .
.20 2.00 5.00 .1649 .2000 1.8075
.20 2.00 10.00 .0824 .2000 3.6150
.20 5.00 -10.00 . . .
.20 5.00 -5.00 . . .
.20 5.00 .00 . . .
.20 5.00 5.00 .6179 .2000 .8641
.20 5.00 10.00 .3090 .2000 1.7282
.30 .50 -10.00 . . .
.30 .50 -5.00 . . .
.30 .50 .00 . . .
.30 .50 5.00 .0148 .3000 9.6128
.30 .50 10.00 .0074 .3000 19.2255
.30 1.00 -10.00 . . .
.30 1.00 -5.00 . . .
.30 1.00 .00 . . .
.30 1.00 5.00 .0713 .3000 3.5000
.30 1.00 10.00 .0357 .3000 7.0000
.30 2.00 -10.00 . . .
.30 2.00 -5.00 . . .
.30 2.00 .00 . . .
.30 2.00 5.00 .2195 .3000 1.8312
.30 2.00 10.00 .1097 .3000 3.6625
.30 5.00 -10.00 . . .
.30 5.00 -5.00 . . .
.30 5.00 .00 . . .
.30 5.00 5.00 .7267 .3000 .9595
.30 5.00 10.00 .3634 .3000 1.9190
.40 .50 -10.00 . . .
.40 .50 -5.00 . . .
.40 .50 .00 . . .
.40 .50 5.00 .0275 .4000 6.6303
.40 .50 10.00 .0137 .4000 13.2606
.40 1.00 -10.00 . . .
.40 1.00 -5.00 . . .
.40 1.00 .00 . . .
.40 1.00 5.00 .1022 .4000 3.0000
.40 1.00 10.00 .0511 .4000 6.0000
.40 2.00 -10.00 . . .
.40 2.00 -5.00 . . .
.40 2.00 .00 . . .
.40 2.00 5.00 .2753 .4000 1.7376
.40 2.00 10.00 .1376 .4000 3.4752
.40 5.00 -10.00 . . .
.40 5.00 -5.00 . . .
.40 5.00 .00 . . .
.40 5.00 5.00 .8295 .4000 .9742
.40 5.00 10.00 .4148 .4000 1.9485
.50 .50 -10.00 . . .
.50 .50 -5.00 . . .
.50 .50 .00 . . .
.50 .50 5.00 .0455 .5000 4.7114
.50 .50 10.00 .0227 .5000 9.4227
.50 1.00 -10.00 . . .
.50 1.00 -5.00 . . .
.50 1.00 .00 . . .
.50 1.00 5.00 .1386 .5000 2.5000
.50 1.00 10.00 .0693 .5000 5.0000
.50 2.00 -10.00 . . .
.50 2.00 -5.00 . . .
.50 2.00 .00 . . .
.50 2.00 5.00 .3357 .5000 1.5666
.50 2.00 10.00 .1678 .5000 3.1332
.50 5.00 -10.00 . . .
.50 5.00 -5.00 . . .
.50 5.00 .00 . . .
.50 5.00 5.00 .9342 .5000 .9286
.50 5.00 10.00 .4671 .5000 1.8571
.60 .50 -10.00 . . .
.60 .50 -5.00 . . .
.60 .50 .00 . . .
.60 .50 5.00 .0708 .6000 3.3265
.60 .50 10.00 .0354 .6000 6.6529
.60 1.00 -10.00 . . .
.60 1.00 -5.00 . . .
.60 1.00 .00 . . .
.60 1.00 5.00 .1833 .6000 2.0000
.60 1.00 10.00 .0916 .6000 4.0000
.60 2.00 -10.00 . . .
.60 2.00 -5.00 . . .
.60 2.00 .00 . . .
.60 2.00 5.00 .4045 .6000 1.3383
.60 2.00 10.00 .2022 .6000 2.6765
.60 5.00 -10.00 . . .
.60 5.00 -5.00 . . .
.60 5.00 .00 . . .
.60 5.00 5.00 1.0473 .6000 .8332
.60 5.00 10.00 .5237 .6000 1.6663
.70 .50 -10.00 . . .
.70 .50 -5.00 . . .
.70 .50 .00 . . .
.70 .50 5.00 .1074 .7000 2.2496
.70 .50 10.00 .0537 .7000 4.4993
.70 1.00 -10.00 . . .
.70 1.00 -5.00 . . .
.70 1.00 .00 . . .
.70 1.00 5.00 .2408 .7000 1.5000
.70 1.00 10.00 .1204 .7000 3.0000
.70 2.00 -10.00 . . .
.70 2.00 -5.00 . . .
.70 2.00 .00 . . .
.70 2.00 5.00 .4878 .7000 1.0639
.70 2.00 10.00 .2439 .7000 2.1277
.70 5.00 -10.00 . . .
.70 5.00 -5.00 . . .
.70 5.00 .00 . . .
.70 5.00 5.00 1.1781 .7000 .6937
.70 5.00 10.00 .5890 .7000 1.3874
.80 .50 -10.00 . . .
.80 .50 -5.00 . . .
.80 .50 .00 . . .
.80 .50 5.00 .1642 .8000 1.3694
.80 .50 10.00 .0821 .8000 2.7388
.80 1.00 -10.00 . . .
.80 1.00 -5.00 . . .
.80 1.00 .00 . . .
.80 1.00 5.00 .3219 .8000 1.0000
.80 1.00 10.00 .1609 .8000 2.0000
.80 2.00 -10.00 . . .
.80 2.00 -5.00 . . .
.80 2.00 .00 . . .
.80 2.00 5.00 .5989 .8000 .7496
.80 2.00 10.00 .2994 .8000 1.4993
.80 5.00 -10.00 . . .
.80 5.00 -5.00 . . .
.80 5.00 .00 . . .
.80 5.00 5.00 1.3442 .8000 .5124
.80 5.00 10.00 .6721 .8000 1.0248
.90 .50 -10.00 . . .
.90 .50 -5.00 . . .
.90 .50 .00 . . .
.90 .50 5.00 .2706 .9000 .6270
.90 .50 10.00 .1353 .9000 1.2540
.90 1.00 -10.00 . . .
.90 1.00 -5.00 . . .
.90 1.00 .00 . . .
.90 1.00 5.00 .4605 .9000 .5000
.90 1.00 10.00 .2303 .9000 1.0000
.90 2.00 -10.00 . . .
.90 2.00 -5.00 . . .
.90 2.00 .00 . . .
.90 2.00 5.00 .7779 .9000 .3977
.90 2.00 10.00 .3890 .9000 .7955
.90 5.00 -10.00 . . .
.90 5.00 -5.00 . . .
.90 5.00 .00 . . .
.90 5.00 5.00 1.5987 .9000 .2872
.90 5.00 10.00 .7994 .9000 .5744
.99 .50 -10.00 . . .
.99 .50 -5.00 . . .
.99 .50 .00 . . .
.99 .50 5.00 .6635 .9900 .0561
.99 .50 10.00 .3317 .9900 .1123
.99 1.00 -10.00 . . .
.99 1.00 -5.00 . . .
.99 1.00 .00 . . .
.99 1.00 5.00 .9210 .9900 .0500
.99 1.00 10.00 .4605 .9900 .1000
.99 2.00 -10.00 . . .
.99 2.00 -5.00 . . .
.99 2.00 .00 . . .
.99 2.00 5.00 1.3277 .9900 .0435
.99 2.00 10.00 .6638 .9900 .0869
.99 5.00 -10.00 . . .
.99 5.00 -5.00 . . .
.99 5.00 .00 . . .
.99 5.00 5.00 2.3209 .9900 .0345
.99 5.00 10.00 1.1605 .9900 .0689
])
RANDIST_CHECK([laplace], [a b], [cdf pdf], [dnl
P a b x cdf pdf
.01 -10.00 .50 -11.9560 .0100 .0200
.01 -10.00 1.00 -13.9120 .0100 .0100
.01 -10.00 2.00 -17.8240 .0100 .0050
.01 -10.00 5.00 -29.5601 .0100 .0020
.01 -5.00 .50 -6.9560 .0100 .0200
.01 -5.00 1.00 -8.9120 .0100 .0100
.01 -5.00 2.00 -12.8240 .0100 .0050
.01 -5.00 5.00 -24.5601 .0100 .0020
.01 .00 .50 -1.9560 .0100 .0200
.01 .00 1.00 -3.9120 .0100 .0100
.01 .00 2.00 -7.8240 .0100 .0050
.01 .00 5.00 -19.5601 .0100 .0020
.01 5.00 .50 3.0440 .0100 .0200
.01 5.00 1.00 1.0880 .0100 .0100
.01 5.00 2.00 -2.8240 .0100 .0050
.01 5.00 5.00 -14.5601 .0100 .0020
.01 10.00 .50 8.0440 .0100 .0200
.01 10.00 1.00 6.0880 .0100 .0100
.01 10.00 2.00 2.1760 .0100 .0050
.01 10.00 5.00 -9.5601 .0100 .0020
.10 -10.00 .50 -10.8047 .1000 .2000
.10 -10.00 1.00 -11.6094 .1000 .1000
.10 -10.00 2.00 -13.2189 .1000 .0500
.10 -10.00 5.00 -18.0472 .1000 .0200
.10 -5.00 .50 -5.8047 .1000 .2000
.10 -5.00 1.00 -6.6094 .1000 .1000
.10 -5.00 2.00 -8.2189 .1000 .0500
.10 -5.00 5.00 -13.0472 .1000 .0200
.10 .00 .50 -.8047 .1000 .2000
.10 .00 1.00 -1.6094 .1000 .1000
.10 .00 2.00 -3.2189 .1000 .0500
.10 .00 5.00 -8.0472 .1000 .0200
.10 5.00 .50 4.1953 .1000 .2000
.10 5.00 1.00 3.3906 .1000 .1000
.10 5.00 2.00 1.7811 .1000 .0500
.10 5.00 5.00 -3.0472 .1000 .0200
.10 10.00 .50 9.1953 .1000 .2000
.10 10.00 1.00 8.3906 .1000 .1000
.10 10.00 2.00 6.7811 .1000 .0500
.10 10.00 5.00 1.9528 .1000 .0200
.20 -10.00 .50 -10.4581 .2000 .4000
.20 -10.00 1.00 -10.9163 .2000 .2000
.20 -10.00 2.00 -11.8326 .2000 .1000
.20 -10.00 5.00 -14.5815 .2000 .0400
.20 -5.00 .50 -5.4581 .2000 .4000
.20 -5.00 1.00 -5.9163 .2000 .2000
.20 -5.00 2.00 -6.8326 .2000 .1000
.20 -5.00 5.00 -9.5815 .2000 .0400
.20 .00 .50 -.4581 .2000 .4000
.20 .00 1.00 -.9163 .2000 .2000
.20 .00 2.00 -1.8326 .2000 .1000
.20 .00 5.00 -4.5815 .2000 .0400
.20 5.00 .50 4.5419 .2000 .4000
.20 5.00 1.00 4.0837 .2000 .2000
.20 5.00 2.00 3.1674 .2000 .1000
.20 5.00 5.00 .4185 .2000 .0400
.20 10.00 .50 9.5419 .2000 .4000
.20 10.00 1.00 9.0837 .2000 .2000
.20 10.00 2.00 8.1674 .2000 .1000
.20 10.00 5.00 5.4185 .2000 .0400
.30 -10.00 .50 -10.2554 .3000 .6000
.30 -10.00 1.00 -10.5108 .3000 .3000
.30 -10.00 2.00 -11.0217 .3000 .1500
.30 -10.00 5.00 -12.5541 .3000 .0600
.30 -5.00 .50 -5.2554 .3000 .6000
.30 -5.00 1.00 -5.5108 .3000 .3000
.30 -5.00 2.00 -6.0217 .3000 .1500
.30 -5.00 5.00 -7.5541 .3000 .0600
.30 .00 .50 -.2554 .3000 .6000
.30 .00 1.00 -.5108 .3000 .3000
.30 .00 2.00 -1.0217 .3000 .1500
.30 .00 5.00 -2.5541 .3000 .0600
.30 5.00 .50 4.7446 .3000 .6000
.30 5.00 1.00 4.4892 .3000 .3000
.30 5.00 2.00 3.9783 .3000 .1500
.30 5.00 5.00 2.4459 .3000 .0600
.30 10.00 .50 9.7446 .3000 .6000
.30 10.00 1.00 9.4892 .3000 .3000
.30 10.00 2.00 8.9783 .3000 .1500
.30 10.00 5.00 7.4459 .3000 .0600
.40 -10.00 .50 -10.1116 .4000 .8000
.40 -10.00 1.00 -10.2231 .4000 .4000
.40 -10.00 2.00 -10.4463 .4000 .2000
.40 -10.00 5.00 -11.1157 .4000 .0800
.40 -5.00 .50 -5.1116 .4000 .8000
.40 -5.00 1.00 -5.2231 .4000 .4000
.40 -5.00 2.00 -5.4463 .4000 .2000
.40 -5.00 5.00 -6.1157 .4000 .0800
.40 .00 .50 -.1116 .4000 .8000
.40 .00 1.00 -.2231 .4000 .4000
.40 .00 2.00 -.4463 .4000 .2000
.40 .00 5.00 -1.1157 .4000 .0800
.40 5.00 .50 4.8884 .4000 .8000
.40 5.00 1.00 4.7769 .4000 .4000
.40 5.00 2.00 4.5537 .4000 .2000
.40 5.00 5.00 3.8843 .4000 .0800
.40 10.00 .50 9.8884 .4000 .8000
.40 10.00 1.00 9.7769 .4000 .4000
.40 10.00 2.00 9.5537 .4000 .2000
.40 10.00 5.00 8.8843 .4000 .0800
.50 -10.00 .50 -10.0000 .5000 1.0000
.50 -10.00 1.00 -10.0000 .5000 .5000
.50 -10.00 2.00 -10.0000 .5000 .2500
.50 -10.00 5.00 -10.0000 .5000 .1000
.50 -5.00 .50 -5.0000 .5000 1.0000
.50 -5.00 1.00 -5.0000 .5000 .5000
.50 -5.00 2.00 -5.0000 .5000 .2500
.50 -5.00 5.00 -5.0000 .5000 .1000
.50 .00 .50 .0000 .5000 1.0000
.50 .00 1.00 .0000 .5000 .5000
.50 .00 2.00 .0000 .5000 .2500
.50 .00 5.00 .0000 .5000 .1000
.50 5.00 .50 5.0000 .5000 1.0000
.50 5.00 1.00 5.0000 .5000 .5000
.50 5.00 2.00 5.0000 .5000 .2500
.50 5.00 5.00 5.0000 .5000 .1000
.50 10.00 .50 10.0000 .5000 1.0000
.50 10.00 1.00 10.0000 .5000 .5000
.50 10.00 2.00 10.0000 .5000 .2500
.50 10.00 5.00 10.0000 .5000 .1000
.60 -10.00 .50 -9.8884 .6000 .8000
.60 -10.00 1.00 -9.7769 .6000 .4000
.60 -10.00 2.00 -9.5537 .6000 .2000
.60 -10.00 5.00 -8.8843 .6000 .0800
.60 -5.00 .50 -4.8884 .6000 .8000
.60 -5.00 1.00 -4.7769 .6000 .4000
.60 -5.00 2.00 -4.5537 .6000 .2000
.60 -5.00 5.00 -3.8843 .6000 .0800
.60 .00 .50 .1116 .6000 .8000
.60 .00 1.00 .2231 .6000 .4000
.60 .00 2.00 .4463 .6000 .2000
.60 .00 5.00 1.1157 .6000 .0800
.60 5.00 .50 5.1116 .6000 .8000
.60 5.00 1.00 5.2231 .6000 .4000
.60 5.00 2.00 5.4463 .6000 .2000
.60 5.00 5.00 6.1157 .6000 .0800
.60 10.00 .50 10.1116 .6000 .8000
.60 10.00 1.00 10.2231 .6000 .4000
.60 10.00 2.00 10.4463 .6000 .2000
.60 10.00 5.00 11.1157 .6000 .0800
.70 -10.00 .50 -9.7446 .7000 .6000
.70 -10.00 1.00 -9.4892 .7000 .3000
.70 -10.00 2.00 -8.9783 .7000 .1500
.70 -10.00 5.00 -7.4459 .7000 .0600
.70 -5.00 .50 -4.7446 .7000 .6000
.70 -5.00 1.00 -4.4892 .7000 .3000
.70 -5.00 2.00 -3.9783 .7000 .1500
.70 -5.00 5.00 -2.4459 .7000 .0600
.70 .00 .50 .2554 .7000 .6000
.70 .00 1.00 .5108 .7000 .3000
.70 .00 2.00 1.0217 .7000 .1500
.70 .00 5.00 2.5541 .7000 .0600
.70 5.00 .50 5.2554 .7000 .6000
.70 5.00 1.00 5.5108 .7000 .3000
.70 5.00 2.00 6.0217 .7000 .1500
.70 5.00 5.00 7.5541 .7000 .0600
.70 10.00 .50 10.2554 .7000 .6000
.70 10.00 1.00 10.5108 .7000 .3000
.70 10.00 2.00 11.0217 .7000 .1500
.70 10.00 5.00 12.5541 .7000 .0600
.80 -10.00 .50 -9.5419 .8000 .4000
.80 -10.00 1.00 -9.0837 .8000 .2000
.80 -10.00 2.00 -8.1674 .8000 .1000
.80 -10.00 5.00 -5.4185 .8000 .0400
.80 -5.00 .50 -4.5419 .8000 .4000
.80 -5.00 1.00 -4.0837 .8000 .2000
.80 -5.00 2.00 -3.1674 .8000 .1000
.80 -5.00 5.00 -.4185 .8000 .0400
.80 .00 .50 .4581 .8000 .4000
.80 .00 1.00 .9163 .8000 .2000
.80 .00 2.00 1.8326 .8000 .1000
.80 .00 5.00 4.5815 .8000 .0400
.80 5.00 .50 5.4581 .8000 .4000
.80 5.00 1.00 5.9163 .8000 .2000
.80 5.00 2.00 6.8326 .8000 .1000
.80 5.00 5.00 9.5815 .8000 .0400
.80 10.00 .50 10.4581 .8000 .4000
.80 10.00 1.00 10.9163 .8000 .2000
.80 10.00 2.00 11.8326 .8000 .1000
.80 10.00 5.00 14.5815 .8000 .0400
.90 -10.00 .50 -9.1953 .9000 .2000
.90 -10.00 1.00 -8.3906 .9000 .1000
.90 -10.00 2.00 -6.7811 .9000 .0500
.90 -10.00 5.00 -1.9528 .9000 .0200
.90 -5.00 .50 -4.1953 .9000 .2000
.90 -5.00 1.00 -3.3906 .9000 .1000
.90 -5.00 2.00 -1.7811 .9000 .0500
.90 -5.00 5.00 3.0472 .9000 .0200
.90 .00 .50 .8047 .9000 .2000
.90 .00 1.00 1.6094 .9000 .1000
.90 .00 2.00 3.2189 .9000 .0500
.90 .00 5.00 8.0472 .9000 .0200
.90 5.00 .50 5.8047 .9000 .2000
.90 5.00 1.00 6.6094 .9000 .1000
.90 5.00 2.00 8.2189 .9000 .0500
.90 5.00 5.00 13.0472 .9000 .0200
.90 10.00 .50 10.8047 .9000 .2000
.90 10.00 1.00 11.6094 .9000 .1000
.90 10.00 2.00 13.2189 .9000 .0500
.90 10.00 5.00 18.0472 .9000 .0200
.99 -10.00 .50 -8.0440 .9900 .0200
.99 -10.00 1.00 -6.0880 .9900 .0100
.99 -10.00 2.00 -2.1760 .9900 .0050
.99 -10.00 5.00 9.5601 .9900 .0020
.99 -5.00 .50 -3.0440 .9900 .0200
.99 -5.00 1.00 -1.0880 .9900 .0100
.99 -5.00 2.00 2.8240 .9900 .0050
.99 -5.00 5.00 14.5601 .9900 .0020
.99 .00 .50 1.9560 .9900 .0200
.99 .00 1.00 3.9120 .9900 .0100
.99 .00 2.00 7.8240 .9900 .0050
.99 .00 5.00 19.5601 .9900 .0020
.99 5.00 .50 6.9560 .9900 .0200
.99 5.00 1.00 8.9120 .9900 .0100
.99 5.00 2.00 12.8240 .9900 .0050
.99 5.00 5.00 24.5601 .9900 .0020
.99 10.00 .50 11.9560 .9900 .0200
.99 10.00 1.00 13.9120 .9900 .0100
.99 10.00 2.00 17.8240 .9900 .0050
.99 10.00 5.00 29.5601 .9900 .0020
])
RANDIST_CHECK([logistic], [a b], [cdf pdf], [dnl
P a b x cdf pdf
.01 -10.00 .50 -12.2976 .0100 .0198
.01 -10.00 1.00 -14.5951 .0100 .0099
.01 -10.00 2.00 -19.1902 .0100 .0049
.01 -10.00 5.00 -32.9756 .0100 .0020
.01 -5.00 .50 -7.2976 .0100 .0198
.01 -5.00 1.00 -9.5951 .0100 .0099
.01 -5.00 2.00 -14.1902 .0100 .0050
.01 -5.00 5.00 -27.9756 .0100 .0020
.01 .00 .50 -2.2976 .0100 .0198
.01 .00 1.00 -4.5951 .0100 .0099
.01 .00 2.00 -9.1902 .0100 .0050
.01 .00 5.00 -22.9756 .0100 .0020
.01 5.00 .50 2.7024 .0100 .0198
.01 5.00 1.00 .4049 .0100 .0099
.01 5.00 2.00 -4.1902 .0100 .0050
.01 5.00 5.00 -17.9756 .0100 .0020
.01 10.00 .50 7.7024 .0100 .0198
.01 10.00 1.00 5.4049 .0100 .0099
.01 10.00 2.00 .8098 .0100 .0050
.01 10.00 5.00 -12.9756 .0100 .0020
.10 -10.00 .50 -11.0986 .1000 .1800
.10 -10.00 1.00 -12.1972 .1000 .0900
.10 -10.00 2.00 -14.3944 .1000 .0450
.10 -10.00 5.00 -20.9861 .1000 .0180
.10 -5.00 .50 -6.0986 .1000 .1800
.10 -5.00 1.00 -7.1972 .1000 .0900
.10 -5.00 2.00 -9.3944 .1000 .0450
.10 -5.00 5.00 -15.9861 .1000 .0180
.10 .00 .50 -1.0986 .1000 .1800
.10 .00 1.00 -2.1972 .1000 .0900
.10 .00 2.00 -4.3944 .1000 .0450
.10 .00 5.00 -10.9861 .1000 .0180
.10 5.00 .50 3.9014 .1000 .1800
.10 5.00 1.00 2.8028 .1000 .0900
.10 5.00 2.00 .6056 .1000 .0450
.10 5.00 5.00 -5.9861 .1000 .0180
.10 10.00 .50 8.9014 .1000 .1800
.10 10.00 1.00 7.8028 .1000 .0900
.10 10.00 2.00 5.6056 .1000 .0450
.10 10.00 5.00 -.9861 .1000 .0180
.20 -10.00 .50 -10.6931 .2000 .3200
.20 -10.00 1.00 -11.3863 .2000 .1600
.20 -10.00 2.00 -12.7726 .2000 .0800
.20 -10.00 5.00 -16.9315 .2000 .0320
.20 -5.00 .50 -5.6931 .2000 .3200
.20 -5.00 1.00 -6.3863 .2000 .1600
.20 -5.00 2.00 -7.7726 .2000 .0800
.20 -5.00 5.00 -11.9315 .2000 .0320
.20 .00 .50 -.6931 .2000 .3200
.20 .00 1.00 -1.3863 .2000 .1600
.20 .00 2.00 -2.7726 .2000 .0800
.20 .00 5.00 -6.9315 .2000 .0320
.20 5.00 .50 4.3069 .2000 .3200
.20 5.00 1.00 3.6137 .2000 .1600
.20 5.00 2.00 2.2274 .2000 .0800
.20 5.00 5.00 -1.9315 .2000 .0320
.20 10.00 .50 9.3069 .2000 .3200
.20 10.00 1.00 8.6137 .2000 .1600
.20 10.00 2.00 7.2274 .2000 .0800
.20 10.00 5.00 3.0685 .2000 .0320
.30 -10.00 .50 -10.4236 .3000 .4200
.30 -10.00 1.00 -10.8473 .3000 .2100
.30 -10.00 2.00 -11.6946 .3000 .1050
.30 -10.00 5.00 -14.2365 .3000 .0420
.30 -5.00 .50 -5.4236 .3000 .4200
.30 -5.00 1.00 -5.8473 .3000 .2100
.30 -5.00 2.00 -6.6946 .3000 .1050
.30 -5.00 5.00 -9.2365 .3000 .0420
.30 .00 .50 -.4236 .3000 .4200
.30 .00 1.00 -.8473 .3000 .2100
.30 .00 2.00 -1.6946 .3000 .1050
.30 .00 5.00 -4.2365 .3000 .0420
.30 5.00 .50 4.5764 .3000 .4200
.30 5.00 1.00 4.1527 .3000 .2100
.30 5.00 2.00 3.3054 .3000 .1050
.30 5.00 5.00 .7635 .3000 .0420
.30 10.00 .50 9.5764 .3000 .4200
.30 10.00 1.00 9.1527 .3000 .2100
.30 10.00 2.00 8.3054 .3000 .1050
.30 10.00 5.00 5.7635 .3000 .0420
.40 -10.00 .50 -10.2027 .4000 .4800
.40 -10.00 1.00 -10.4055 .4000 .2400
.40 -10.00 2.00 -10.8109 .4000 .1200
.40 -10.00 5.00 -12.0273 .4000 .0480
.40 -5.00 .50 -5.2027 .4000 .4800
.40 -5.00 1.00 -5.4055 .4000 .2400
.40 -5.00 2.00 -5.8109 .4000 .1200
.40 -5.00 5.00 -7.0273 .4000 .0480
.40 .00 .50 -.2027 .4000 .4800
.40 .00 1.00 -.4055 .4000 .2400
.40 .00 2.00 -.8109 .4000 .1200
.40 .00 5.00 -2.0273 .4000 .0480
.40 5.00 .50 4.7973 .4000 .4800
.40 5.00 1.00 4.5945 .4000 .2400
.40 5.00 2.00 4.1891 .4000 .1200
.40 5.00 5.00 2.9727 .4000 .0480
.40 10.00 .50 9.7973 .4000 .4800
.40 10.00 1.00 9.5945 .4000 .2400
.40 10.00 2.00 9.1891 .4000 .1200
.40 10.00 5.00 7.9727 .4000 .0480
.50 -10.00 .50 -10.0000 .5000 .5000
.50 -10.00 1.00 -10.0000 .5000 .2500
.50 -10.00 2.00 -10.0000 .5000 .1250
.50 -10.00 5.00 -10.0000 .5000 .0500
.50 -5.00 .50 -5.0000 .5000 .5000
.50 -5.00 1.00 -5.0000 .5000 .2500
.50 -5.00 2.00 -5.0000 .5000 .1250
.50 -5.00 5.00 -5.0000 .5000 .0500
.50 .00 .50 .0000 .5000 .5000
.50 .00 1.00 .0000 .5000 .2500
.50 .00 2.00 .0000 .5000 .1250
.50 .00 5.00 .0000 .5000 .0500
.50 5.00 .50 5.0000 .5000 .5000
.50 5.00 1.00 5.0000 .5000 .2500
.50 5.00 2.00 5.0000 .5000 .1250
.50 5.00 5.00 5.0000 .5000 .0500
.50 10.00 .50 10.0000 .5000 .5000
.50 10.00 1.00 10.0000 .5000 .2500
.50 10.00 2.00 10.0000 .5000 .1250
.50 10.00 5.00 10.0000 .5000 .0500
.60 -10.00 .50 -9.7973 .6000 .4800
.60 -10.00 1.00 -9.5945 .6000 .2400
.60 -10.00 2.00 -9.1891 .6000 .1200
.60 -10.00 5.00 -7.9727 .6000 .0480
.60 -5.00 .50 -4.7973 .6000 .4800
.60 -5.00 1.00 -4.5945 .6000 .2400
.60 -5.00 2.00 -4.1891 .6000 .1200
.60 -5.00 5.00 -2.9727 .6000 .0480
.60 .00 .50 .2027 .6000 .4800
.60 .00 1.00 .4055 .6000 .2400
.60 .00 2.00 .8109 .6000 .1200
.60 .00 5.00 2.0273 .6000 .0480
.60 5.00 .50 5.2027 .6000 .4800
.60 5.00 1.00 5.4055 .6000 .2400
.60 5.00 2.00 5.8109 .6000 .1200
.60 5.00 5.00 7.0273 .6000 .0480
.60 10.00 .50 10.2027 .6000 .4800
.60 10.00 1.00 10.4055 .6000 .2400
.60 10.00 2.00 10.8109 .6000 .1200
.60 10.00 5.00 12.0273 .6000 .0480
.70 -10.00 .50 -9.5764 .7000 .4200
.70 -10.00 1.00 -9.1527 .7000 .2100
.70 -10.00 2.00 -8.3054 .7000 .1050
.70 -10.00 5.00 -5.7635 .7000 .0420
.70 -5.00 .50 -4.5764 .7000 .4200
.70 -5.00 1.00 -4.1527 .7000 .2100
.70 -5.00 2.00 -3.3054 .7000 .1050
.70 -5.00 5.00 -.7635 .7000 .0420
.70 .00 .50 .4236 .7000 .4200
.70 .00 1.00 .8473 .7000 .2100
.70 .00 2.00 1.6946 .7000 .1050
.70 .00 5.00 4.2365 .7000 .0420
.70 5.00 .50 5.4236 .7000 .4200
.70 5.00 1.00 5.8473 .7000 .2100
.70 5.00 2.00 6.6946 .7000 .1050
.70 5.00 5.00 9.2365 .7000 .0420
.70 10.00 .50 10.4236 .7000 .4200
.70 10.00 1.00 10.8473 .7000 .2100
.70 10.00 2.00 11.6946 .7000 .1050
.70 10.00 5.00 14.2365 .7000 .0420
.80 -10.00 .50 -9.3069 .8000 .3200
.80 -10.00 1.00 -8.6137 .8000 .1600
.80 -10.00 2.00 -7.2274 .8000 .0800
.80 -10.00 5.00 -3.0685 .8000 .0320
.80 -5.00 .50 -4.3069 .8000 .3200
.80 -5.00 1.00 -3.6137 .8000 .1600
.80 -5.00 2.00 -2.2274 .8000 .0800
.80 -5.00 5.00 1.9315 .8000 .0320
.80 .00 .50 .6931 .8000 .3200
.80 .00 1.00 1.3863 .8000 .1600
.80 .00 2.00 2.7726 .8000 .0800
.80 .00 5.00 6.9315 .8000 .0320
.80 5.00 .50 5.6931 .8000 .3200
.80 5.00 1.00 6.3863 .8000 .1600
.80 5.00 2.00 7.7726 .8000 .0800
.80 5.00 5.00 11.9315 .8000 .0320
.80 10.00 .50 10.6931 .8000 .3200
.80 10.00 1.00 11.3863 .8000 .1600
.80 10.00 2.00 12.7726 .8000 .0800
.80 10.00 5.00 16.9315 .8000 .0320
.90 -10.00 .50 -8.9014 .9000 .1800
.90 -10.00 1.00 -7.8028 .9000 .0900
.90 -10.00 2.00 -5.6056 .9000 .0450
.90 -10.00 5.00 .9861 .9000 .0180
.90 -5.00 .50 -3.9014 .9000 .1800
.90 -5.00 1.00 -2.8028 .9000 .0900
.90 -5.00 2.00 -.6056 .9000 .0450
.90 -5.00 5.00 5.9861 .9000 .0180
.90 .00 .50 1.0986 .9000 .1800
.90 .00 1.00 2.1972 .9000 .0900
.90 .00 2.00 4.3944 .9000 .0450
.90 .00 5.00 10.9861 .9000 .0180
.90 5.00 .50 6.0986 .9000 .1800
.90 5.00 1.00 7.1972 .9000 .0900
.90 5.00 2.00 9.3944 .9000 .0450
.90 5.00 5.00 15.9861 .9000 .0180
.90 10.00 .50 11.0986 .9000 .1800
.90 10.00 1.00 12.1972 .9000 .0900
.90 10.00 2.00 14.3944 .9000 .0450
.90 10.00 5.00 20.9861 .9000 .0180
.99 -10.00 .50 -7.7024 .9900 .0198
.99 -10.00 1.00 -5.4049 .9900 .0099
.99 -10.00 2.00 -.8098 .9900 .0050
.99 -10.00 5.00 12.9756 .9900 .0020
.99 -5.00 .50 -2.7024 .9900 .0198
.99 -5.00 1.00 -.4049 .9900 .0099
.99 -5.00 2.00 4.1902 .9900 .0050
.99 -5.00 5.00 17.9756 .9900 .0020
.99 .00 .50 2.2976 .9900 .0198
.99 .00 1.00 4.5951 .9900 .0099
.99 .00 2.00 9.1902 .9900 .0050
.99 .00 5.00 22.9756 .9900 .0020
.99 5.00 .50 7.2976 .9900 .0198
.99 5.00 1.00 9.5951 .9900 .0099
.99 5.00 2.00 14.1902 .9900 .0050
.99 5.00 5.00 27.9756 .9900 .0020
.99 10.00 .50 12.2976 .9900 .0198
.99 10.00 1.00 14.5951 .9900 .0099
.99 10.00 2.00 19.1902 .9900 .0050
.99 10.00 5.00 32.9756 .9900 .0020
])
RANDIST_CHECK([lnormal], [z s], [cdf pdf], [dnl
P z s x cdf pdf
.01 .50 .50 .1562 .0100 .3412
.01 .50 1.00 .0488 .0100 .5459
.01 .50 2.00 .0048 .0100 2.7949
.01 .50 5.00 .0000 .0100 1200.5834
.01 1.00 .50 .3125 .0100 .1706
.01 1.00 1.00 .0977 .0100 .2729
.01 1.00 2.00 .0095 .0100 1.3975
.01 1.00 5.00 .0000 .0100 600.2917
.01 2.00 .50 .6250 .0100 .0853
.01 2.00 1.00 .1953 .0100 .1365
.01 2.00 2.00 .0191 .0100 .6987
.01 2.00 5.00 .0000 .0100 300.1459
.01 5.00 .50 1.5625 .0100 .0341
.01 5.00 1.00 .4883 .0100 .0546
.01 5.00 2.00 .0477 .0100 .2795
.01 5.00 5.00 .0000 .0100 120.0583
.10 .50 .50 .2634 .1000 1.3324
.10 .50 1.00 .1388 .1000 1.2644
.10 .50 2.00 .0385 .1000 2.2773
.10 .50 5.00 .0008 .1000 42.5782
.10 1.00 .50 .5269 .1000 .6662
.10 1.00 1.00 .2776 .1000 .6322
.10 1.00 2.00 .0771 .1000 1.1386
.10 1.00 5.00 .0016 .1000 21.2891
.10 2.00 .50 1.0538 .1000 .3331
.10 2.00 1.00 .5552 .1000 .3161
.10 2.00 2.00 .1541 .1000 .5693
.10 2.00 5.00 .0033 .1000 10.6445
.10 5.00 .50 2.6344 .1000 .1332
.10 5.00 1.00 1.3880 .1000 .1264
.10 5.00 2.00 .3853 .1000 .2277
.10 5.00 5.00 .0082 .1000 4.2578
.20 .50 .50 .3283 .2000 1.7057
.20 .50 1.00 .2155 .2000 1.2991
.20 .50 2.00 .0929 .2000 1.5070
.20 .50 5.00 .0074 .2000 7.5286
.20 1.00 .50 .6565 .2000 .8529
.20 1.00 1.00 .4310 .2000 .6495
.20 1.00 2.00 .1858 .2000 .7535
.20 1.00 5.00 .0149 .2000 3.7643
.20 2.00 .50 1.3130 .2000 .4264
.20 2.00 1.00 .8620 .2000 .3248
.20 2.00 2.00 .3715 .2000 .3768
.20 2.00 5.00 .0297 .2000 1.8822
.20 5.00 .50 3.2826 .2000 .1706
.20 5.00 1.00 2.1551 .2000 .1299
.20 5.00 2.00 .9289 .2000 .1507
.20 5.00 5.00 .0744 .2000 .7529
.30 .50 .50 .3847 .3000 1.8077
.30 .50 1.00 .2960 .3000 1.1748
.30 .50 2.00 .1752 .3000 .9924
.30 .50 5.00 .0363 .3000 1.9142
.30 1.00 .50 .7694 .3000 .9039
.30 1.00 1.00 .5919 .3000 .5874
.30 1.00 2.00 .3504 .3000 .4962
.30 1.00 5.00 .0727 .3000 .9571
.30 2.00 .50 1.5387 .3000 .4519
.30 2.00 1.00 1.1838 .3000 .2937
.30 2.00 2.00 .7007 .3000 .2481
.30 2.00 5.00 .1453 .3000 .4785
.30 5.00 .50 3.8468 .3000 .1808
.30 5.00 1.00 2.9596 .3000 .1175
.30 5.00 2.00 1.7518 .3000 .0992
.30 5.00 5.00 .3633 .3000 .1914
.40 .50 .50 .4405 .4000 1.7541
.40 .50 1.00 .3881 .4000 .9955
.40 .50 2.00 .3012 .4000 .6412
.40 .50 5.00 .1409 .4000 .5485
.40 1.00 .50 .8810 .4000 .8770
.40 1.00 1.00 .7762 .4000 .4977
.40 1.00 2.00 .6025 .4000 .3206
.40 1.00 5.00 .2817 .4000 .2742
.40 2.00 .50 1.7620 .4000 .4385
.40 2.00 1.00 1.5524 .4000 .2489
.40 2.00 2.00 1.2050 .4000 .1603
.40 2.00 5.00 .5635 .4000 .1371
.40 5.00 .50 4.4051 .4000 .1754
.40 5.00 1.00 3.8810 .4000 .0995
.40 5.00 2.00 3.0124 .4000 .0641
.40 5.00 5.00 1.4087 .4000 .0548
.50 .50 .50 .5000 .5000 1.5958
.50 .50 1.00 .5000 .5000 .7979
.50 .50 2.00 .5000 .5000 .3989
.50 .50 5.00 .5000 .5000 .1596
.50 1.00 .50 1.0000 .5000 .7979
.50 1.00 1.00 1.0000 .5000 .3989
.50 1.00 2.00 1.0000 .5000 .1995
.50 1.00 5.00 1.0000 .5000 .0798
.50 2.00 .50 2.0000 .5000 .3989
.50 2.00 1.00 2.0000 .5000 .1995
.50 2.00 2.00 2.0000 .5000 .0997
.50 2.00 5.00 2.0000 .5000 .0399
.50 5.00 .50 5.0000 .5000 .1596
.50 5.00 1.00 5.0000 .5000 .0798
.50 5.00 2.00 5.0000 .5000 .0399
.50 5.00 5.00 5.0000 .5000 .0160
.60 .50 .50 .5675 .6000 1.3615
.60 .50 1.00 .6442 .6000 .5998
.60 .50 2.00 .8299 .6000 .2328
.60 .50 5.00 1.7746 .6000 .0435
.60 1.00 .50 1.1350 .6000 .6808
.60 1.00 1.00 1.2883 .6000 .2999
.60 1.00 2.00 1.6598 .6000 .1164
.60 1.00 5.00 3.5492 .6000 .0218
.60 2.00 .50 2.2701 .6000 .3404
.60 2.00 1.00 2.5767 .6000 .1499
.60 2.00 2.00 3.3196 .6000 .0582
.60 2.00 5.00 7.0985 .6000 .0109
.60 5.00 .50 5.6752 .6000 .1362
.60 5.00 1.00 6.4417 .6000 .0600
.60 5.00 2.00 8.2990 .6000 .0233
.60 5.00 5.00 17.7462 .6000 .0044
.70 .50 .50 .6499 .7000 1.0700
.70 .50 1.00 .8447 .7000 .4116
.70 .50 2.00 1.4271 .7000 .1218
.70 .50 5.00 6.8816 .7000 .0101
.70 1.00 .50 1.2998 .7000 .5350
.70 1.00 1.00 1.6894 .7000 .2058
.70 1.00 2.00 2.8542 .7000 .0609
.70 1.00 5.00 13.7633 .7000 .0051
.70 2.00 .50 2.5996 .7000 .2675
.70 2.00 1.00 3.3789 .7000 .1029
.70 2.00 2.00 5.7085 .7000 .0305
.70 2.00 5.00 27.5265 .7000 .0025
.70 5.00 .50 6.4989 .7000 .1070
.70 5.00 1.00 8.4472 .7000 .0412
.70 5.00 2.00 14.2711 .7000 .0122
.70 5.00 5.00 68.8163 .7000 .0010
.80 .50 .50 .7616 .8000 .7352
.80 .50 1.00 1.1601 .8000 .2413
.80 .50 2.00 2.6915 .8000 .0520
.80 .50 5.00 33.6145 .8000 .0017
.80 1.00 .50 1.5232 .8000 .3676
.80 1.00 1.00 2.3201 .8000 .1207
.80 1.00 2.00 5.3830 .8000 .0260
.80 1.00 5.00 67.2291 .8000 .0008
.80 2.00 .50 3.0464 .8000 .1838
.80 2.00 1.00 4.6403 .8000 .0603
.80 2.00 2.00 10.7660 .8000 .0130
.80 2.00 5.00 134.4582 .8000 .0004
.80 5.00 .50 7.6160 .8000 .0735
.80 5.00 1.00 11.6006 .8000 .0241
.80 5.00 2.00 26.9149 .8000 .0052
.80 5.00 5.00 336.1455 .8000 .0002
.90 .50 .50 .9490 .9000 .3699
.90 .50 1.00 1.8011 .9000 .0974
.90 .50 2.00 6.4880 .9000 .0135
.90 .50 5.00 303.2661 .9000 .0001
.90 1.00 .50 1.8980 .9000 .1849
.90 1.00 1.00 3.6022 .9000 .0487
.90 1.00 2.00 12.9760 .9000 .0068
.90 1.00 5.00 606.5322 .9000 .0001
.90 2.00 .50 3.7959 .9000 .0925
.90 2.00 1.00 7.2044 .9000 .0244
.90 2.00 2.00 25.9520 .9000 .0034
.90 2.00 5.00 1213.0644 .9000 .0000
.90 5.00 .50 9.4898 .9000 .0370
.90 5.00 1.00 18.0111 .9000 .0097
.90 5.00 2.00 64.8801 .9000 .0014
.90 5.00 5.00 3032.6610 .9000 .0000
.99 .50 .50 1.6000 .9900 .0333
.99 .50 1.00 5.1202 .9900 .0052
.99 .50 2.00 52.4337 .9900 .0003
.99 .50 5.00 56308.0163 .9900 .0000
.99 1.00 .50 3.2001 .9900 .0167
.99 1.00 1.00 10.2405 .9900 .0026
.99 1.00 2.00 104.8673 .9900 .0001
.99 1.00 5.00 112616.033 .9900 .0000
.99 2.00 .50 6.4001 .9900 .0083
.99 2.00 1.00 20.4809 .9900 .0013
.99 2.00 2.00 209.7346 .9900 .0001
.99 2.00 5.00 225232.065 .9900 .0000
.99 5.00 .50 16.0004 .9900 .0033
.99 5.00 1.00 51.2024 .9900 .0005
.99 5.00 2.00 524.3365 .9900 .0000
.99 5.00 5.00 563080.163 .9900 .0000
])
RANDIST_CHECK([normal], [u s], [cdf pdf], [dnl
P u s x cdf pdf
.01 -10.00 .50 -11.1632 .0100 .0533
.01 -10.00 1.00 -12.3263 .0100 .0267
.01 -10.00 2.00 -14.6527 .0100 .0133
.01 -10.00 5.00 -21.6317 .0100 .0053
.01 -5.00 .50 -6.1632 .0100 .0533
.01 -5.00 1.00 -7.3263 .0100 .0267
.01 -5.00 2.00 -9.6527 .0100 .0133
.01 -5.00 5.00 -16.6317 .0100 .0053
.01 .00 .50 -1.1632 .0100 .0533
.01 .00 1.00 -2.3263 .0100 .0267
.01 .00 2.00 -4.6527 .0100 .0133
.01 .00 5.00 -11.6317 .0100 .0053
.01 5.00 .50 3.8368 .0100 .0533
.01 5.00 1.00 2.6737 .0100 .0267
.01 5.00 2.00 .3473 .0100 .0133
.01 5.00 5.00 -6.6317 .0100 .0053
.01 10.00 .50 8.8368 .0100 .0533
.01 10.00 1.00 7.6737 .0100 .0267
.01 10.00 2.00 5.3473 .0100 .0133
.01 10.00 5.00 -1.6317 .0100 .0053
.10 -10.00 .50 -10.6408 .1000 .3510
.10 -10.00 1.00 -11.2816 .1000 .1755
.10 -10.00 2.00 -12.5631 .1000 .0877
.10 -10.00 5.00 -16.4078 .1000 .0351
.10 -5.00 .50 -5.6408 .1000 .3510
.10 -5.00 1.00 -6.2816 .1000 .1755
.10 -5.00 2.00 -7.5631 .1000 .0877
.10 -5.00 5.00 -11.4078 .1000 .0351
.10 .00 .50 -.6408 .1000 .3510
.10 .00 1.00 -1.2816 .1000 .1755
.10 .00 2.00 -2.5631 .1000 .0877
.10 .00 5.00 -6.4078 .1000 .0351
.10 5.00 .50 4.3592 .1000 .3510
.10 5.00 1.00 3.7184 .1000 .1755
.10 5.00 2.00 2.4369 .1000 .0877
.10 5.00 5.00 -1.4078 .1000 .0351
.10 10.00 .50 9.3592 .1000 .3510
.10 10.00 1.00 8.7184 .1000 .1755
.10 10.00 2.00 7.4369 .1000 .0877
.10 10.00 5.00 3.5922 .1000 .0351
.20 -10.00 .50 -10.4208 .2000 .5599
.20 -10.00 1.00 -10.8416 .2000 .2800
.20 -10.00 2.00 -11.6832 .2000 .1400
.20 -10.00 5.00 -14.2081 .2000 .0560
.20 -5.00 .50 -5.4208 .2000 .5599
.20 -5.00 1.00 -5.8416 .2000 .2800
.20 -5.00 2.00 -6.6832 .2000 .1400
.20 -5.00 5.00 -9.2081 .2000 .0560
.20 .00 .50 -.4208 .2000 .5599
.20 .00 1.00 -.8416 .2000 .2800
.20 .00 2.00 -1.6832 .2000 .1400
.20 .00 5.00 -4.2081 .2000 .0560
.20 5.00 .50 4.5792 .2000 .5599
.20 5.00 1.00 4.1584 .2000 .2800
.20 5.00 2.00 3.3168 .2000 .1400
.20 5.00 5.00 .7919 .2000 .0560
.20 10.00 .50 9.5792 .2000 .5599
.20 10.00 1.00 9.1584 .2000 .2800
.20 10.00 2.00 8.3168 .2000 .1400
.20 10.00 5.00 5.7919 .2000 .0560
.30 -10.00 .50 -10.2622 .3000 .6954
.30 -10.00 1.00 -10.5244 .3000 .3477
.30 -10.00 2.00 -11.0488 .3000 .1738
.30 -10.00 5.00 -12.6220 .3000 .0695
.30 -5.00 .50 -5.2622 .3000 .6954
.30 -5.00 1.00 -5.5244 .3000 .3477
.30 -5.00 2.00 -6.0488 .3000 .1738
.30 -5.00 5.00 -7.6220 .3000 .0695
.30 .00 .50 -.2622 .3000 .6954
.30 .00 1.00 -.5244 .3000 .3477
.30 .00 2.00 -1.0488 .3000 .1738
.30 .00 5.00 -2.6220 .3000 .0695
.30 5.00 .50 4.7378 .3000 .6954
.30 5.00 1.00 4.4756 .3000 .3477
.30 5.00 2.00 3.9512 .3000 .1738
.30 5.00 5.00 2.3780 .3000 .0695
.30 10.00 .50 9.7378 .3000 .6954
.30 10.00 1.00 9.4756 .3000 .3477
.30 10.00 2.00 8.9512 .3000 .1738
.30 10.00 5.00 7.3780 .3000 .0695
.40 -10.00 .50 -10.1267 .4000 .7727
.40 -10.00 1.00 -10.2533 .4000 .3863
.40 -10.00 2.00 -10.5067 .4000 .1932
.40 -10.00 5.00 -11.2667 .4000 .0773
.40 -5.00 .50 -5.1267 .4000 .7727
.40 -5.00 1.00 -5.2533 .4000 .3863
.40 -5.00 2.00 -5.5067 .4000 .1932
.40 -5.00 5.00 -6.2667 .4000 .0773
.40 .00 .50 -.1267 .4000 .7727
.40 .00 1.00 -.2533 .4000 .3863
.40 .00 2.00 -.5067 .4000 .1932
.40 .00 5.00 -1.2667 .4000 .0773
.40 5.00 .50 4.8733 .4000 .7727
.40 5.00 1.00 4.7467 .4000 .3863
.40 5.00 2.00 4.4933 .4000 .1932
.40 5.00 5.00 3.7333 .4000 .0773
.40 10.00 .50 9.8733 .4000 .7727
.40 10.00 1.00 9.7467 .4000 .3863
.40 10.00 2.00 9.4933 .4000 .1932
.40 10.00 5.00 8.7333 .4000 .0773
.50 -10.00 .50 -10.0000 .5000 .7979
.50 -10.00 1.00 -10.0000 .5000 .3989
.50 -10.00 2.00 -10.0000 .5000 .1995
.50 -10.00 5.00 -10.0000 .5000 .0798
.50 -5.00 .50 -5.0000 .5000 .7979
.50 -5.00 1.00 -5.0000 .5000 .3989
.50 -5.00 2.00 -5.0000 .5000 .1995
.50 -5.00 5.00 -5.0000 .5000 .0798
.50 .00 .50 .0000 .5000 .7979
.50 .00 1.00 .0000 .5000 .3989
.50 .00 2.00 .0000 .5000 .1995
.50 .00 5.00 .0000 .5000 .0798
.50 5.00 .50 5.0000 .5000 .7979
.50 5.00 1.00 5.0000 .5000 .3989
.50 5.00 2.00 5.0000 .5000 .1995
.50 5.00 5.00 5.0000 .5000 .0798
.50 10.00 .50 10.0000 .5000 .7979
.50 10.00 1.00 10.0000 .5000 .3989
.50 10.00 2.00 10.0000 .5000 .1995
.50 10.00 5.00 10.0000 .5000 .0798
.60 -10.00 .50 -9.8733 .6000 .7727
.60 -10.00 1.00 -9.7467 .6000 .3863
.60 -10.00 2.00 -9.4933 .6000 .1932
.60 -10.00 5.00 -8.7333 .6000 .0773
.60 -5.00 .50 -4.8733 .6000 .7727
.60 -5.00 1.00 -4.7467 .6000 .3863
.60 -5.00 2.00 -4.4933 .6000 .1932
.60 -5.00 5.00 -3.7333 .6000 .0773
.60 .00 .50 .1267 .6000 .7727
.60 .00 1.00 .2533 .6000 .3863
.60 .00 2.00 .5067 .6000 .1932
.60 .00 5.00 1.2667 .6000 .0773
.60 5.00 .50 5.1267 .6000 .7727
.60 5.00 1.00 5.2533 .6000 .3863
.60 5.00 2.00 5.5067 .6000 .1932
.60 5.00 5.00 6.2667 .6000 .0773
.60 10.00 .50 10.1267 .6000 .7727
.60 10.00 1.00 10.2533 .6000 .3863
.60 10.00 2.00 10.5067 .6000 .1932
.60 10.00 5.00 11.2667 .6000 .0773
.70 -10.00 .50 -9.7378 .7000 .6954
.70 -10.00 1.00 -9.4756 .7000 .3477
.70 -10.00 2.00 -8.9512 .7000 .1738
.70 -10.00 5.00 -7.3780 .7000 .0695
.70 -5.00 .50 -4.7378 .7000 .6954
.70 -5.00 1.00 -4.4756 .7000 .3477
.70 -5.00 2.00 -3.9512 .7000 .1738
.70 -5.00 5.00 -2.3780 .7000 .0695
.70 .00 .50 .2622 .7000 .6954
.70 .00 1.00 .5244 .7000 .3477
.70 .00 2.00 1.0488 .7000 .1738
.70 .00 5.00 2.6220 .7000 .0695
.70 5.00 .50 5.2622 .7000 .6954
.70 5.00 1.00 5.5244 .7000 .3477
.70 5.00 2.00 6.0488 .7000 .1738
.70 5.00 5.00 7.6220 .7000 .0695
.70 10.00 .50 10.2622 .7000 .6954
.70 10.00 1.00 10.5244 .7000 .3477
.70 10.00 2.00 11.0488 .7000 .1738
.70 10.00 5.00 12.6220 .7000 .0695
.80 -10.00 .50 -9.5792 .8000 .5599
.80 -10.00 1.00 -9.1584 .8000 .2800
.80 -10.00 2.00 -8.3168 .8000 .1400
.80 -10.00 5.00 -5.7919 .8000 .0560
.80 -5.00 .50 -4.5792 .8000 .5599
.80 -5.00 1.00 -4.1584 .8000 .2800
.80 -5.00 2.00 -3.3168 .8000 .1400
.80 -5.00 5.00 -.7919 .8000 .0560
.80 .00 .50 .4208 .8000 .5599
.80 .00 1.00 .8416 .8000 .2800
.80 .00 2.00 1.6832 .8000 .1400
.80 .00 5.00 4.2081 .8000 .0560
.80 5.00 .50 5.4208 .8000 .5599
.80 5.00 1.00 5.8416 .8000 .2800
.80 5.00 2.00 6.6832 .8000 .1400
.80 5.00 5.00 9.2081 .8000 .0560
.80 10.00 .50 10.4208 .8000 .5599
.80 10.00 1.00 10.8416 .8000 .2800
.80 10.00 2.00 11.6832 .8000 .1400
.80 10.00 5.00 14.2081 .8000 .0560
.90 -10.00 .50 -9.3592 .9000 .3510
.90 -10.00 1.00 -8.7184 .9000 .1755
.90 -10.00 2.00 -7.4369 .9000 .0877
.90 -10.00 5.00 -3.5922 .9000 .0351
.90 -5.00 .50 -4.3592 .9000 .3510
.90 -5.00 1.00 -3.7184 .9000 .1755
.90 -5.00 2.00 -2.4369 .9000 .0877
.90 -5.00 5.00 1.4078 .9000 .0351
.90 .00 .50 .6408 .9000 .3510
.90 .00 1.00 1.2816 .9000 .1755
.90 .00 2.00 2.5631 .9000 .0877
.90 .00 5.00 6.4078 .9000 .0351
.90 5.00 .50 5.6408 .9000 .3510
.90 5.00 1.00 6.2816 .9000 .1755
.90 5.00 2.00 7.5631 .9000 .0877
.90 5.00 5.00 11.4078 .9000 .0351
.90 10.00 .50 10.6408 .9000 .3510
.90 10.00 1.00 11.2816 .9000 .1755
.90 10.00 2.00 12.5631 .9000 .0877
.90 10.00 5.00 16.4078 .9000 .0351
.99 -10.00 .50 -8.8368 .9900 .0533
.99 -10.00 1.00 -7.6737 .9900 .0267
.99 -10.00 2.00 -5.3473 .9900 .0133
.99 -10.00 5.00 1.6317 .9900 .0053
.99 -5.00 .50 -3.8368 .9900 .0533
.99 -5.00 1.00 -2.6737 .9900 .0267
.99 -5.00 2.00 -.3473 .9900 .0133
.99 -5.00 5.00 6.6317 .9900 .0053
.99 .00 .50 1.1632 .9900 .0533
.99 .00 1.00 2.3263 .9900 .0267
.99 .00 2.00 4.6527 .9900 .0133
.99 .00 5.00 11.6317 .9900 .0053
.99 5.00 .50 6.1632 .9900 .0533
.99 5.00 1.00 7.3263 .9900 .0267
.99 5.00 2.00 9.6527 .9900 .0133
.99 5.00 5.00 16.6317 .9900 .0053
.99 10.00 .50 11.1632 .9900 .0533
.99 10.00 1.00 12.3263 .9900 .0267
.99 10.00 2.00 14.6527 .9900 .0133
.99 10.00 5.00 21.6317 .9900 .0053
])
RANDIST_CHECK([pareto], [a b], [cdf pdf], [dnl
P a b x cdf pdf
.01 1.00 1.00 1.0101 .0100 .9801
.01 1.00 2.00 1.0050 .0100 1.9701
.01 1.00 5.00 1.0020 .0100 4.9401
.01 1.00 10.00 1.0010 .0100 9.8901
.01 5.00 1.00 5.0505 .0100 .1960
.01 5.00 2.00 5.0252 .0100 .3940
.01 5.00 5.00 5.0101 .0100 .9880
.01 5.00 10.00 5.0050 .0100 1.9780
.01 10.00 1.00 10.1010 .0100 .0980
.01 10.00 2.00 10.0504 .0100 .1970
.01 10.00 5.00 10.0201 .0100 .4940
.01 10.00 10.00 10.0101 .0100 .9890
.10 1.00 1.00 1.1111 .1000 .8100
.10 1.00 2.00 1.0541 .1000 1.7076
.10 1.00 5.00 1.0213 .1000 4.4062
.10 1.00 10.00 1.0106 .1000 8.9057
.10 5.00 1.00 5.5556 .1000 .1620
.10 5.00 2.00 5.2705 .1000 .3415
.10 5.00 5.00 5.1065 .1000 .8812
.10 5.00 10.00 5.0530 .1000 1.7811
.10 10.00 1.00 11.1111 .1000 .0810
.10 10.00 2.00 10.5409 .1000 .1708
.10 10.00 5.00 10.2130 .1000 .4406
.10 10.00 10.00 10.1059 .1000 .8906
.20 1.00 1.00 1.2500 .2000 .6400
.20 1.00 2.00 1.1180 .2000 1.4311
.20 1.00 5.00 1.0456 .2000 3.8254
.20 1.00 10.00 1.0226 .2000 7.8235
.20 5.00 1.00 6.2500 .2000 .1280
.20 5.00 2.00 5.5902 .2000 .2862
.20 5.00 5.00 5.2282 .2000 .7651
.20 5.00 10.00 5.1128 .2000 1.5647
.20 10.00 1.00 12.5000 .2000 .0640
.20 10.00 2.00 11.1803 .2000 .1431
.20 10.00 5.00 10.4564 .2000 .3825
.20 10.00 10.00 10.2257 .2000 .7823
.30 1.00 1.00 1.4286 .3000 .4900
.30 1.00 2.00 1.1952 .3000 1.1713
.30 1.00 5.00 1.0739 .3000 3.2590
.30 1.00 10.00 1.0363 .3000 6.7547
.30 5.00 1.00 7.1429 .3000 .0980
.30 5.00 2.00 5.9761 .3000 .2343
.30 5.00 5.00 5.3697 .3000 .6518
.30 5.00 10.00 5.1816 .3000 1.3509
.30 10.00 1.00 14.2857 .3000 .0490
.30 10.00 2.00 11.9523 .3000 .1171
.30 10.00 5.00 10.7394 .3000 .3259
.30 10.00 10.00 10.3631 .3000 .6755
.40 1.00 1.00 1.6667 .4000 .3600
.40 1.00 2.00 1.2910 .4000 .9295
.40 1.00 5.00 1.1076 .4000 2.7086
.40 1.00 10.00 1.0524 .4000 5.7012
.40 5.00 1.00 8.3333 .4000 .0720
.40 5.00 2.00 6.4550 .4000 .1859
.40 5.00 5.00 5.5378 .4000 .5417
.40 5.00 10.00 5.2620 .4000 1.1402
.40 10.00 1.00 16.6667 .4000 .0360
.40 10.00 2.00 12.9099 .4000 .0930
.40 10.00 5.00 11.0757 .4000 .2709
.40 10.00 10.00 10.5241 .4000 .5701
.50 1.00 1.00 2.0000 .5000 .2500
.50 1.00 2.00 1.4142 .5000 .7071
.50 1.00 5.00 1.1487 .5000 2.1764
.50 1.00 10.00 1.0718 .5000 4.6652
.50 5.00 1.00 10.0000 .5000 .0500
.50 5.00 2.00 7.0711 .5000 .1414
.50 5.00 5.00 5.7435 .5000 .4353
.50 5.00 10.00 5.3589 .5000 .9330
.50 10.00 1.00 20.0000 .5000 .0250
.50 10.00 2.00 14.1421 .5000 .0707
.50 10.00 5.00 11.4870 .5000 .2176
.50 10.00 10.00 10.7177 .5000 .4665
.60 1.00 1.00 2.5000 .6000 .1600
.60 1.00 2.00 1.5811 .6000 .5060
.60 1.00 5.00 1.2011 .6000 1.6651
.60 1.00 10.00 1.0960 .6000 3.6498
.60 5.00 1.00 12.5000 .6000 .0320
.60 5.00 2.00 7.9057 .6000 .1012
.60 5.00 5.00 6.0056 .6000 .3330
.60 5.00 10.00 5.4798 .6000 .7300
.60 10.00 1.00 25.0000 .6000 .0160
.60 10.00 2.00 15.8114 .6000 .0506
.60 10.00 5.00 12.0112 .6000 .1665
.60 10.00 10.00 10.9596 .6000 .3650
.70 1.00 1.00 3.3333 .7000 .0900
.70 1.00 2.00 1.8257 .7000 .3286
.70 1.00 5.00 1.2723 .7000 1.1790
.70 1.00 10.00 1.1279 .7000 2.6597
.70 5.00 1.00 16.6667 .7000 .0180
.70 5.00 2.00 9.1287 .7000 .0657
.70 5.00 5.00 6.3613 .7000 .2358
.70 5.00 10.00 5.6397 .7000 .5319
.70 10.00 1.00 33.3333 .7000 .0090
.70 10.00 2.00 18.2574 .7000 .0329
.70 10.00 5.00 12.7226 .7000 .1179
.70 10.00 10.00 11.2794 .7000 .2660
.80 1.00 1.00 5.0000 .8000 .0400
.80 1.00 2.00 2.2361 .8000 .1789
.80 1.00 5.00 1.3797 .8000 .7248
.80 1.00 10.00 1.1746 .8000 1.7027
.80 5.00 1.00 25.0000 .8000 .0080
.80 5.00 2.00 11.1803 .8000 .0358
.80 5.00 5.00 6.8986 .8000 .1450
.80 5.00 10.00 5.8731 .8000 .3405
.80 10.00 1.00 50.0000 .8000 .0040
.80 10.00 2.00 22.3607 .8000 .0179
.80 10.00 5.00 13.7973 .8000 .0725
.80 10.00 10.00 11.7462 .8000 .1703
.90 1.00 1.00 10.0000 .9000 .0100
.90 1.00 2.00 3.1623 .9000 .0632
.90 1.00 5.00 1.5849 .9000 .3155
.90 1.00 10.00 1.2589 .9000 .7943
.90 5.00 1.00 50.0000 .9000 .0020
.90 5.00 2.00 15.8114 .9000 .0126
.90 5.00 5.00 7.9245 .9000 .0631
.90 5.00 10.00 6.2946 .9000 .1589
.90 10.00 1.00 100.0000 .9000 .0010
.90 10.00 2.00 31.6228 .9000 .0063
.90 10.00 5.00 15.8489 .9000 .0315
.90 10.00 10.00 12.5893 .9000 .0794
.99 1.00 1.00 100.0000 .9900 .0001
.99 1.00 2.00 10.0000 .9900 .0020
.99 1.00 5.00 2.5119 .9900 .0199
.99 1.00 10.00 1.5849 .9900 .0631
.99 5.00 1.00 500.0000 .9900 .0000
.99 5.00 2.00 50.0000 .9900 .0004
.99 5.00 5.00 12.5594 .9900 .0040
.99 5.00 10.00 7.9245 .9900 .0126
.99 10.00 1.00 1000.0000 .9900 .0000
.99 10.00 2.00 100.0000 .9900 .0002
.99 10.00 5.00 25.1189 .9900 .0020
.99 10.00 10.00 15.8489 .9900 .0063
])
RANDIST_CHECK([t], [df], [cdf pdf], [dnl
P df x cdf pdf
.01 1.00 -31.8205 .0100 .0003
.01 2.00 -6.9646 .0100 .0028
.01 3.00 -4.5407 .0100 .0059
.01 4.00 -3.7469 .0100 .0087
.01 5.00 -3.3649 .0100 .0109
.01 10.00 -2.7638 .0100 .0172
.01 30.00 -2.4573 .0100 .0231
.01 100.00 -2.3642 .0100 .0255
.10 1.00 -3.0777 .1000 .0304
.10 2.00 -1.8856 .1000 .0764
.10 3.00 -1.6377 .1000 .1025
.10 4.00 -1.5332 .1000 .1181
.10 5.00 -1.4759 .1000 .1283
.10 10.00 -1.3722 .1000 .1507
.10 30.00 -1.3104 .1000 .1670
.10 100.00 -1.2901 .1000 .1729
.20 1.00 -1.3764 .2000 .1100
.20 2.00 -1.0607 .2000 .1810
.20 3.00 -.9785 .2000 .2112
.20 4.00 -.9410 .2000 .2275
.20 5.00 -.9195 .2000 .2376
.20 10.00 -.8791 .2000 .2584
.20 30.00 -.8538 .2000 .2727
.20 100.00 -.8452 .2000 .2778
.30 1.00 -.7265 .3000 .2083
.30 2.00 -.6172 .3000 .2722
.30 3.00 -.5844 .3000 .2963
.30 4.00 -.5686 .3000 .3088
.30 5.00 -.5594 .3000 .3164
.30 10.00 -.5415 .3000 .3319
.30 30.00 -.5300 .3000 .3424
.30 100.00 -.5261 .3000 .3461
.40 1.00 -.3249 .4000 .2879
.40 2.00 -.2887 .4000 .3326
.40 3.00 -.2767 .4000 .3495
.40 4.00 -.2707 .4000 .3584
.40 5.00 -.2672 .4000 .3638
.40 10.00 -.2602 .4000 .3749
.40 30.00 -.2556 .4000 .3825
.40 100.00 -.2540 .4000 .3852
.50 1.00 .0000 .5000 .3183
.50 2.00 .0000 .5000 .3536
.50 3.00 .0000 .5000 .3676
.50 4.00 .0000 .5000 .3750
.50 5.00 .0000 .5000 .3796
.50 10.00 .0000 .5000 .3891
.50 30.00 .0000 .5000 .3956
.50 100.00 .0000 .5000 .3979
.60 1.00 .3249 .6000 .2879
.60 2.00 .2887 .6000 .3326
.60 3.00 .2767 .6000 .3495
.60 4.00 .2707 .6000 .3584
.60 5.00 .2672 .6000 .3638
.60 10.00 .2602 .6000 .3749
.60 30.00 .2556 .6000 .3825
.60 100.00 .2540 .6000 .3852
.70 1.00 .7265 .7000 .2083
.70 2.00 .6172 .7000 .2722
.70 3.00 .5844 .7000 .2963
.70 4.00 .5686 .7000 .3088
.70 5.00 .5594 .7000 .3164
.70 10.00 .5415 .7000 .3319
.70 30.00 .5300 .7000 .3424
.70 100.00 .5261 .7000 .3461
.80 1.00 1.3764 .8000 .1100
.80 2.00 1.0607 .8000 .1810
.80 3.00 .9785 .8000 .2112
.80 4.00 .9410 .8000 .2275
.80 5.00 .9195 .8000 .2376
.80 10.00 .8791 .8000 .2584
.80 30.00 .8538 .8000 .2727
.80 100.00 .8452 .8000 .2778
.90 1.00 3.0777 .9000 .0304
.90 2.00 1.8856 .9000 .0764
.90 3.00 1.6377 .9000 .1025
.90 4.00 1.5332 .9000 .1181
.90 5.00 1.4759 .9000 .1283
.90 10.00 1.3722 .9000 .1507
.90 30.00 1.3104 .9000 .1670
.90 100.00 1.2901 .9000 .1729
.99 1.00 31.8205 .9900 .0003
.99 2.00 6.9646 .9900 .0028
.99 3.00 4.5407 .9900 .0059
.99 4.00 3.7469 .9900 .0087
.99 5.00 3.3649 .9900 .0109
.99 10.00 2.7638 .9900 .0172
.99 30.00 2.4573 .9900 .0231
.99 100.00 2.3642 .9900 .0255
])
RANDIST_CHECK([uniform], [a b], [cdf pdf], [dnl
P a b x cdf pdf
.01 -10.00 40.00 -9.5000 .0100 .0200
.01 -10.00 41.00 -9.4900 .0100 .0196
.01 -10.00 45.00 -9.4500 .0100 .0182
.01 -10.00 50.00 -9.4000 .0100 .0167
.01 .00 40.00 .4000 .0100 .0250
.01 .00 41.00 .4100 .0100 .0244
.01 .00 45.00 .4500 .0100 .0222
.01 .00 50.00 .5000 .0100 .0200
.01 20.00 40.00 20.2000 .0100 .0500
.01 20.00 41.00 20.2100 .0100 .0476
.01 20.00 45.00 20.2500 .0100 .0400
.01 20.00 50.00 20.3000 .0100 .0333
.01 30.00 40.00 30.1000 .0100 .1000
.01 30.00 41.00 30.1100 .0100 .0909
.01 30.00 45.00 30.1500 .0100 .0667
.01 30.00 50.00 30.2000 .0100 .0500
.10 -10.00 40.00 -5.0000 .1000 .0200
.10 -10.00 41.00 -4.9000 .1000 .0196
.10 -10.00 45.00 -4.5000 .1000 .0182
.10 -10.00 50.00 -4.0000 .1000 .0167
.10 .00 40.00 4.0000 .1000 .0250
.10 .00 41.00 4.1000 .1000 .0244
.10 .00 45.00 4.5000 .1000 .0222
.10 .00 50.00 5.0000 .1000 .0200
.10 20.00 40.00 22.0000 .1000 .0500
.10 20.00 41.00 22.1000 .1000 .0476
.10 20.00 45.00 22.5000 .1000 .0400
.10 20.00 50.00 23.0000 .1000 .0333
.10 30.00 40.00 31.0000 .1000 .1000
.10 30.00 41.00 31.1000 .1000 .0909
.10 30.00 45.00 31.5000 .1000 .0667
.10 30.00 50.00 32.0000 .1000 .0500
.20 -10.00 40.00 .0000 .2000 .0200
.20 -10.00 41.00 .2000 .2000 .0196
.20 -10.00 45.00 1.0000 .2000 .0182
.20 -10.00 50.00 2.0000 .2000 .0167
.20 .00 40.00 8.0000 .2000 .0250
.20 .00 41.00 8.2000 .2000 .0244
.20 .00 45.00 9.0000 .2000 .0222
.20 .00 50.00 10.0000 .2000 .0200
.20 20.00 40.00 24.0000 .2000 .0500
.20 20.00 41.00 24.2000 .2000 .0476
.20 20.00 45.00 25.0000 .2000 .0400
.20 20.00 50.00 26.0000 .2000 .0333
.20 30.00 40.00 32.0000 .2000 .1000
.20 30.00 41.00 32.2000 .2000 .0909
.20 30.00 45.00 33.0000 .2000 .0667
.20 30.00 50.00 34.0000 .2000 .0500
.30 -10.00 40.00 5.0000 .3000 .0200
.30 -10.00 41.00 5.3000 .3000 .0196
.30 -10.00 45.00 6.5000 .3000 .0182
.30 -10.00 50.00 8.0000 .3000 .0167
.30 .00 40.00 12.0000 .3000 .0250
.30 .00 41.00 12.3000 .3000 .0244
.30 .00 45.00 13.5000 .3000 .0222
.30 .00 50.00 15.0000 .3000 .0200
.30 20.00 40.00 26.0000 .3000 .0500
.30 20.00 41.00 26.3000 .3000 .0476
.30 20.00 45.00 27.5000 .3000 .0400
.30 20.00 50.00 29.0000 .3000 .0333
.30 30.00 40.00 33.0000 .3000 .1000
.30 30.00 41.00 33.3000 .3000 .0909
.30 30.00 45.00 34.5000 .3000 .0667
.30 30.00 50.00 36.0000 .3000 .0500
.40 -10.00 40.00 10.0000 .4000 .0200
.40 -10.00 41.00 10.4000 .4000 .0196
.40 -10.00 45.00 12.0000 .4000 .0182
.40 -10.00 50.00 14.0000 .4000 .0167
.40 .00 40.00 16.0000 .4000 .0250
.40 .00 41.00 16.4000 .4000 .0244
.40 .00 45.00 18.0000 .4000 .0222
.40 .00 50.00 20.0000 .4000 .0200
.40 20.00 40.00 28.0000 .4000 .0500
.40 20.00 41.00 28.4000 .4000 .0476
.40 20.00 45.00 30.0000 .4000 .0400
.40 20.00 50.00 32.0000 .4000 .0333
.40 30.00 40.00 34.0000 .4000 .1000
.40 30.00 41.00 34.4000 .4000 .0909
.40 30.00 45.00 36.0000 .4000 .0667
.40 30.00 50.00 38.0000 .4000 .0500
.50 -10.00 40.00 15.0000 .5000 .0200
.50 -10.00 41.00 15.5000 .5000 .0196
.50 -10.00 45.00 17.5000 .5000 .0182
.50 -10.00 50.00 20.0000 .5000 .0167
.50 .00 40.00 20.0000 .5000 .0250
.50 .00 41.00 20.5000 .5000 .0244
.50 .00 45.00 22.5000 .5000 .0222
.50 .00 50.00 25.0000 .5000 .0200
.50 20.00 40.00 30.0000 .5000 .0500
.50 20.00 41.00 30.5000 .5000 .0476
.50 20.00 45.00 32.5000 .5000 .0400
.50 20.00 50.00 35.0000 .5000 .0333
.50 30.00 40.00 35.0000 .5000 .1000
.50 30.00 41.00 35.5000 .5000 .0909
.50 30.00 45.00 37.5000 .5000 .0667
.50 30.00 50.00 40.0000 .5000 .0500
.60 -10.00 40.00 20.0000 .6000 .0200
.60 -10.00 41.00 20.6000 .6000 .0196
.60 -10.00 45.00 23.0000 .6000 .0182
.60 -10.00 50.00 26.0000 .6000 .0167
.60 .00 40.00 24.0000 .6000 .0250
.60 .00 41.00 24.6000 .6000 .0244
.60 .00 45.00 27.0000 .6000 .0222
.60 .00 50.00 30.0000 .6000 .0200
.60 20.00 40.00 32.0000 .6000 .0500
.60 20.00 41.00 32.6000 .6000 .0476
.60 20.00 45.00 35.0000 .6000 .0400
.60 20.00 50.00 38.0000 .6000 .0333
.60 30.00 40.00 36.0000 .6000 .1000
.60 30.00 41.00 36.6000 .6000 .0909
.60 30.00 45.00 39.0000 .6000 .0667
.60 30.00 50.00 42.0000 .6000 .0500
.70 -10.00 40.00 25.0000 .7000 .0200
.70 -10.00 41.00 25.7000 .7000 .0196
.70 -10.00 45.00 28.5000 .7000 .0182
.70 -10.00 50.00 32.0000 .7000 .0167
.70 .00 40.00 28.0000 .7000 .0250
.70 .00 41.00 28.7000 .7000 .0244
.70 .00 45.00 31.5000 .7000 .0222
.70 .00 50.00 35.0000 .7000 .0200
.70 20.00 40.00 34.0000 .7000 .0500
.70 20.00 41.00 34.7000 .7000 .0476
.70 20.00 45.00 37.5000 .7000 .0400
.70 20.00 50.00 41.0000 .7000 .0333
.70 30.00 40.00 37.0000 .7000 .1000
.70 30.00 41.00 37.7000 .7000 .0909
.70 30.00 45.00 40.5000 .7000 .0667
.70 30.00 50.00 44.0000 .7000 .0500
.80 -10.00 40.00 30.0000 .8000 .0200
.80 -10.00 41.00 30.8000 .8000 .0196
.80 -10.00 45.00 34.0000 .8000 .0182
.80 -10.00 50.00 38.0000 .8000 .0167
.80 .00 40.00 32.0000 .8000 .0250
.80 .00 41.00 32.8000 .8000 .0244
.80 .00 45.00 36.0000 .8000 .0222
.80 .00 50.00 40.0000 .8000 .0200
.80 20.00 40.00 36.0000 .8000 .0500
.80 20.00 41.00 36.8000 .8000 .0476
.80 20.00 45.00 40.0000 .8000 .0400
.80 20.00 50.00 44.0000 .8000 .0333
.80 30.00 40.00 38.0000 .8000 .1000
.80 30.00 41.00 38.8000 .8000 .0909
.80 30.00 45.00 42.0000 .8000 .0667
.80 30.00 50.00 46.0000 .8000 .0500
.90 -10.00 40.00 35.0000 .9000 .0200
.90 -10.00 41.00 35.9000 .9000 .0196
.90 -10.00 45.00 39.5000 .9000 .0182
.90 -10.00 50.00 44.0000 .9000 .0167
.90 .00 40.00 36.0000 .9000 .0250
.90 .00 41.00 36.9000 .9000 .0244
.90 .00 45.00 40.5000 .9000 .0222
.90 .00 50.00 45.0000 .9000 .0200
.90 20.00 40.00 38.0000 .9000 .0500
.90 20.00 41.00 38.9000 .9000 .0476
.90 20.00 45.00 42.5000 .9000 .0400
.90 20.00 50.00 47.0000 .9000 .0333
.90 30.00 40.00 39.0000 .9000 .1000
.90 30.00 41.00 39.9000 .9000 .0909
.90 30.00 45.00 43.5000 .9000 .0667
.90 30.00 50.00 48.0000 .9000 .0500
.99 -10.00 40.00 39.5000 .9900 .0200
.99 -10.00 41.00 40.4900 .9900 .0196
.99 -10.00 45.00 44.4500 .9900 .0182
.99 -10.00 50.00 49.4000 .9900 .0167
.99 .00 40.00 39.6000 .9900 .0250
.99 .00 41.00 40.5900 .9900 .0244
.99 .00 45.00 44.5500 .9900 .0222
.99 .00 50.00 49.5000 .9900 .0200
.99 20.00 40.00 39.8000 .9900 .0500
.99 20.00 41.00 40.7900 .9900 .0476
.99 20.00 45.00 44.7500 .9900 .0400
.99 20.00 50.00 49.7000 .9900 .0333
.99 30.00 40.00 39.9000 .9900 .1000
.99 30.00 41.00 40.8900 .9900 .0909
.99 30.00 45.00 44.8500 .9900 .0667
.99 30.00 50.00 49.8000 .9900 .0500
])
RANDIST_CHECK([weibull], [a b], [cdf pdf], [dnl
P a b x cdf pdf
.01 .50 1.00 .0050 .0100 1.9800
.01 .50 2.00 .0501 .0100 .3970
.01 .50 4.00 .1583 .0100 .2514
.01 .50 8.00 .2813 .0100 .2829
.01 1.00 1.00 .0101 .0100 .9900
.01 1.00 2.00 .1003 .0100 .1985
.01 1.00 4.00 .3166 .0100 .1257
.01 1.00 8.00 .5627 .0100 .1415
.01 2.00 1.00 .0201 .0100 .4950
.01 2.00 2.00 .2005 .0100 .0992
.01 2.00 4.00 .6332 .0100 .0628
.01 2.00 8.00 1.1254 .0100 .0707
.01 5.00 1.00 .0503 .0100 .1980
.01 5.00 2.00 .5013 .0100 .0397
.01 5.00 4.00 1.5831 .0100 .0251
.01 5.00 8.00 2.8135 .0100 .0283
.10 .50 1.00 .0527 .1000 1.8000
.10 .50 2.00 .1623 .1000 1.1685
.10 .50 4.00 .2849 .1000 1.3315
.10 .50 8.00 .3774 .1000 2.0100
.10 1.00 1.00 .1054 .1000 .9000
.10 1.00 2.00 .3246 .1000 .5843
.10 1.00 4.00 .5697 .1000 .6657
.10 1.00 8.00 .7548 .1000 1.0050
.10 2.00 1.00 .2107 .1000 .4500
.10 2.00 2.00 .6492 .1000 .2921
.10 2.00 4.00 1.1395 .1000 .3329
.10 2.00 8.00 1.5096 .1000 .5025
.10 5.00 1.00 .5268 .1000 .1800
.10 5.00 2.00 1.6230 .1000 .1169
.10 5.00 4.00 2.8487 .1000 .1331
.10 5.00 8.00 3.7740 .1000 .2010
.20 .50 1.00 .1116 .2000 1.6000
.20 .50 2.00 .2362 .2000 1.5116
.20 .50 4.00 .3436 .2000 2.0779
.20 .50 8.00 .4145 .2000 3.4453
.20 1.00 1.00 .2231 .2000 .8000
.20 1.00 2.00 .4724 .2000 .7558
.20 1.00 4.00 .6873 .2000 1.0389
.20 1.00 8.00 .8290 .2000 1.7226
.20 2.00 1.00 .4463 .2000 .4000
.20 2.00 2.00 .9448 .2000 .3779
.20 2.00 4.00 1.3746 .2000 .5195
.20 2.00 8.00 1.6581 .2000 .8613
.20 5.00 1.00 1.1157 .2000 .1600
.20 5.00 2.00 2.3619 .2000 .1512
.20 5.00 4.00 3.4365 .2000 .2078
.20 5.00 8.00 4.1452 .2000 .3445
.30 .50 1.00 .1783 .3000 1.4000
.30 .50 2.00 .2986 .3000 1.6722
.30 .50 4.00 .3864 .3000 2.5846
.30 .50 8.00 .4395 .3000 4.5442
.30 1.00 1.00 .3567 .3000 .7000
.30 1.00 2.00 .5972 .3000 .8361
.30 1.00 4.00 .7728 .3000 1.2923
.30 1.00 8.00 .8791 .3000 2.2721
.30 2.00 1.00 .7133 .3000 .3500
.30 2.00 2.00 1.1944 .3000 .4181
.30 2.00 4.00 1.5456 .3000 .6461
.30 2.00 8.00 1.7582 .3000 1.1360
.30 5.00 1.00 1.7834 .3000 .1400
.30 5.00 2.00 2.9861 .3000 .1672
.30 5.00 4.00 3.8640 .3000 .2585
.30 5.00 8.00 4.3955 .3000 .4544
.40 .50 1.00 .2554 .4000 1.2000
.40 .50 2.00 .3574 .4000 1.7153
.40 .50 4.00 .4227 .4000 2.9003
.40 .50 8.00 .4597 .4000 5.3335
.40 1.00 1.00 .5108 .4000 .6000
.40 1.00 2.00 .7147 .4000 .8577
.40 1.00 4.00 .8454 .4000 1.4502
.40 1.00 8.00 .9195 .4000 2.6667
.40 2.00 1.00 1.0217 .4000 .3000
.40 2.00 2.00 1.4294 .4000 .4288
.40 2.00 4.00 1.6908 .4000 .7251
.40 2.00 8.00 1.8389 .4000 1.3334
.40 5.00 1.00 2.5541 .4000 .1200
.40 5.00 2.00 3.5736 .4000 .1715
.40 5.00 4.00 4.2271 .4000 .2900
.40 5.00 8.00 4.5973 .4000 .5333
.50 .50 1.00 .3466 .5000 1.0000
.50 .50 2.00 .4163 .5000 1.6651
.50 .50 4.00 .4562 .5000 3.0386
.50 .50 8.00 .4776 .5000 5.8051
.50 1.00 1.00 .6931 .5000 .5000
.50 1.00 2.00 .8326 .5000 .8326
.50 1.00 4.00 .9124 .5000 1.5193
.50 1.00 8.00 .9552 .5000 2.9026
.50 2.00 1.00 1.3863 .5000 .2500
.50 2.00 2.00 1.6651 .5000 .4163
.50 2.00 4.00 1.8249 .5000 .7597
.50 2.00 8.00 1.9104 .5000 1.4513
.50 5.00 1.00 3.4657 .5000 .1000
.50 5.00 2.00 4.1628 .5000 .1665
.50 5.00 4.00 4.5622 .5000 .3039
.50 5.00 8.00 4.7761 .5000 .5805
.60 .50 1.00 .4581 .6000 .8000
.60 .50 2.00 .4786 .6000 1.5316
.60 .50 4.00 .4892 .6000 2.9969
.60 .50 8.00 .4946 .6000 5.9287
.60 1.00 1.00 .9163 .6000 .4000
.60 1.00 2.00 .9572 .6000 .7658
.60 1.00 4.00 .9784 .6000 1.4985
.60 1.00 8.00 .9891 .6000 2.9643
.60 2.00 1.00 1.8326 .6000 .2000
.60 2.00 2.00 1.9145 .6000 .3829
.60 2.00 4.00 1.9568 .6000 .7492
.60 2.00 8.00 1.9783 .6000 1.4822
.60 5.00 1.00 4.5815 .6000 .0800
.60 5.00 2.00 4.7862 .6000 .1532
.60 5.00 4.00 4.8919 .6000 .2997
.60 5.00 8.00 4.9457 .6000 .5929
.70 .50 1.00 .6020 .7000 .6000
.70 .50 2.00 .5486 .7000 1.3167
.70 .50 4.00 .5238 .7000 2.7585
.70 .50 8.00 .5117 .7000 5.6465
.70 1.00 1.00 1.2040 .7000 .3000
.70 1.00 2.00 1.0973 .7000 .6584
.70 1.00 4.00 1.0475 .7000 1.3793
.70 1.00 8.00 1.0235 .7000 2.8233
.70 2.00 1.00 2.4079 .7000 .1500
.70 2.00 2.00 2.1945 .7000 .3292
.70 2.00 4.00 2.0950 .7000 .6896
.70 2.00 8.00 2.0469 .7000 1.4116
.70 5.00 1.00 6.0199 .7000 .0600
.70 5.00 2.00 5.4863 .7000 .1317
.70 5.00 4.00 5.2375 .7000 .2759
.70 5.00 8.00 5.1174 .7000 .5647
.80 .50 1.00 .8047 .8000 .4000
.80 .50 2.00 .6343 .8000 1.0149
.80 .50 4.00 .5632 .8000 2.2863
.80 .50 8.00 .5306 .8000 4.8528
.80 1.00 1.00 1.6094 .8000 .2000
.80 1.00 2.00 1.2686 .8000 .5075
.80 1.00 4.00 1.1263 .8000 1.1431
.80 1.00 8.00 1.0613 .8000 2.4264
.80 2.00 1.00 3.2189 .8000 .1000
.80 2.00 2.00 2.5373 .8000 .2537
.80 2.00 4.00 2.2527 .8000 .5716
.80 2.00 8.00 2.1226 .8000 1.2132
.80 5.00 1.00 8.0472 .8000 .0400
.80 5.00 2.00 6.3432 .8000 .1015
.80 5.00 4.00 5.6317 .8000 .2286
.80 5.00 8.00 5.3065 .8000 .4853
.90 .50 1.00 1.1513 .9000 .2000
.90 .50 2.00 .7587 .9000 .6070
.90 .50 4.00 .6159 .9000 1.4954
.90 .50 8.00 .5549 .9000 3.3194
.90 1.00 1.00 2.3026 .9000 .1000
.90 1.00 2.00 1.5174 .9000 .3035
.90 1.00 4.00 1.2318 .9000 .7477
.90 1.00 8.00 1.1099 .9000 1.6597
.90 2.00 1.00 4.6052 .9000 .0500
.90 2.00 2.00 3.0349 .9000 .1517
.90 2.00 4.00 2.4637 .9000 .3738
.90 2.00 8.00 2.2198 .9000 .8298
.90 5.00 1.00 11.5129 .9000 .0200
.90 5.00 2.00 7.5871 .9000 .0607
.90 5.00 4.00 6.1592 .9000 .1495
.90 5.00 8.00 5.5494 .9000 .3319
.99 .50 1.00 2.3026 .9900 .0200
.99 .50 2.00 1.0730 .9900 .0858
.99 .50 4.00 .7325 .9900 .2515
.99 .50 8.00 .6052 .9900 .6088
.99 1.00 1.00 4.6052 .9900 .0100
.99 1.00 2.00 2.1460 .9900 .0429
.99 1.00 4.00 1.4649 .9900 .1257
.99 1.00 8.00 1.2103 .9900 .3044
.99 2.00 1.00 9.2103 .9900 .0050
.99 2.00 2.00 4.2919 .9900 .0215
.99 2.00 4.00 2.9298 .9900 .0629
.99 2.00 8.00 2.4207 .9900 .1522
.99 5.00 1.00 23.0259 .9900 .0020
.99 5.00 2.00 10.7298 .9900 .0086
.99 5.00 4.00 7.3246 .9900 .0251
.99 5.00 8.00 6.0517 .9900 .0609
])
pspp-0.8.5/tests/coverage.sh 0000755 0001750 0001750 00000001675 12470242642 012737 0000000 0000000 #!/bin/sh
# This little script can be used in conjunction with gcov to see how well
# the regression test suite is covering the PSPP code.
#
# To use it:
#
# make distclean
# CFLAGS="-O0 -g -fprofile-arcs -ftest-coverage"
# export CFLAGS
# ./configure
# make check
# tests/coverage.sh
TEMPDIR=/tmp/pspp-cov-$$
export TEMPDIR
mkdir -p $TEMPDIR
files=`find src -name '*.c'`
summary_file="$TEMPDIR/coverage.txt"
export summary_file
rm -f $summary_file
for f in $files ; do
dir=`dirname $f`
gcov -p -l -n -o $dir $f | grep -v '^Creat' >> $summary_file
done
cat > "$TEMPDIR/cov.sps" << EOF
DATA LIST FREE FILE='$summary_file' /COVERAGE (PCT8) d1 (a2) lines * d2 (a10) d3 (a10) d4 (a10) d5 (a10) file (a25).
AGGREGATE OUTFILE=*
/BREAK=file
/COVERAGE=MIN(COVERAGE).
SORT CASES BY COVERAGE.
LIST /COVERAGE file.
FREQUENCIES /COVERAGE
/HISTOGRAM
/PERCENTILES=25,50,75,90.
EOF
src/pspp -o pspp.html $TEMPDIR/cov.sps
rm -rf $TEMPDIR
pspp-0.8.5/tests/perl-module.at 0000644 0001750 0001750 00000037714 12523704223 013360 0000000 0000000 AT_BANNER([Perl module tests])
dnl This command can be used to run with the PSPP Perl module after it has been
dnl built (with "make") but before it has been installed. The -I options are
dnl equivalent to "use ExtUtils::testlib;" inside the Perl program, but it does
dnl not need to be run with the perl-module build directory as the current
dnl working directory.
dnl
dnl XXX "libtool --mode=execute" is probably better than setting
dnl LD_LIBRARY_PATH.
m4_define([RUN_PERL_MODULE],
[LD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
DYLD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
$PERL -I$abs_top_builddir/perl-module/blib/arch \
-I$abs_top_builddir/perl-module/blib/lib])
AT_SETUP([Perl create system file])
AT_SKIP_IF([test "$WITH_PERL_MODULE" = no])
AT_DATA([test.pl],
[use warnings;
use strict;
use PSPP;
my $d = PSPP::Dict->new();
die "dictionary creation" if !ref $d;
die if $d->get_var_cnt () != 0;
$d->set_label ("My Dictionary");
$d->set_documents ("These Documents");
# Tests for variable creation
my $var0 = PSPP::Var->new ($d, "le");
die "trap illegal variable name" if ref $var0;
die if $d->get_var_cnt () != 0;
$var0 = PSPP::Var->new ($d, "legal");
die "accept legal variable name" if !ref $var0;
die if $d->get_var_cnt () != 1;
my $var1 = PSPP::Var->new ($d, "money",
(fmt=>PSPP::Fmt::DOLLAR,
width=>4, decimals=>2) );
die "cappet valid format" if !ref $var1;
die if $d->get_var_cnt () != 2;
$d->set_weight ($var1);
my $sysfile = PSPP::Sysfile->new ('testfile.sav', $d);
die "create sysfile object" if !ref $sysfile;
$sysfile->close ();
])
AT_CHECK([RUN_PERL_MODULE test.pl])
AT_DATA([dump-dict.sps],
[GET FILE='testfile.sav'.
DISPLAY FILE LABEL.
DISPLAY DOCUMENTS.
DISPLAY DICTIONARY.
SHOW WEIGHT.
])
AT_CHECK([pspp -O format=csv dump-dict.sps], [0],
[File label: My Dictionary
Documents in the active dataset:
These Documents
Variable,Description,Position
legal,Format: F9.2,1
money,Format: DOLLAR6.2,2
dump-dict.sps:5: note: SHOW: WEIGHT is money.
])
AT_CLEANUP
AT_SETUP([Perl writing cases to system files])
AT_SKIP_IF([test "$WITH_PERL_MODULE" = no])
AT_DATA([test.pl],
[[use warnings;
use strict;
use PSPP;
my $d = PSPP::Dict->new();
PSPP::Var->new ($d, "id",
(
fmt=>PSPP::Fmt::F,
width=>2,
decimals=>0
)
);
PSPP::Var->new ($d, "name",
(
fmt=>PSPP::Fmt::A,
width=>20,
)
);
$d->set_documents ("This should not appear");
$d->clear_documents ();
$d->add_document ("This is a document line");
$d->set_label ("This is the file label");
# Check that we can write cases to system files.
my $sysfile = PSPP::Sysfile->new ("testfile.sav", $d);
my $res = $sysfile->append_case ( [34, "frederick"]);
die "append case" if !$res;
$res = $sysfile->append_case ( [34, "frederick", "extra"]);
die "append case with too many variables" if $res;
$sysfile->close ();
# Check that sysfiles are closed properly automaticallly in the destructor.
my $sysfile2 = PSPP::Sysfile->new ("testfile2.sav", $d);
$res = $sysfile2->append_case ( [21, "wheelbarrow"]);
die "append case 2" if !$res;
$res = $sysfile->append_case ( [34, "frederick", "extra"]);
die "append case with too many variables" if $res;
# Don't close. We want to test that the destructor does that.
]])
AT_CHECK([RUN_PERL_MODULE test.pl])
AT_DATA([dump-dicts.sps],
[GET FILE='testfile.sav'.
DISPLAY DICTIONARY.
DISPLAY FILE LABEL.
DISPLAY DOCUMENTS.
LIST.
GET FILE='testfile2.sav'.
DISPLAY DICTIONARY.
DISPLAY FILE LABEL.
DISPLAY DOCUMENTS.
LIST.
])
AT_CHECK([pspp -O format=csv dump-dicts.sps], [0],
[Variable,Description,Position
id,Format: F2.0,1
name,Format: A20,2
File label: This is the file label
Documents in the active dataset:
This is a document line
Table: Data List
id,name
34,frederick @&t@
Variable,Description,Position
id,Format: F2.0,1
name,Format: A20,2
File label: This is the file label
Documents in the active dataset:
This is a document line
Table: Data List
id,name
21,wheelbarrow @&t@
])
AT_CLEANUP
AT_SETUP([Perl write variable parameters])
AT_SKIP_IF([test "$WITH_PERL_MODULE" = no])
AT_DATA([test.pl],
[[use warnings;
use strict;
use PSPP;
my $dict = PSPP::Dict->new();
die "dictionary creation" if !ref $dict;
my $int = PSPP::Var->new ($dict, "integer",
(width=>8, decimals=>0) );
$int->set_label ("My Integer");
$int->add_value_label (99, "Silly");
$int->clear_value_labels ();
$int->add_value_label (0, "Zero");
$int->add_value_label (1, "Unity");
$int->add_value_label (2, "Duality");
my $str = PSPP::Var->new ($dict, "string",
(fmt=>PSPP::Fmt::A, width=>8) );
$str->set_label ("My String");
$str->add_value_label ("xx", "foo");
$str->add_value_label ("yy", "bar");
$str->set_missing_values ("this", "that");
my $longstr = PSPP::Var->new ($dict, "longstring",
(fmt=>PSPP::Fmt::A, width=>9) );
$longstr->set_label ("My Long String");
my $re = $longstr->add_value_label ("xxx", "xfoo");
$int->set_missing_values (9, 99);
my $sysfile = PSPP::Sysfile->new ("testfile.sav", $dict);
$sysfile->close ();
]])
AT_CHECK([RUN_PERL_MODULE test.pl])
AT_DATA([dump-dict.sps],
[GET FILE='testfile.sav'.
DISPLAY DICTIONARY.
])
AT_CHECK([pspp -O format=csv dump-dict.sps], [0],
[Variable,Description,Position
integer,"Label: My Integer
Format: F8.0
Missing Values: 9; 99
Value,Label
0,Zero
1,Unity
2,Duality",1
string,"Label: My String
Format: A8
Missing Values: ""this ""; ""that ""
Value,Label
xx ,foo
yy ,bar",2
longstring,"Label: My Long String
Format: A9
Value,Label
xxx ,xfoo",3
])
AT_CLEANUP
AT_SETUP([Perl dictionary survives system file])
AT_SKIP_IF([test "$WITH_PERL_MODULE" = no])
AT_DATA([test.pl],
[[use warnings;
use strict;
use PSPP;
my $sysfile ;
{
my $d = PSPP::Dict->new();
PSPP::Var->new ($d, "id",
(
fmt=>PSPP::Fmt::F,
width=>2,
decimals=>0
)
);
$sysfile = PSPP::Sysfile->new ("testfile.sav", $d);
}
my $res = $sysfile->append_case ([3]);
print "Dictionary survives sysfile\n" if $res;
]])
AT_CHECK([RUN_PERL_MODULE test.pl], [0],
[Dictionary survives sysfile
])
AT_CLEANUP
m4_define([PERL_GENERATE_SYSFILE],
[AT_DATA([sample.sps],
[[data list notable list /string (a8) longstring (a12) numeric (f10) date (date11) dollar (dollar8.2) datetime (datetime17)
begin data.
1111 One 1 1/1/1 1 1/1/1+01:01
2222 Two 2 2/2/2 2 2/2/2+02:02
3333 Three 3 3/3/3 3 3/3/3+03:03
. . . . . .
5555 Five 5 5/5/5 5 5/5/5+05:05
end data.
variable labels string 'A Short String Variable'
/longstring 'A Long String Variable'
/numeric 'A Numeric Variable'
/date 'A Date Variable'
/dollar 'A Dollar Variable'
/datetime 'A Datetime Variable'.
missing values numeric (9, 5, 999).
missing values string ("3333").
add value labels
/string '1111' 'ones' '2222' 'twos' '3333' 'threes'
/numeric 1 'Unity' 2 'Duality' 3 'Thripality'.
variable attribute
variables = numeric
attribute=colour[1]('blue') colour[2]('pink') colour[3]('violet')
attribute=size('large') nationality('foreign').
save outfile='sample.sav'.
]])
AT_CHECK([pspp -O format=csv sample.sps])])
AT_SETUP([Perl read system file])
AT_SKIP_IF([test "$WITH_PERL_MODULE" = no])
PERL_GENERATE_SYSFILE
AT_DATA([test.pl],
[[use warnings;
use strict;
use PSPP;
my $sf = PSPP::Reader->open ("sample.sav");
my $dict = $sf->get_dict ();
for (my $v = 0 ; $v < $dict->get_var_cnt() ; $v++)
{
my $var = $dict->get_var ($v);
my $name = $var->get_name ();
my $label = $var->get_label ();
print "Variable $v is \"$name\", label is \"$label\"\n";
my $vl = $var->get_value_labels ();
print "Value Labels:\n";
print "$_ => $vl->{$_}\n" for sort (keys %$vl);
}
while (my @c = $sf->get_next_case () )
{
for (my $v = 0; $v < $dict->get_var_cnt(); $v++)
{
print "val$v: \"$c[$v]\"\n";
}
print "\n";
}
]])
AT_CHECK([RUN_PERL_MODULE test.pl], [0],
[Variable 0 is "string", label is "A Short String Variable"
Value Labels:
1111 => ones
2222 => twos
3333 => threes
Variable 1 is "longstring", label is "A Long String Variable"
Value Labels:
Variable 2 is "numeric", label is "A Numeric Variable"
Value Labels:
1 => Unity
2 => Duality
3 => Thripality
Variable 3 is "date", label is "A Date Variable"
Value Labels:
Variable 4 is "dollar", label is "A Dollar Variable"
Value Labels:
Variable 5 is "datetime", label is "A Datetime Variable"
Value Labels:
val0: "1111 "
val1: "One "
val2: "1"
val3: "13197686400"
val4: "1"
val5: "13197690060"
val0: "2222 "
val1: "Two "
val2: "2"
val3: "13231987200"
val4: "2"
val5: "13231994520"
val0: "3333 "
val1: "Three "
val2: "3"
val3: "13266028800"
val4: "3"
val5: "13266039780"
val0: ". "
val1: ". "
val2: ""
val3: ""
val4: ""
val5: ""
val0: "5555 "
val1: "Five "
val2: "5"
val3: "13334630400"
val4: "5"
val5: "13334648700"
])
AT_CLEANUP
AT_SETUP([Perl copying system files])
AT_SKIP_IF([test "$WITH_PERL_MODULE" = no])
PERL_GENERATE_SYSFILE
AT_DATA([test.pl],
[[use warnings;
use strict;
use PSPP;
my $input = PSPP::Reader->open ("sample.sav");
my $dict = $input->get_dict ();
my $output = PSPP::Sysfile->new ("copy.sav", $dict);
while (my (@c) = $input->get_next_case () )
{
$output->append_case (\@c);
}
$output->close ();
]])
AT_CHECK([RUN_PERL_MODULE test.pl])
AT_DATA([dump-dicts.sps],
[GET FILE='sample.sav'.
DISPLAY DICTIONARY.
LIST.
GET FILE='copy.sav'.
DISPLAY DICTIONARY.
LIST.
])
AT_CHECK([pspp -O format=csv dump-dicts.sps], [0],
[[Variable,Description,Position
string,"Label: A Short String Variable
Format: A8
Missing Values: ""3333 ""
Value,Label
1111 ,ones
2222 ,twos
3333 ,threes",1
longstring,"Label: A Long String Variable
Format: A12",2
numeric,"Label: A Numeric Variable
Format: F10.0
Missing Values: 9; 5; 999
Value,Label
1,Unity
2,Duality
3,Thripality
Attribute,Value
colour[1],blue
colour[2],pink
colour[3],violet
nationality,foreign
size,large",3
date,"Label: A Date Variable
Format: DATE11",4
dollar,"Label: A Dollar Variable
Format: DOLLAR11.2",5
datetime,"Label: A Datetime Variable
Format: DATETIME17.0",6
Table: Data List
string,longstring,numeric,date,dollar,datetime
1111 ,One ,1,01-JAN-2001,$1.00,01-JAN-2001 01:01
2222 ,Two ,2,02-FEB-2002,$2.00,02-FEB-2002 02:02
3333 ,Three ,3,03-MAR-2003,$3.00,03-MAR-2003 03:03
. ,. ,.,.,. ,.
5555 ,Five ,5,05-MAY-2005,$5.00,05-MAY-2005 05:05
Variable,Description,Position
string,"Label: A Short String Variable
Format: A8
Missing Values: ""3333 ""
Value,Label
1111 ,ones
2222 ,twos
3333 ,threes",1
longstring,"Label: A Long String Variable
Format: A12",2
numeric,"Label: A Numeric Variable
Format: F10.0
Missing Values: 9; 5; 999
Value,Label
1,Unity
2,Duality
3,Thripality
Attribute,Value
colour[1],blue
colour[2],pink
colour[3],violet
nationality,foreign
size,large",3
date,"Label: A Date Variable
Format: DATE11",4
dollar,"Label: A Dollar Variable
Format: DOLLAR11.2",5
datetime,"Label: A Datetime Variable
Format: DATETIME17.0",6
Table: Data List
string,longstring,numeric,date,dollar,datetime
1111 ,One ,1,01-JAN-2001,$1.00,01-JAN-2001 01:01
2222 ,Two ,2,02-FEB-2002,$2.00,02-FEB-2002 02:02
3333 ,Three ,3,03-MAR-2003,$3.00,03-MAR-2003 03:03
. ,. ,.,.,. ,.
5555 ,Five ,5,05-MAY-2005,$5.00,05-MAY-2005 05:05
]])
AT_CLEANUP
AT_SETUP([Perl value formatting])
AT_SKIP_IF([test "$WITH_PERL_MODULE" = no])
AT_DATA([dd.sps],
[DATA LIST LIST /d (DATETIME17).
BEGIN DATA.
11/9/2001+08:20
END DATA.
SAVE OUTFILE='dd.sav'.
])
AT_CHECK([pspp -O format=csv dd.sps], [0],
[Table: Reading free-form data from INLINE.
Variable,Format
d,DATETIME17.0
])
AT_DATA([test.pl],
[[use warnings;
use strict;
use PSPP;
my $sf = PSPP::Reader->open ("dd.sav");
my $dict = $sf->get_dict ();
my (@c) = $sf->get_next_case ();
my $var = $dict->get_var (0);
my $val = $c[0];
my $formatted = PSPP::format_value ($val, $var);
my $str = gmtime ($val - PSPP::PERL_EPOCH);
print "Formatted string is \"$formatted\"\n";
print "Perl representation is \"$str\"\n";
]])
AT_CHECK([RUN_PERL_MODULE test.pl], [0],
[[Formatted string is "11-SEP-2001 08:20"
Perl representation is "Tue Sep 11 08:20:00 2001"
]])
AT_CLEANUP
AT_SETUP([Perl opening nonexistent file])
AT_SKIP_IF([test "$WITH_PERL_MODULE" = no])
AT_DATA([test.pl],
[[use warnings;
use strict;
use PSPP;
my $sf = PSPP::Reader->open ("no-such-file.sav");
die "Returns undef on opening failure" if ref $sf;
print $PSPP::errstr, "\n";
]])
AT_CHECK([RUN_PERL_MODULE test.pl], [0],
[[An error occurred while opening `no-such-file.sav': No such file or directory.
]],
[[Name "PSPP::errstr" used only once: possible typo at test.pl line 8.
]])
AT_CLEANUP
AT_SETUP([Perl missing values])
AT_SKIP_IF([test "$WITH_PERL_MODULE" = no])
PERL_GENERATE_SYSFILE
AT_DATA([test.pl],
[[use warnings;
use strict;
use PSPP;
my $sf = PSPP::Reader->open ("sample.sav");
my $dict = $sf->get_dict ();
my (@c) = $sf->get_next_case ();
my $stringvar = $dict->get_var (0);
my $numericvar = $dict->get_var (2);
my $val = $c[0];
die "Missing Value Negative String"
if PSPP::value_is_missing ($val, $stringvar);
$val = $c[2];
die "Missing Value Negative Num"
if PSPP::value_is_missing ($val, $numericvar);
@c = $sf->get_next_case ();
@c = $sf->get_next_case ();
$val = $c[0];
die "Missing Value Positive"
if !PSPP::value_is_missing ($val, $stringvar);
@c = $sf->get_next_case ();
$val = $c[2];
die "Missing Value Positive SYS"
if !PSPP::value_is_missing ($val, $numericvar);
@c = $sf->get_next_case ();
$val = $c[2];
die "Missing Value Positive Num"
if !PSPP::value_is_missing ($val, $numericvar);
]])
AT_CHECK([RUN_PERL_MODULE test.pl])
AT_CLEANUP
AT_SETUP([Perl custom attributes])
AT_SKIP_IF([test "$WITH_PERL_MODULE" = no])
PERL_GENERATE_SYSFILE
AT_DATA([test.pl],
[[use warnings;
use strict;
use PSPP;
my $sf = PSPP::Reader->open ("sample.sav");
my $dict = $sf->get_dict ();
my $var = $dict->get_var_by_name ("numeric");
my $attr = $var->get_attributes ();
foreach my $k (sort (keys (%$attr)))
{
my $ll = $attr->{$k};
print "$k =>";
print map "$_\n", join ', ', @$ll;
}
]])
AT_CHECK([RUN_PERL_MODULE test.pl], [0],
[[$@Role =>0
colour =>blue, pink, violet
nationality =>foreign
size =>large
]])
AT_CLEANUP
AT_SETUP([Perl Pspp.t])
AT_SKIP_IF([test "$WITH_PERL_MODULE" = no])
# Skip this test if Perl's Text::Diff module is not installed.
AT_CHECK([perl -MText::Diff -e '' || exit 77])
AT_CHECK([RUN_PERL_MODULE $abs_top_builddir/perl-module/t/Pspp.t], [0],
[[1..37
ok 1 - use PSPP;
ok 2 - Dictionary Creation
ok 3
ok 4 - Trap illegal variable name
ok 5
ok 6 - Accept legal variable name
ok 7
ok 8 - Trap duplicate variable name
ok 9
ok 10 - Accept valid format
ok 11
ok 12 - Create sysfile object
ok 13 - Write system file
ok 14 - Append Case
ok 15 - Appending Case with too many variables
ok 16 - existance
ok 17 - Append Case 2
ok 18 - existance2
ok 19 - Check output
ok 20 - Dictionary Creation 2
ok 21 - Value label for short string
ok 22 - Value label for long string
ok 23 - Check output 2
ok 24 - Dictionary survives sysfile
ok 25 - Basic reader operation
ok 26 - Streaming of files
Formatted string is "11-SEP-2001 08:20"
ok 27 - format_value function
ok 28 - Perl representation of time
ok 29 - Returns undef on opening failure
ok 30 - Error string on open failure
ok 31 - Missing Value Negative String
ok 32 - Missing Value Negative Num
ok 33 - Missing Value Positive
ok 34 - Missing Value Positive SYS
ok 35 - Missing Value Positive Num
ok 36 - Custom Attributes
ok 37 - Case count
]],[ignore])
AT_CLEANUP
pspp-0.8.5/tests/testsuite 0000644 0001750 0001750 00013457144 12541162137 012572 0000000 0000000 #! /bin/sh
# Generated from ../tests/testsuite.at by GNU Autoconf 2.69.
#
# Copyright (C) 2009-2012 Free Software Foundation, Inc.
#
# This test suite is free software; the Free Software Foundation gives
# unlimited permission to copy, distribute and modify it.
## -------------------- ##
## M4sh Initialization. ##
## -------------------- ##
# Be more Bourne compatible
DUALCASE=1; export DUALCASE # for MKS sh
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
emulate sh
NULLCMD=:
# Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
# is contrary to our usage. Disable this feature.
alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
else
case `(set -o) 2>/dev/null` in #(
*posix*) :
set -o posix ;; #(
*) :
;;
esac
fi
as_nl='
'
export as_nl
# Printing a long string crashes Solaris 7 /usr/bin/printf.
as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
# Prefer a ksh shell builtin over an external printf program on Solaris,
# but without wasting forks for bash or zsh.
if test -z "$BASH_VERSION$ZSH_VERSION" \
&& (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
as_echo='print -r --'
as_echo_n='print -rn --'
elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
as_echo='printf %s\n'
as_echo_n='printf %s'
else
if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
as_echo_n='/usr/ucb/echo -n'
else
as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
as_echo_n_body='eval
arg=$1;
case $arg in #(
*"$as_nl"*)
expr "X$arg" : "X\\(.*\\)$as_nl";
arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
esac;
expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
'
export as_echo_n_body
as_echo_n='sh -c $as_echo_n_body as_echo'
fi
export as_echo_body
as_echo='sh -c $as_echo_body as_echo'
fi
# The user is always right.
if test "${PATH_SEPARATOR+set}" != set; then
PATH_SEPARATOR=:
(PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
(PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
PATH_SEPARATOR=';'
}
fi
# IFS
# We need space, tab and new line, in precisely that order. Quoting is
# there to prevent editors from complaining about space-tab.
# (If _AS_PATH_WALK were called with IFS unset, it would disable word
# splitting by setting IFS to empty value.)
IFS=" "" $as_nl"
# Find who we are. Look in the path if we contain no directory separator.
as_myself=
case $0 in #((
*[\\/]* ) as_myself=$0 ;;
*) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
done
IFS=$as_save_IFS
;;
esac
# We did not find ourselves, most probably we were run as `sh COMMAND'
# in which case we are not to be found in the path.
if test "x$as_myself" = x; then
as_myself=$0
fi
if test ! -f "$as_myself"; then
$as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
exit 1
fi
# Unset variables that we do not need and which cause bugs (e.g. in
# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
# suppresses any "Segmentation fault" message there. '((' could
# trigger a bug in pdksh 5.2.14.
for as_var in BASH_ENV ENV MAIL MAILPATH
do eval test x\${$as_var+set} = xset \
&& ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
done
PS1='$ '
PS2='> '
PS4='+ '
# NLS nuisances.
LC_ALL=C
export LC_ALL
LANGUAGE=C
export LANGUAGE
# CDPATH.
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
if test "x$CONFIG_SHELL" = x; then
as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
emulate sh
NULLCMD=:
# Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
# is contrary to our usage. Disable this feature.
alias -g '\${1+\"\$@\"}'='\"\$@\"'
setopt NO_GLOB_SUBST
else
case \`(set -o) 2>/dev/null\` in #(
*posix*) :
set -o posix ;; #(
*) :
;;
esac
fi
"
as_required="as_fn_return () { (exit \$1); }
as_fn_success () { as_fn_return 0; }
as_fn_failure () { as_fn_return 1; }
as_fn_ret_success () { return 0; }
as_fn_ret_failure () { return 1; }
exitcode=0
as_fn_success || { exitcode=1; echo as_fn_success failed.; }
as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
else
exitcode=1; echo positional parameters were not saved.
fi
test x\$exitcode = x0 || exit 1
test -x / || exit 1"
as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
test \$(( 1 + 1 )) = 2 || exit 1"
if (eval "$as_required") 2>/dev/null; then :
as_have_required=yes
else
as_have_required=no
fi
if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
as_found=false
for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
as_found=:
case $as_dir in #(
/*)
for as_base in sh bash ksh sh5; do
# Try only shells that exist, to save several forks.
as_shell=$as_dir/$as_base
if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
{ $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
CONFIG_SHELL=$as_shell as_have_required=yes
if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
break 2
fi
fi
done;;
esac
as_found=false
done
$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
{ $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
CONFIG_SHELL=$SHELL as_have_required=yes
fi; }
IFS=$as_save_IFS
if test "x$CONFIG_SHELL" != x; then :
export CONFIG_SHELL
# We cannot yet assume a decent shell, so we have to provide a
# neutralization value for shells without unset; and this also
# works around shells that cannot unset nonexistent variables.
# Preserve -v and -x to the replacement shell.
BASH_ENV=/dev/null
ENV=/dev/null
(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
case $- in # ((((
*v*x* | *x*v* ) as_opts=-vx ;;
*v* ) as_opts=-v ;;
*x* ) as_opts=-x ;;
* ) as_opts= ;;
esac
exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
# Admittedly, this is quite paranoid, since all the known shells bail
# out after a failed `exec'.
$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
exit 255
fi
if test x$as_have_required = xno; then :
$as_echo "$0: This script requires a shell more modern than all"
$as_echo "$0: the shells that I found on your system."
if test x${ZSH_VERSION+set} = xset ; then
$as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
$as_echo "$0: be upgraded to zsh 4.3.4 or later."
else
$as_echo "$0: Please tell bug-autoconf@gnu.org about your system,
$0: including any error possibly output before this
$0: message. Then install a modern shell, or manually run
$0: the script under such a shell if you do have one."
fi
exit 1
fi
fi
fi
SHELL=${CONFIG_SHELL-/bin/sh}
export SHELL
# Unset more variables known to interfere with behavior of common tools.
CLICOLOR_FORCE= GREP_OPTIONS=
unset CLICOLOR_FORCE GREP_OPTIONS
## --------------------- ##
## M4sh Shell Functions. ##
## --------------------- ##
# as_fn_unset VAR
# ---------------
# Portably unset VAR.
as_fn_unset ()
{
{ eval $1=; unset $1;}
}
as_unset=as_fn_unset
# as_fn_set_status STATUS
# -----------------------
# Set $? to STATUS, without forking.
as_fn_set_status ()
{
return $1
} # as_fn_set_status
# as_fn_exit STATUS
# -----------------
# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
as_fn_exit ()
{
set +e
as_fn_set_status $1
exit $1
} # as_fn_exit
# as_fn_mkdir_p
# -------------
# Create "$as_dir" as a directory, including parents if necessary.
as_fn_mkdir_p ()
{
case $as_dir in #(
-*) as_dir=./$as_dir;;
esac
test -d "$as_dir" || eval $as_mkdir_p || {
as_dirs=
while :; do
case $as_dir in #(
*\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
*) as_qdir=$as_dir;;
esac
as_dirs="'$as_qdir' $as_dirs"
as_dir=`$as_dirname -- "$as_dir" ||
$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$as_dir" : 'X\(//\)[^/]' \| \
X"$as_dir" : 'X\(//\)$' \| \
X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
$as_echo X"$as_dir" |
sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
s//\1/
q
}
/^X\(\/\/\)[^/].*/{
s//\1/
q
}
/^X\(\/\/\)$/{
s//\1/
q
}
/^X\(\/\).*/{
s//\1/
q
}
s/.*/./; q'`
test -d "$as_dir" && break
done
test -z "$as_dirs" || eval "mkdir $as_dirs"
} || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
} # as_fn_mkdir_p
# as_fn_executable_p FILE
# -----------------------
# Test if FILE is an executable regular file.
as_fn_executable_p ()
{
test -f "$1" && test -x "$1"
} # as_fn_executable_p
# as_fn_append VAR VALUE
# ----------------------
# Append the text in VALUE to the end of the definition contained in VAR. Take
# advantage of any shell optimizations that allow amortized linear growth over
# repeated appends, instead of the typical quadratic growth present in naive
# implementations.
if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
eval 'as_fn_append ()
{
eval $1+=\$2
}'
else
as_fn_append ()
{
eval $1=\$$1\$2
}
fi # as_fn_append
# as_fn_arith ARG...
# ------------------
# Perform arithmetic evaluation on the ARGs, and store the result in the
# global $as_val. Take advantage of shells that can avoid forks. The arguments
# must be portable across $(()) and expr.
if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
eval 'as_fn_arith ()
{
as_val=$(( $* ))
}'
else
as_fn_arith ()
{
as_val=`expr "$@" || test $? -eq 1`
}
fi # as_fn_arith
# as_fn_error STATUS ERROR [LINENO LOG_FD]
# ----------------------------------------
# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
# script with STATUS, using 1 if that was 0.
as_fn_error ()
{
as_status=$1; test $as_status -eq 0 && as_status=1
if test "$4"; then
as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
$as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
fi
$as_echo "$as_me: error: $2" >&2
as_fn_exit $as_status
} # as_fn_error
if expr a : '\(a\)' >/dev/null 2>&1 &&
test "X`expr 00001 : '.*\(...\)'`" = X001; then
as_expr=expr
else
as_expr=false
fi
if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
as_basename=basename
else
as_basename=false
fi
as_me=`$as_basename -- "$0" ||
$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
X"$0" : 'X\(//\)$' \| \
X"$0" : 'X\(/\)' \| . 2>/dev/null ||
$as_echo X/"$0" |
sed '/^.*\/\([^/][^/]*\)\/*$/{
s//\1/
q
}
/^X\/\(\/\/\)$/{
s//\1/
q
}
/^X\/\(\/\).*/{
s//\1/
q
}
s/.*/./; q'`
if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
as_dirname=dirname
else
as_dirname=false
fi
# Avoid depending upon Character Ranges.
as_cr_letters='abcdefghijklmnopqrstuvwxyz'
as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
as_cr_Letters=$as_cr_letters$as_cr_LETTERS
as_cr_digits='0123456789'
as_cr_alnum=$as_cr_Letters$as_cr_digits
as_lineno_1=$LINENO as_lineno_1a=$LINENO
as_lineno_2=$LINENO as_lineno_2a=$LINENO
eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
# Blame Lee E. McMahon (1931-1989) for sed's syntax. :-)
sed -n '
p
/[$]LINENO/=
' <$as_myself |
sed '
s/[$]LINENO.*/&-/
t lineno
b
:lineno
N
:loop
s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
t loop
s/-\n.*//
' >$as_me.lineno &&
chmod +x "$as_me.lineno" ||
{ $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
# If we had to re-execute with $CONFIG_SHELL, we're ensured to have
# already done that, so ensure we don't try to do so again and fall
# in an infinite loop. This has already happened in practice.
_as_can_reexec=no; export _as_can_reexec
# Don't try to exec as it changes $[0], causing all sort of problems
# (the dirname of $[0] is not the place where we might find the
# original and so on. Autoconf is especially sensitive to this).
. "./$as_me.lineno"
# Exit status is that of the last command.
exit
}
ECHO_C= ECHO_N= ECHO_T=
case `echo -n x` in #(((((
-n*)
case `echo 'xy\c'` in
*c*) ECHO_T=' ';; # ECHO_T is single tab character.
xy) ECHO_C='\c';;
*) echo `echo ksh88 bug on AIX 6.1` > /dev/null
ECHO_T=' ';;
esac;;
*)
ECHO_N='-n';;
esac
rm -f conf$$ conf$$.exe conf$$.file
if test -d conf$$.dir; then
rm -f conf$$.dir/conf$$.file
else
rm -f conf$$.dir
mkdir conf$$.dir 2>/dev/null
fi
if (echo >conf$$.file) 2>/dev/null; then
if ln -s conf$$.file conf$$ 2>/dev/null; then
as_ln_s='ln -s'
# ... but there are two gotchas:
# 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
# 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
# In both cases, we have to default to `cp -pR'.
ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
as_ln_s='cp -pR'
elif ln conf$$.file conf$$ 2>/dev/null; then
as_ln_s=ln
else
as_ln_s='cp -pR'
fi
else
as_ln_s='cp -pR'
fi
rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
rmdir conf$$.dir 2>/dev/null
if mkdir -p . 2>/dev/null; then
as_mkdir_p='mkdir -p "$as_dir"'
else
test -d ./-p && rmdir ./-p
as_mkdir_p=false
fi
as_test_x='test -x'
as_executable_p=as_fn_executable_p
# Sed expression to map a string onto a valid CPP name.
as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
# Sed expression to map a string onto a valid variable name.
as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
SHELL=${CONFIG_SHELL-/bin/sh}
# How were we run?
at_cli_args="$@"
# Not all shells have the 'times' builtin; the subshell is needed to make
# sure we discard the 'times: not found' message from the shell.
at_times_p=false
(times) >/dev/null 2>&1 && at_times_p=:
# CLI Arguments to pass to the debugging scripts.
at_debug_args=
# -e sets to true
at_errexit_p=false
# Shall we be verbose? ':' means no, empty means yes.
at_verbose=:
at_quiet=
# Running several jobs in parallel, 0 means as many as test groups.
at_jobs=1
at_traceon=:
at_trace_echo=:
at_check_filter_trace=:
# Shall we keep the debug scripts? Must be `:' when the suite is
# run by a debug script, so that the script doesn't remove itself.
at_debug_p=false
# Display help message?
at_help_p=false
# Display the version message?
at_version_p=false
# List test groups?
at_list_p=false
# --clean
at_clean=false
# Test groups to run
at_groups=
# Whether to rerun failed tests.
at_recheck=
# Whether a write failure occurred
at_write_fail=0
# The directory we run the suite in. Default to . if no -C option.
at_dir=`pwd`
# An absolute reference to this testsuite script.
case $as_myself in
[\\/]* | ?:[\\/]* ) at_myself=$as_myself ;;
* ) at_myself=$at_dir/$as_myself ;;
esac
# Whether -C is in effect.
at_change_dir=false
# Whether to enable colored test results.
at_color=no
# List of the tested programs.
at_tested=''
# As many question marks as there are digits in the last test group number.
# Used to normalize the test group numbers so that `ls' lists them in
# numerical order.
at_format='????'
# Description of all the test groups.
at_help_all="1;calendar.at:3;epoch;;
2;data-in.at:279;numeric input formats;data-in;
3;data-in.at:402;reading big numbers;data-in;
4;data-in.at:482;DATE input format;data-in;
5;data-in.at:694;ADATE input format;data-in;
6;data-in.at:906;EDATE input format;data-in;
7;data-in.at:1118;JDATE input format;data-in;
8;data-in.at:1330;SDATE input format;data-in;
9;data-in.at:1542;QYR input format;data-in;
10;data-in.at:1754;MOYR input format;data-in;
11;data-in.at:1966;WKYR input format;data-in;
12;data-in.at:2178;DATETIME input format;data-in;
13;data-in.at:2590;TIME input format;data-in;
14;data-in.at:3002;DTIME input format;data-in;
15;data-in.at:3414;binary and hexadecimal input (IB, PIB, and PIBHEX formats);;
16;data-in.at:3435;BCD input (P and PK formats);;
17;data-in.at:3455;legacy input (N and Z formats);;
18;data-in.at:3475;WKDAY input format;;
19;data-in.at:3535;MONTH input format;;
20;data-out.at:3;numeric format output;;
21;data-out.at:221;non-ASCII custom currency formats;;
22;data-out.at:257;binary and hexadecimal output;;
23;data-out.at:375;output valid dates;;
24;data-out.at:807;output invalid dates;;
25;data-out.at:900;time output;;
26;data-out.at:13977;MONTH output;;
27;data-out.at:14933;WKDAY output;;
28;datasheet-test.at:12;3x3, 0 backing rows, backing widths ;datasheet;
29;datasheet-test.at:13;3x3, 3 backing rows, backing widths 0,0,0;datasheet;
30;datasheet-test.at:14;3x3, 3 backing rows, backing widths 0;datasheet;
31;datasheet-test.at:15;3x3, 3 backing rows, backing widths 5;datasheet;
32;datasheet-test.at:16;3x3, 1 backing rows, backing widths 0,9,0;datasheet;
33;dictionary.at:3;dictionary case-insensitivity;;
34;format-guesser.at:3;format guesser;;
35;pc+-file-reader.at:3;variable labels and missing values;sack synthetic pc+ file positive;
36;pc+-file-reader.at:121;value labels;sack synthetic pc+ file positive;
37;pc+-file-reader.at:286;compressed data;sack synthetic pc+ file positive;
38;pc+-file-reader.at:363;weighted;sack synthetic pc+ file negative;
39;pc+-file-reader.at:449;unspecified character encoding;sack synthetic pc+ file negative;
40;pc+-file-reader.at:553;unexpected fixed values;sack synthetic pc+ file negative;
41;pc+-file-reader.at:611;short main header;sack synthetic pc+ file negative;
42;pc+-file-reader.at:662;long main header;sack synthetic pc+ file negative;
43;pc+-file-reader.at:714;invalid compression type;sack synthetic pc+ file negative;
44;pc+-file-reader.at:766;unrealistic number of cases;sack synthetic pc+ file negative;
45;pc+-file-reader.at:818;labels bad offsets;sack synthetic pc+ file negative;
46;pc+-file-reader.at:883;record 1 bad length;sack synthetic pc+ file negative;
47;pc+-file-reader.at:934;bad variable format;sack synthetic pc+ file negative;
48;pc+-file-reader.at:986;bad variable name;sack synthetic pc+ file negative;
49;pc+-file-reader.at:1038;duplicate variable name;sack synthetic pc+ file negative;
50;pc+-file-reader.at:1094;partial case;sack synthetic pc+ file negative;
51;pc+-file-reader.at:1158;case extends past end of data record;sack synthetic pc+ file negative;
52;pc+-file-reader.at:1223;corrupt compressed data;sack synthetic pc+ file positive;
53;pc+-file-reader.at:1301;invalid weight index;sack synthetic pc+ file negative;
54;pc+-file-reader.at:1353;string weight;sack synthetic pc+ file negative;
55;por-file.at:3;overwriting portable file;;
56;por-file.at:18;overwriting portable file atomically;;
57;por-file.at:36;write to same portable file being read;;
58;por-file.at:70;write portable file with value labels;;
59;sys-file-reader.at:3;variable labels and missing values;sack synthetic system file positive;
60;sys-file-reader.at:187;unspecified number of variable positions;sack synthetic system file positive;
61;sys-file-reader.at:238;wrong number of variable positions but version 13;sack synthetic system file positive;
62;sys-file-reader.at:292;value labels;sack synthetic system file positive;
63;sys-file-reader.at:505;documents;sack synthetic system file positive;
64;sys-file-reader.at:571;multiple response sets;sack synthetic system file positive;
65;sys-file-reader.at:688;extra product info;sack synthetic system file positive;
66;sys-file-reader.at:735;variable display parameters, without width;sack synthetic system file positive;
67;sys-file-reader.at:841;variable display parameters, with width;sack synthetic system file positive;
68;sys-file-reader.at:959;long variable names;sack synthetic system file positive;
69;sys-file-reader.at:1025;very long strings;sack synthetic system file positive;
70;sys-file-reader.at:1093;data file and variable attributes;sack synthetic system file positive;
71;sys-file-reader.at:1197;variable roles;sack synthetic system file positive;
72;sys-file-reader.at:1271;compressed data;sack synthetic system file positive;
73;sys-file-reader.at:1333;compressed data, zero bias;sack synthetic system file positive;
74;sys-file-reader.at:1395;compressed data, other bias;sack synthetic system file positive;
75;sys-file-reader.at:1530;zcompressed data;sack synthetic system file positive zlib;
76;sys-file-reader.at:1560;unspecified character encoding;sack synthetic system file positive;
77;sys-file-reader.at:1596;misplaced type 4 record;sack synthetic system file negative;
78;sys-file-reader.at:1619;bad record type;sack synthetic system file negative;
79;sys-file-reader.at:1642;wrong number of variable positions;sack synthetic system file negative;
80;sys-file-reader.at:1668;variable name may not begin with \`#';sack synthetic system file negative;
81;sys-file-reader.at:1694;variable name may not be reserved word;sack synthetic system file negative;
82;sys-file-reader.at:1720;variable width must be between 0 and 255;sack synthetic system file negative;
83;sys-file-reader.at:1748;duplicate variable name;sack synthetic system file negative;
84;sys-file-reader.at:1780;variable label indicator not 0 or 1;sack synthetic system file negative;
85;sys-file-reader.at:1806;invalid numeric missing value indicator;sack synthetic system file negative;
86;sys-file-reader.at:1832;invalid string missing value indicator;sack synthetic system file negative;
87;sys-file-reader.at:1858;missing string continuation record;sack synthetic system file negative;
88;sys-file-reader.at:1885;invalid variable format;sack synthetic system file negative;
89;sys-file-reader.at:1934;invalid long string missing values;sack synthetic system file negative;
90;sys-file-reader.at:2023;weighting variable must be numeric;sack synthetic system file negative;
91;sys-file-reader.at:2057;bad weighting variable index;sack synthetic system file negative;
92;sys-file-reader.at:2086;variable index is long string contination;sack synthetic system file negative;
93;sys-file-reader.at:2116;multiple documents records;sack synthetic system file negative;
94;sys-file-reader.at:2150;empty document record;sack synthetic system file negative;
95;sys-file-reader.at:2180;extension record too large;sack synthetic system file negative;
96;sys-file-reader.at:2204;unknown extension record;sack synthetic system file negative;
97;sys-file-reader.at:2234;bad machine integer info size;sack synthetic system file negative;
98;sys-file-reader.at:2264;bad machine integer info float format;sack synthetic system file negative;
99;sys-file-reader.at:2294;bad machine integer info endianness;sack synthetic system file negative;
100;sys-file-reader.at:2330;bad machine floating-point info size;sack synthetic system file negative;
101;sys-file-reader.at:2360;wrong special floating point values;sack synthetic system file negative;
102;sys-file-reader.at:2393;bad mrsets name;sack synthetic system file negative multiple response;
103;sys-file-reader.at:2493;missing space after C in mrsets;sack synthetic system file negative multiple response;
104;sys-file-reader.at:2521;missing space after E in mrsets;sack synthetic system file negative multiple response;
105;sys-file-reader.at:2549;unexpected label source in mrsets;sack synthetic system file negative multiple response;
106;sys-file-reader.at:2579;bad type character in mrsets;sack synthetic system file negative multiple response;
107;sys-file-reader.at:2607;bad counted string length in mrsets;sack synthetic system file negative multiple response;
108;sys-file-reader.at:2635;missing space in counted string in mrsets;sack synthetic system file negative multiple response;
109;sys-file-reader.at:2663;counted string too long in mrsets;sack synthetic system file negative multiple response;
110;sys-file-reader.at:2691;missing space after counted string in mrsets;sack synthetic system file negative multiple response;
111;sys-file-reader.at:2719;missing newline after variable name in mrsets;sack synthetic system file negative multiple response;
112;sys-file-reader.at:2749;duplicate variable name in mrsets;sack synthetic system file negative multiple response;
113;sys-file-reader.at:2779;mixed variable types in mrsets;sack synthetic system file negative multiple response;
114;sys-file-reader.at:2810;missing newline after variable name in mrsets;sack synthetic system file negative multiple response;
115;sys-file-reader.at:2838;zero or one variable in mrset;sack synthetic system file negative multiple response;
116;sys-file-reader.at:2868;wrong display parameter size;sack synthetic system file negative;
117;sys-file-reader.at:2897;wrong display parameter count;sack synthetic system file negative;
118;sys-file-reader.at:2926;wrong display measurement level;sack synthetic system file negative;
119;sys-file-reader.at:2955;wrong display alignment;sack synthetic system file negative;
120;sys-file-reader.at:2984;bad variable name in variable/value pair;sack synthetic system file negative;
121;sys-file-reader.at:3014;duplicate long variable name;sack synthetic system file negative;
122;sys-file-reader.at:3053;bad very long string length;sack synthetic system file negative;
123;sys-file-reader.at:3091;bad very long string segment width;sack synthetic system file negative;
124;sys-file-reader.at:3126;too many value labels;sack synthetic system file negative;
125;sys-file-reader.at:3148;missing type 4 record;sack synthetic system file negative;
126;sys-file-reader.at:3178;value label with no associated variables;sack synthetic system file negative;
127;sys-file-reader.at:3202;type 4 record names long string variable;sack synthetic system file negative;
128;sys-file-reader.at:3233;variables for value label must all be same type;sack synthetic system file negative;
129;sys-file-reader.at:3264;duplicate value labels type;sack synthetic system file negative;
130;sys-file-reader.at:3298;missing attribute value;sack synthetic system file negative;
131;sys-file-reader.at:3338;unquoted attribute value;sack synthetic system file negative;
132;sys-file-reader.at:3379;bad variable name in long string value label;sack synthetic system file negative;
133;sys-file-reader.at:3438;fewer data records than indicated by file header;sack synthetic system file negative;
134;sys-file-reader.at:3478;partial data record between variables;sack synthetic system file negative;
135;sys-file-reader.at:3512;partial data record within long string;sack synthetic system file negative;
136;sys-file-reader.at:3546;partial compressed data record;sack synthetic system file positive;
137;sys-file-reader.at:3594;zcompressed data - bad zheader_ofs;sack synthetic system file negative zlib;
138;sys-file-reader.at:3606;zcompressed data - bad ztrailer_ofs;sack synthetic system file negative zlib;
139;sys-file-reader.at:3620;zcompressed data - invalid ztrailer_len;sack synthetic system file negative zlib;
140;sys-file-reader.at:3633;zcompressed data - wrong ztrailer_len;sack synthetic system file negative zlib;
141;sys-file-reader.at:3646;zcompressed data - wrong ztrailer_bias;sack synthetic system file negative zlib;
142;sys-file-reader.at:3658;zcompressed data - wrong ztrailer_zero;sack synthetic system file negative zlib;
143;sys-file-reader.at:3670;zcompressed data - wrong block_size;sack synthetic system file negative zlib;
144;sys-file-reader.at:3682;zcompressed data - wrong n_blocks;sack synthetic system file negative zlib;
145;sys-file-reader.at:3694;zcompressed data - wrong uncompressed_ofs;sack synthetic system file negative zlib;
146;sys-file-reader.at:3706;zcompressed data - wrong compressed_ofs;sack synthetic system file negative zlib;
147;sys-file-reader.at:3718;zcompressed data - compressed sizes don't add up;sack synthetic system file negative zlib;
148;sys-file-reader.at:3784;zcompressed data - uncompressed_size > block_size;sack synthetic system file negative zlib;
149;sys-file-reader.at:3796;zcompressed data - compression expands data too much;sack synthetic system file negative zlib;
150;sys-file-reader.at:3809;zcompressed data - compressed sizes don't add up;sack synthetic system file negative zlib;
151;sys-file.at:4;write and read numeric data;save get system file;
152;sys-file.at:46;write and read long string value labels and missing values;save get system file;
153;sys-file.at:99;write and read compressed files;save get system file;
154;sys-file.at:126;overwriting system file;;
155;sys-file.at:141;overwriting system file atomically;;
156;sys-file.at:160;write to same system file being read;;
157;sys-file.at:191;nonempty case_map doesn't crash;save system file;
158;sys-file.at:217;system files with -1 case_size;save get;
159;sys-file.at:275;write v2 system file;save;
160;sys-file.at:316;read very long strings written by SPSS 13;;
161;sys-file.at:342;read very long strings written by SPSS 14;;
162;sys-file.at:411;save very long string -- uncompressed;;
163;sys-file.at:412;save very long string -- compressed;;
164;sys-file.at:417;system file character encoding;;
165;sys-file-encryption.at:3;decrypt an encrypted system file;system file decrypt pspp-convert;
166;command.at:4;command parser crash bug;;
167;command.at:20;FINISH executes immediately;;
168;command.at:26;ERASE -- safer mode;;
169;command.at:41;ERASE -- not safer mode;;
170;command.at:54;N OF CASES;;
171;command.at:93;COMMENT at end of file;;
172;do-if.at:3;DO IF;;
173;do-if.at:52;unpaired END IF crash;;
174;do-repeat.at:3;DO REPEAT -- simple;;
175;do-repeat.at:27;DO REPEAT -- containing BEGIN DATA;;
176;do-repeat.at:62;DO REPEAT -- dummy vars not expanded in include files;;
177;do-repeat.at:92;DO REPEAT -- nested;;
178;do-repeat.at:125;DO REPEAT -- empty;;
179;do-repeat.at:142;DO REPEAT -- missing END REPEAT;;
180;loop.at:13;LOOP with index;;
181;loop.at:48;LOOP with IF condition;;
182;loop.at:85;LOOP with END IF condition;;
183;loop.at:124;LOOP with index and IF based on index;;
184;loop.at:153;LOOP with index and END IF based on index;;
185;loop.at:186;LOOP with index and IF and END IF based on index;;
186;loop.at:211;LOOP with no conditions containing BREAK;;
187;loop.at:249;LOOP with no conditions that ends due to MXLOOPS;;
188;temporary.at:4;TEMPORARY as first transformation;;
189;add-files.at:105;ADD FILES -- interleave sav with sav;;
190;add-files.at:106;ADD FILES -- interleave sav with inline;;
191;add-files.at:107;ADD FILES -- interleave inline with sav;;
192;add-files.at:108;ADD FILES -- concatenate sav with sav;;
193;add-files.at:109;ADD FILES -- concatenate sav with inline;;
194;add-files.at:110;ADD FILES -- concatenate inline with sav;;
195;data-list.at:3;DATA LIST LIST with empty fields;;
196;data-list.at:34;DATA LIST LIST with explicit delimiters;;
197;data-list.at:63;DATA LIST FREE with SKIP;;
198;data-list.at:97;DATA LIST LIST with SKIP and tab delimiter;;
199;data-list.at:146;DATA LIST FREE with explicit delimiter at end of line;;
200;data-list.at:207;DATA LIST FIXED with multiple records per case;;
201;data-list.at:239;DATA LIST FIXED with empty trailing record;;
202;data-list.at:269;DATA LIST with various line-ends;;
203;data-list.at:293;DATA LIST properly expands tabs in input;;
204;data-list.at:323;DATA LIST FREE and LIST report missing delimiters;;
205;data-list.at:341;DATA LIST FREE and LIST assume a width if omitted;;
206;data-reader.at:5;BEGIN DATA as part of a procedure;;
207;data-reader.at:38;BEGIN DATA as an independent command;;
208;data-reader.at:195;read and write files with MODE=BINARY;;
209;data-reader.at:201;read and write files with MODE=360 /RECFORM=FIXED /LRECL=32;;
210;data-reader.at:211;read and write files with MODE=360 /RECFORM=VARIABLE;;
211;data-reader.at:218;read and write files with MODE=360 /RECFORM=SPANNED;;
212;dataset.at:3;DATASET COPY;;
213;dataset.at:99;DATASET DECLARE;;
214;dataset.at:130;DATASET NAME deletes duplicate name;;
215;dataset.at:154;DATASET ACTIVATE deletes unnamed dataset;;
216;dataset.at:174;DATASET ACTIVATE executes pending transformations;;
217;dataset.at:224;DATASET CLOSE;;
218;file-handle.at:3;FILE HANDLE;;
219;get-data-spreadsheet.at:154;GET DATA /TYPE=GNM with CELLRANGE;;
220;get-data-spreadsheet.at:154;GET DATA /TYPE=GNM with CELLRANGE and READNAMES;;
221;get-data-spreadsheet.at:154;GET DATA /TYPE=GNM without CELLRANGE;;
222;get-data-spreadsheet.at:154;GET DATA /TYPE=GNM with missing data;;
223;get-data-spreadsheet.at:154;GET DATA /TYPE=GNM with no options;;
224;get-data-spreadsheet.at:154;GET DATA /TYPE=GNM with empty sheet;;
225;get-data-spreadsheet.at:154;GET DATA /TYPE=GNM with nonexistent sheet;;
226;get-data-spreadsheet.at:157;GET DATA /TYPE=GNM sheet index bug;;
227;get-data-spreadsheet.at:306;GET DATA /TYPE=GNM assert-fail;;
228;get-data-spreadsheet.at:360;GET DATA /TYPE=ODS with CELLRANGE;;
229;get-data-spreadsheet.at:360;GET DATA /TYPE=ODS with CELLRANGE and READNAMES;;
230;get-data-spreadsheet.at:360;GET DATA /TYPE=ODS without CELLRANGE;;
231;get-data-spreadsheet.at:360;GET DATA /TYPE=ODS with missing data;;
232;get-data-spreadsheet.at:360;GET DATA /TYPE=ODS with no options;;
233;get-data-spreadsheet.at:360;GET DATA /TYPE=ODS with empty sheet;;
234;get-data-spreadsheet.at:360;GET DATA /TYPE=ODS with nonexistent sheet;;
235;get-data-spreadsheet.at:363;GET DATA /TYPE=ODS crash;;
236;get-data-psql.at:124;GET DATA /TYPE=PSQL;;
237;get-data-txt.at:7;GET DATA /TYPE=TXT with explicit delimiters;;
238;get-data-txt.at:29;GET DATA /TYPE=TXT with FIRSTCASE;;
239;get-data-txt.at:67;GET DATA /TYPE=TXT with FIRSTCASE and tab delimiter;;
240;get-data-txt.at:116;GET DATA /TYPE=TXT with multiple records per case;;
241;get-data-txt.at:145;GET DATA /TYPE=TXT with empty trailing record;;
242;get-data-txt.at:178;GET DATA /TYPE=TXT password example;;
243;get-data-txt.at:209;GET DATA /TYPE=TXT cars example;;
244;get-data-txt.at:256;GET DATA /TYPE=TXT pets example;;
245;get-data-txt.at:289;GET DATA /TYPE=TXT with IMPORTCASES;;
246;get-data-txt.at:575;GET DATA /TYPE=TXT with ENCODING subcommand;;
247;get.at:5;GET data works in multiple procedures;;
248;get.at:56;GET nonexistent file doesn't crash;;
249;get.at:90;GET with /KEEP=ALL crashes -- uncompressed;;
250;get.at:91;GET with /KEEP=ALL crashes -- compressed;;
251;get.at:95;GET data no type;;
252;inpt-pgm.at:5;INPUT PROGRAM invalid syntax crash;;
253;inpt-pgm.at:21;INPUT PROGRAM invalid syntax crash;;
254;inpt-pgm.at:36;INPUT PROGRAM infinite loop;;
255;inpt-pgm.at:53;INPUT PROGRAM with VECTOR and EXECUTE;;
256;list.at:3;LIST plain cases;;
257;list.at:45;LIST numbered cases;;
258;list.at:89;LIST with split file;;
259;list.at:131;LIST lots of variables;;
260;list.at:157;LIST selected cases;;
261;list.at:201;LIST very long string;;
262;match-files.at:104;MATCH FILES -- system file and system file;;
263;match-files.at:105;MATCH FILES -- system file and active file;;
264;match-files.at:106;MATCH FILES -- active file and system file;;
265;match-files.at:107;MATCH FILES -- system file and system table;;
266;match-files.at:108;MATCH FILES -- system file and active table;;
267;match-files.at:109;MATCH FILES -- active file and system table;;
268;match-files.at:111;MATCH FILES parallel match;;
269;match-files.at:138;MATCH FILES bug with TABLE from active dataset;;
270;match-files.at:170;MATCH FILES bug with scratch variables;;
271;match-files.at:206;MATCH FILES with incompatible variable types;;
272;print-space.at:3;PRINT SPACE without arguments;;
273;print-space.at:25;PRINT SPACE with number;;
274;print-space.at:51;PRINT SPACE to file;;
275;print-space.at:72;PRINT SPACE to file with number;;
276;print.at:20;PRINT numeric variables;;
277;print.at:91;PRINT string variables;;
278;print.at:118;PRINT to file;;
279;print.at:163;PRINT crash bug;;
280;print.at:184;WRITE to file;;
281;print.at:227;PRINT overwrites file;;
282;print.at:243;PRINT overwrites file atomically;;
283;print.at:261;PRINT to same file being read;;
284;print.at:277;PRINT to special file;;
285;print.at:306;PRINT with special line ends;;
286;save.at:3;IMPORT and EXPORT;;
287;save.at:31;SAVE -- delete unselected;;
288;save-translate.at:23;CSV output -- defaults;save translate;
289;save-translate.at:32;CSV output -- recode missing, delete unselected;save translate;
290;save-translate.at:40;CSV output -- var names, formats;save translate;
291;save-translate.at:51;CSV output -- comma as decimal point;save translate;
292;save-translate.at:61;CSV output -- custom delimiter, qualifier;save translate;
293;save-translate.at:72;CSV output -- KEEP, RENAME;save translate;
294;save-translate.at:84;TAB output;save translate;
295;update.at:73;UPDATE sav with sav;;
296;update.at:74;UPDATE sav with inline;;
297;update.at:75;UPDATE inline with sav;;
298;attributes.at:3;VARIABLE ATTRIBUTES and DATAFILE ATTRIBUTES;;
299;delete-variables.at:4;DELETE VARIABLES with FILTER;;
300;formats.at:3;FORMATS positive tests;;
301;formats.at:49;FORMATS negative tests;;
302;missing-values.at:3;MISSING VALUES valid cases;;
303;missing-values.at:129;MISSING VALUES invalid cases;;
304;mrsets.at:121;MRSETS add, display, delete;;
305;mrsets.at:192;MRSETS read and write;;
306;mrsets.at:206;MRSETS names must begin with \$;;
307;mrsets.at:216;MRSETS must have at least 2 variables;;
308;mrsets.at:226;MRSETS does not allow noninteger VALUE;;
309;mrsets.at:236;MRSETS requires NAME to define a group;;
310;mrsets.at:246;MRSETS requires VARIABLES to define a group;;
311;mrsets.at:256;MRSETS variables must be same type;;
312;mrsets.at:268;MRSETS variables and VALUE must be same type;;
313;mrsets.at:281;MRSETS VALUE must not be too wide;;
314;mrsets.at:291;MRSETS LABEL and LABELSOURCE are exclusive;;
315;mrsets.at:302;MRSETS DISPLAY or DELETE unknown group;;
316;rename-variables.at:3;RENAME VARIABLES;;
317;rename-variables.at:48;RENAME VARIABLES -- invalid syntax 1;;
318;rename-variables.at:58;RENAME VARIABLES -- invalid syntax 2;;
319;split-file.at:3;SPLIT FILE - basic test;;
320;split-file.at:61;SPLIT FILE - vs procedures;;
321;sys-file-info.at:3;SYSFILE INFO;;
322;sys-file-info.at:54;DISPLAY FILE LABEL;;
323;sys-file-info.at:74;DISPLAY SCRATCH;;
324;sys-file-info.at:89;DISPLAY INDEX;;
325;sys-file-info.at:101;DISPLAY NAMES;;
326;sys-file-info.at:113;DISPLAY LABELS;;
327;value-labels.at:3;VALUE LABELS date formats;;
328;value-labels.at:27;VALUE LABELS with new-line;;
329;value-labels.at:58;VALUE LABELS with new-line in system file;;
330;value-labels.at:96;VALUE LABELS invalid syntax bug;;
331;value-labels.at:114;VALUE LABELS trailing \`/' bug;;
332;variable-display.at:3;variable display attribute commands;;
333;variable-display.at:36;variable labels;;
334;vector.at:3;VECTOR short form;;
335;vector.at:19;VECTOR short form with format specification;;
336;vector.at:35;VECTOR short form in INPUT PROGRAM;;
337;vector.at:54;VECTOR long form;;
338;weight.at:3;WEIGHT;;
339;evaluate.at:35;expressions - numeric syntax;;
340;evaluate.at:41;expressions - coercion to/from Boolean;;
341;evaluate.at:56;expressions - addition and subtraction;;
342;evaluate.at:78;expressions - multiplication and division;;
343;evaluate.at:90;expressions - exponentiation;;
344;evaluate.at:96;expressions - unary minus;;
345;evaluate.at:106;expressions - AND truth table;;
346;evaluate.at:126;expressions - OR truth table;;
347;evaluate.at:146;expressions - NOT truth table;;
348;evaluate.at:162;expressions - = <= <;;
349;evaluate.at:230;expressions - >= > <>;;
350;evaluate.at:295;expressions - exp lg10 ln sqrt abs mod mod10 rnd trunc;;
351;evaluate.at:358;expressions - acos arsin artan cos sin tan;;
352;evaluate.at:426;expressions - missing nmiss nvalid sysmis any range max min;;
353;evaluate.at:636;expressions - cfvar mean sd sum variance;;
354;evaluate.at:707;expressions - concat index rindex length lower;;
355;evaluate.at:812;expressions - lpad number ltrim lpad rtrim rpad string substr upcase;;
356;evaluate.at:1048;expressions - time ctime date yrmoda;;
357;evaluate.at:1287;expressions - xdate;;
358;evaluate.at:1572;expressions - datediff;;
359;evaluate.at:1792;expressions - datesum;;
360;evaluate.at:1871;expressions - miscellaneous;;
361;evaluate.at:1905;LAG function;;
362;evaluate.at:1937;LAG crash bug;;
363;evaluate.at:1962;UNIFORM function;;
364;evaluate.at:2004;VALUELABEL function;;
365;evaluate.at:2048;variables in expressions;;
366;evaluate.at:2097;vectors in expressions;;
367;parse.at:3;parse expression with unknown variable crash;;
368;parse.at:25;parse expression with invalid logical expression;;
369;command-name.at:3;single words;command name matching;
370;command-name.at:45;two words without prefix match;command name matching;
371;command-name.at:86;two words with prefix match;command name matching;
372;command-name.at:112;ambiguous single-word names;command name matching;
373;command-name.at:138;ambiguous two-word names;command name matching;
374;command-name.at:174;numbers and punctuation;command name matching;
375;command-name.at:210;off by more than one word;command name matching;
376;lexer.at:3;lexer ignores initial #! line;;
377;lexer.at:22;lexer properly reports scan errors;;
378;q2c.at:3;q2c enforces mandatory subcommands;;
379;scan.at:5;identifiers;scan;
380;scan.at:66;reserved words;scan;
381;scan.at:163;punctuation;scan;
382;scan.at:236;numbers;scan;
383;scan.at:321;strings;scan;
384;scan.at:416;#! construct;scan;
385;scan.at:440;* and COMMENT commands;scan;
386;scan.at:517;DOCUMENT command;scan;
387;scan.at:566;TITLE, SUBTITLE, FILE LABEL commands;scan;
388;scan.at:650;BEGIN DATA command;scan;
389;scan.at:707;DO REPEAT command;scan;
390;scan.at:764;batch mode;scan;
391;segment.at:8;identifiers;segment;
392;segment.at:91;identifiers that end in '.';segment;
393;segment.at:197;reserved words;segment;
394;segment.at:261;punctuation;segment;
395;segment.at:317;numbers;segment;
396;segment.at:384;strings;segment;
397;segment.at:456;#! construct;segment;
398;segment.at:487;* and COMMENT commands;segment;
399;segment.at:575;DOCUMENT command;segment;
400;segment.at:634;TITLE, SUBTITLE, FILE LABEL commands;segment;
401;segment.at:723;BEGIN DATA command;segment;
402;segment.at:848;DO REPEAT command;segment;
403;segment.at:930;batch mode;segment;
404;segment.at:984;auto mode;segment;
405;variable-parser.at:6;Long variable names;;
406;aggregate.at:161;AGGREGATE presorted data to dataset file, itemwise missing;;
407;aggregate.at:162;AGGREGATE presorted data to dataset file, columnwise missing;;
408;aggregate.at:163;AGGREGATE unsorted data to dataset file, itemwise missing;;
409;aggregate.at:164;AGGREGATE unsorted data to dataset file, columnwise missing;;
410;aggregate.at:165;AGGREGATE presorted data to active file, itemwise missing;;
411;aggregate.at:166;AGGREGATE presorted data to active file, columnwise missing;;
412;aggregate.at:167;AGGREGATE unsorted data to active file, itemwise missing;;
413;aggregate.at:168;AGGREGATE unsorted data to active file, columnwise missing;;
414;aggregate.at:169;AGGREGATE presorted data to external file, itemwise missing;;
415;aggregate.at:170;AGGREGATE presorted data to external file, columnwise missing;;
416;aggregate.at:171;AGGREGATE unsorted data to external file, itemwise missing;;
417;aggregate.at:172;AGGREGATE unsorted data to external file, columnwise missing;;
418;aggregate.at:174;AGGREGATE crash with MAX function;;
419;aggregate.at:200;AGGREGATE crash with invalid syntax;;
420;aggregate.at:216;AGGREGATE mode=addvariables;;
421;aggregate.at:255;AGGREGATE buggy duplicate variables;;
422;autorecode.at:3;AUTORECODE numbers and short strings;;
423;autorecode.at:59;AUTORECODE long strings and check the value labels;;
424;autorecode.at:105;AUTORECODE group subcommand;;
425;autorecode.at:139;AUTORECODE group - string variables;;
426;autorecode.at:175;AUTORECODE group vs. strings;;
427;autorecode.at:205;AUTORECODE /blank;;
428;autorecode.at:236;AUTORECODE with TEMPORARY;;
429;correlations.at:3;CORRELATIONS -- unweighted;;
430;correlations.at:73;CORRELATIONS -- weighted;;
431;correlations.at:121;CORRELATIONS -- non-square;;
432;correlations.at:150;CORRELATIONS -- crash with WITH keyword;;
433;correlations.at:206;CORRELATIONS -- incorrect subtable selection;;
434;crosstabs.at:3;CROSSTABS integer mode crash;;
435;crosstabs.at:41;CROSSTABS long string crash;;
436;crosstabs.at:82;CROSSTABS crash;;
437;crosstabs.at:142;CROSSTABS chi-square crash;;
438;crosstabs.at:186;CROSSTABS crash with SPLIT FILE;;
439;crosstabs.at:281;3-way CROSSTABS;;
440;crosstabs.at:410;CROSSTABS descending sort order;;
441;crosstabs.at:445;CROSSTABS crash when all cases missing;;
442;crosstabs.at:470;CROSSTABS Fisher Exact Test;;
443;crosstabs.at:735;CROSSTABS Pearson's R;;
444;crosstabs.at:968;CROSSTABS Goodman and Kruskal's lambda;;
445;crosstabs.at:1069;CROSSTABS Goodman and Kruskal's lambda - treatment of ties;;
446;crosstabs.at:1104;CROSSTABS Somers' D, Tau-B, Tau-C, Gamma;;
447;crosstabs.at:1445;CROSSTABS many statistics;;
448;crosstabs.at:1503;CROSSTABS uncertainy coefficient;;
449;crosstabs.at:1542;CROSSTABS barchart;;
450;descriptives.at:3;DESCRIPTIVES basics;;
451;descriptives.at:82;DESCRIPTIVES -- excluding missing data;;
452;descriptives.at:96;DESCRIPTIVES -- including missing data;;
453;descriptives.at:110;DESCRIPTIVES -- excluding missing data listwise;;
454;descriptives.at:124;DESCRIPTIVES -- including missing data listwise;;
455;descriptives.at:138;DESCRIPTIVES bug calculating mean only;;
456;descriptives.at:164;DESCRIPTIVES bug with TEMPORARY;;
457;descriptives.at:189;DESCRIPTIVES -- Z scores;;
458;descriptives.at:220;DESCRIPTIVES -- Z scores with SPLIT FILE;;
459;descriptives.at:284;DESCRIPTIVES -- Z scores bug with TEMPORARY;;
460;descriptives.at:326;DESCRIPTIVES -- Z scores with FILTER;;
461;examine.at:3;EXAMINE;;
462;examine.at:174;EXAMINE -- extremes;;
463;examine.at:235;EXAMINE -- extremes with fractional weights;;
464;examine.at:311;EXAMINE -- percentiles;;
465;examine.at:403;EXAMINE -- missing values;;
466;examine.at:443;EXAMINE -- user missing values;;
467;examine.at:469;EXAMINE -- missing values and percentiles;;
468;examine.at:489;EXAMINE -- trimmed mean;;
469;examine.at:536;EXAMINE -- crash bug;;
470;examine.at:554;EXAMINE -- consecutive runs don't crash;;
471;examine.at:572;EXAMINE -- missing values don't crash;;
472;examine.at:589;EXAMINE -- single case doesn't crash;;
473;examine.at:608;EXAMINE -- all-missing data doesn't crash;;
474;examine.at:625;EXAMINE -- big input doesn't crash;;
475;examine.at:645;EXAMINE -- big input doesn't crash 2;;
476;examine.at:672;EXAMINE -- non-numeric ID;;
477;examine.at:724;EXAMINE -- Bad Input;;
478;examine.at:754;EXAMINE -- MISSING=REPORT;;
479;examine.at:882;EXAMINE -- sample unweighted;;
480;graph.at:3;GRAPH simple scatterplot;;
481;graph.at:27;GRAPH Scatter and Histogram;;
482;graph.at:81;GRAPH missing values don't crash;;
483;graph.at:102;GRAPH missing=VARIABLE no crash;;
484;graph.at:125;GRAPH missing value in by variable;;
485;graph.at:150;GRAPH histogram with null data;;
486;factor.at:3;FACTOR extraction=paf method=correlation;;
487;factor.at:1523;FACTOR extraction=pc method=correlation;;
488;factor.at:1784;FACTOR empty dataset;;
489;factor.at:1805;FACTOR /ROTATION=NOROTATE;;
490;factor.at:1879;FACTOR /CRITERIA=ITERATE;;
491;factor.at:1929;FACTOR promax;;
492;flip.at:3;FLIP with NEWNAMES;;
493;flip.at:50;FLIP without NEWNAMES;;
494;frequencies.at:3;FREQUENCIES string variable;;
495;frequencies.at:36;FREQUENCIES two runs crash;;
496;frequencies.at:86;FREQUENCIES HTML output crash;;
497;frequencies.at:121;FREQUENCIES pie chart crash;;
498;frequencies.at:157;FREQUENCIES histogram crash;;
499;frequencies.at:188;FREQUENCIES median with histogram crash;;
500;frequencies.at:203;FREQUENCIES crash after TEMPORARY;;
501;frequencies.at:264;FREQUENCIES basic percentiles;;
502;frequencies.at:284;FREQUENCIES basic n-tiles;;
503;frequencies.at:305;FREQUENCIES compatibility percentiles;;
504;frequencies.at:346;FREQUENCIES enhanced percentiles;;
505;frequencies.at:386;FREQUENCIES enhanced percentiles, weighted;;
506;frequencies.at:430;FREQUENCIES enhanced percentiles, weighted (2);;
507;frequencies.at:472;FREQUENCIES enhanced percentiles, weighted (3);;
508;frequencies.at:512;FREQUENCIES enhanced percentiles, weighted, missing values;;
509;frequencies.at:557;FREQUENCIES dichotomous histogram;;
510;frequencies.at:591;FREQUENCIES median;;
511;frequencies.at:623;FREQUENCIES default statistics;;
512;frequencies.at:678;FREQUENCIES no valid data;;
513;glm.at:3;GLM latin square design;;
514;glm.at:76;GLM 2 by 2 factorial design;;
515;glm.at:130;GLM Type I and II Sums of Squares;;
516;glm.at:269;GLM excluded intercept;;
517;logistic.at:81;LOGISTIC REGRESSION basic test;;
518;logistic.at:133;LOGISTIC REGRESSION missing values;;
519;logistic.at:181;LOGISTIC REGRESSION weights;;
520;logistic.at:242;LOGISTIC REGRESSION without constant;;
521;logistic.at:299;LOGISTIC REGRESSION non-dichotomous dep var;;
522;logistic.at:324;LOGISTIC REGRESSION with categorical;;
523;logistic.at:792;LOGISTIC REGRESSION with cat var 2;;
524;logistic.at:1059;LOGISTIC REGRESSION identical categories;;
525;logistic.at:1079;LOGISTIC REGRESSION missing categoricals;;
526;logistic.at:1216;LOGISTIC REGRESSION confidence interval;;
527;means.at:3;MEANS simple example;;
528;means.at:64;MEANS very simple example;;
529;means.at:98;MEANS default missing;;
530;means.at:152;MEANS linear stats;;
531;means.at:201;MEANS standard errors;;
532;means.at:247;MEANS harmonic and geometric means;;
533;means.at:289;MEANS all/none/default;;
534;means.at:349;MEANS missing=table ;;
535;means.at:459;MEANS user missing values;;
536;means.at:557;MEANS empty factor spec;;
537;npar.at:3;NPAR TESTS BINOMIAL, P < 0.5; N1/N2 < 1;;
538;npar.at:28;NPAR TESTS BINOMIAL, P < 0.5; N1/N2 > 1;;
539;npar.at:53;NPAR TESTS BINOMIAL, P < 0.5; N1/N2 = 1;;
540;npar.at:78;NPAR TESTS BINOMIAL, P > 0.5; N1/N2 < 1;;
541;npar.at:103;NPAR TESTS BINOMIAL, P > 0.5; N1/N2 > 1;;
542;npar.at:127;NPAR TESTS BINOMIAL, P > 0.5; N1/N2 = 1;;
543;npar.at:151;NPAR TESTS BINOMIAL, P = 0.5; N1/N2 < 1;;
544;npar.at:176;NPAR TESTS BINOMIAL, P = 0.5; N1/N2 > 1;;
545;npar.at:200;NPAR TESTS BINOMIAL, P = 0.5; N1/N2 = 1;;
546;npar.at:225;NPAR TESTS BINOMIAL, P = 0.5; N1/N2 = 1 Cutpoint;;
547;npar.at:251;NPAR TESTS BINOMIAL, P = 0.5; N1/N2 = 1 Named values;;
548;npar.at:280;NPAR TESTS BINOMIAL - crash;;
549;npar.at:299;NPAR TESTS CHISQUARE;;
550;npar.at:385;NPAR TESTS CHISQUARE expected values missing;;
551;npar.at:418;NPAR TESTS CHISQUARE with DESCRIPTIVES;;
552;npar.at:471;NPAR TESTS CHISQUARE, listwise missing;;
553;npar.at:524;NPAR TESTS WILCOXON;;
554;npar.at:572;NPAR TESTS WILCOXON with missing values;;
555;npar.at:620;NPAR TESTS SIGN;;
556;npar.at:664;NPAR Kruskal-Wallis test;;
557;npar.at:759;NPAR Kruskal-Wallis multiple-variables;;
558;npar.at:826;NPAR TESTS Runs;;
559;npar.at:914;NPAR TESTS Runs (2);;
560;npar.at:937;NPAR TESTS Friedman;;
561;npar.at:976;NPAR TESTS Mann-Whitney;;
562;npar.at:1033;NPAR TESTS Cochran;;
563;npar.at:1080;NPAR TESTS Kendall;;
564;npar.at:1145;NPAR TESTS McNemar;;
565;npar.at:1199;NPAR TESTS Kolmogorov-Smirnov Uniform parameters given;;
566;npar.at:1236;NPAR TESTS Kolmogorov-Smirnov Normal parameters imputed;;
567;npar.at:1440;NPAR TESTS Median Test (median imputed);;
568;npar.at:1505;NPAR TESTS Median Test (median given);;
569;npar.at:1568;NPAR TESTS Median Test (two sample);;
570;npar.at:1634;NPAR TESTS Jonckheere-Terpstra;;
571;npar.at:1677;NPAR TESTS (PAIRED);;
572;npar.at:1714;NPAR TESTS CHISQUARE crash;;
573;oneway.at:3;ONEWAY basic operation;;
574;oneway.at:72;ONEWAY with splits;;
575;oneway.at:179;ONEWAY with missing values;;
576;oneway.at:284;ONEWAY descriptives subcommand;;
577;oneway.at:333;ONEWAY homogeneity subcommand;;
578;oneway.at:378;ONEWAY multiple variables;;
579;oneway.at:486;ONEWAY vs. weights;;
580;oneway.at:557;ONEWAY posthoc LSD and BONFERRONI;;
581;oneway.at:639;ONEWAY posthoc Tukey HSD and Games-Howell;;
582;oneway.at:695;ONEWAY posthoc Sidak;;
583;oneway.at:755;ONEWAY posthoc Scheffe;;
584;oneway.at:837;ONEWAY bad contrast count;;
585;oneway.at:908;ONEWAY crash on single category independent variable;;
586;oneway.at:929;ONEWAY crash on missing dependent variable;;
587;oneway.at:957;ONEWAY Games-Howell test with few cases;;
588;quick-cluster.at:3;QUICK CLUSTER with small data set;;
589;quick-cluster.at:46;QUICK CLUSTER with large data set;;
590;quick-cluster.at:76;QUICK CLUSTER with weights;;
591;quick-cluster.at:118;QUICK CLUSTER with listwise missing;;
592;quick-cluster.at:157;QUICK CLUSTER with pairwise missing;;
593;quick-cluster.at:216;QUICK CLUSTER crash on bad cluster quantity;;
594;quick-cluster.at:233;QUICK CLUSTER infinite loop on bad command name;;
595;rank.at:3;RANK simple case with defaults;;
596;rank.at:43;RANK multiple variables with defaults;;
597;rank.at:74;RANK with RANK, RFRACTION, N;;
598;rank.at:151;RANK with SAVAGE, PERCENT, PROPORTION, NTILES;;
599;rank.at:210;RANK with SPLIT FILE;;
600;rank.at:300;RANK with fractional ranks;;
601;rank.at:347;RANK all-ties due to tiny weights;;
602;rank.at:424;RANK and TEMPORARY;;
603;rank.at:480;RANK variable name fallback;;
604;rank.at:518;RANK robust variable name creation;;
605;rank.at:571;RANK handling of invalid input;;
606;rank.at:599;RANK handling of invalid syntax;;
607;regression.at:3;LINEAR REGRESSION - basic;;
608;regression.at:57;LINEAR REGRESSION - one save;;
609;regression.at:130;LINEAR REGRESSION - SAVE vs SPLITS;;
610;regression.at:223;LINEAR REGRESSION multiple dependent variables;;
611;regression.at:255;LINEAR REGRESSION test of QR decomposition;;
612;regression.at:1788;LINEAR REGRESSION no crash on all missing;;
613;regression.at:1814;LINEAR REGRESSION missing dependent variable;;
614;regression.at:1871;LINEAR REGRESSION with invalid syntax (and empty dataset);;
615;regression.at:1891;LINEAR REGRESSION coefficient confidence interval;;
616;reliability.at:3;RELIABILITY;;
617;reliability.at:258;RELIABILITY bad syntax;;
618;reliability.at:278;RELIABILITY bad syntax 2;;
619;reliability.at:293;RELIABILITY crash with no data;;
620;reliability.at:311;RELIABILITY tutorial example;;
621;roc.at:3;ROC, free distribution;;
622;roc.at:54;ROC, negative exponential distribution;;
623;roc.at:113;ROC, with anomaly;;
624;sort-cases.at:57;sort 500 cases (100 unique) with 2 buffers;sort cases;
625;sort-cases.at:58;sort 500 cases (100 unique) with 3 buffers;sort cases;
626;sort-cases.at:59;sort 500 cases (100 unique) with 4 buffers;sort cases;
627;sort-cases.at:60;sort 500 cases (100 unique) with 5 buffers;sort cases;
628;sort-cases.at:61;sort 500 cases (100 unique) with 10 buffers;sort cases;
629;sort-cases.at:62;sort 500 cases (100 unique) with 50 buffers;sort cases;
630;sort-cases.at:63;sort 500 cases (100 unique) with 100 buffers;sort cases;
631;sort-cases.at:64;sort 500 cases (100 unique);sort cases;
632;sort-cases.at:66;sort 1000 cases (100 unique) with 2 buffers;sort cases;
633;sort-cases.at:67;sort 1000 cases (100 unique) with 3 buffers;sort cases;
634;sort-cases.at:68;sort 1000 cases (100 unique) with 5 buffers;sort cases;
635;sort-cases.at:69;sort 1000 cases (100 unique);sort cases;
636;sort-cases.at:71;sort 5000 cases (1000 unique) with 5 buffers;sort cases;
637;sort-cases.at:72;sort 5000 cases (1000 unique) with 50 buffers;sort cases;
638;sort-cases.at:73;sort 5000 cases (1000 unique);sort cases;
639;sort-cases.at:75;sort 10000 cases (100 unique) with 3 buffers;sort cases;
640;sort-cases.at:76;sort 10000 cases (100 unique) with 5 buffers;sort cases;
641;sort-cases.at:77;sort 10000 cases (100 unique);sort cases;
642;sort-cases.at:79;sort 50000 cases (10000 unique) with 500 buffers;sort cases;
643;sort-cases.at:81;sort 50000 cases;sort cases;
644;sort-cases.at:84;SORT CASES preserves filtered cases;;
645;t-test.at:3;T-TEST /PAIRS;;
646;t-test.at:43;T-TEST /PAIRS with per-analysis missing values;;
647;t-test.at:108;T-TEST /PAIRS with listwise missing values;;
648;t-test.at:175;T-TEST /PAIRS bug;;
649;t-test.at:211;T-TEST /GROUPS;;
650;t-test.at:261;T-TEST /GROUPS with one value for independent variable;;
651;t-test.at:311;T-TEST /GROUPS with per-analysis missing values;;
652;t-test.at:371;T-TEST /GROUPS with listwise missing values;;
653;t-test.at:431;T-TEST /TESTVAL;;
654;t-test.at:463;T-TEST /TESTVAL with per-analysis missing values;;
655;t-test.at:516;T-TEST /TESTVAL with listwise missing values;;
656;t-test.at:569;T-TEST wih TEMPORARY transformation;;
657;t-test.at:625;T-TEST invalid syntax;;
658;t-test.at:648;T-TEST string variable;;
659;t-test.at:695;T-TEST string variable, only one value;;
660;t-test.at:721;T-TEST string variable comparison bug;;
661;t-test.at:762;T-TEST wrong group;;
662;cache.at:3;CACHE;;
663;cd.at:3;CD;;
664;date.at:3;USE ALL;;
665;insert.at:15;INSERT SYNTAX=INTERACTIVE;;
666;insert.at:31;INSERT SYNTAX=BATCH;;
667;insert.at:51;INSERT CD=NO;;
668;insert.at:72;INSERT CD=YES;;
669;insert.at:116;INSERT ERROR=STOP;;
670;insert.at:126;INSERT ERROR=CONTINUE;;
671;insert.at:146;INSERT nonexistent file;;
672;permissions.at:3;PERMISSIONS;;
673;set.at:4;SET FORMAT to invalid output format;;
674;set.at:26;SET MXWARNS;;
675;set.at:62;SET MXWARNS special case zero;;
676;set.at:98;PRESERVE of SET FORMAT;;
677;show.at:3;SHOW N;;
678;show.at:23;SHOW N empty;;
679;title.at:3;FILE LABEL and (ADD) DOCUMENT;;
680;compute.at:3;COMPUTE crash with SAVE;;
681;compute.at:22;COMPUTE bug in long string UPCASE;;
682;compute.at:50;COMPUTE bug with long variable names;;
683;compute.at:76;COMPUTE self-reference to new variable;;
684;count.at:3;COUNT -- numeric data;;
685;count.at:42;COUNT -- string data;;
686;recode.at:21;RECODE numeric to numeric, without INTO;;
687;recode.at:63;RECODE numeric to numeric, with INTO, without COPY;;
688;recode.at:95;RECODE numeric to numeric, with INTO, with COPY;;
689;recode.at:128;RECODE string to string, with INTO, without COPY;;
690;recode.at:156;RECODE string to string;;
691;recode.at:184;RECODE string to numeric;;
692;recode.at:210;RECODE numeric to string;;
693;recode.at:236;RECODE bug in COPY;;
694;recode.at:267;RECODE bug in COPY with INTO;;
695;recode.at:300;RECODE increased string widths;;
696;sample.at:3;SAMPLE;;
697;select-if.at:3;FILTER;;
698;abt.at:8;ABT -- insert-any-remove-any;;
699;abt.at:9;ABT -- insert-any-remove-same;;
700;abt.at:10;ABT -- insert-any-remove-reverse;;
701;abt.at:11;ABT -- random-sequence;;
702;abt.at:12;ABT -- insert-ordered;;
703;abt.at:13;ABT -- moved;;
704;abt.at:14;ABT -- changed;;
705;bt.at:8;BT -- insert-any-remove-any;;
706;bt.at:9;BT -- insert-any-remove-same;;
707;bt.at:10;BT -- insert-any-remove-reverse;;
708;bt.at:11;BT -- random-sequence;;
709;bt.at:12;BT -- insert-ordered;;
710;bt.at:13;BT -- find-ge-le;;
711;bt.at:14;BT -- moved;;
712;bt.at:15;BT -- changed;;
713;encoding-guesser.at:3;ASCII;encoding guesser;
714;encoding-guesser.at:9;UTF-8;encoding guesser;
715;encoding-guesser.at:16;UTF-8 starting with ASCII;encoding guesser;
716;encoding-guesser.at:23;UTF-16 with big-endian byte order mark;encoding guesser;
717;encoding-guesser.at:30;UTF-16 with little-endian byte order mark;encoding guesser;
718;encoding-guesser.at:37;UTF-16BE;encoding guesser;
719;encoding-guesser.at:46;UTF-16BE starting with U+0100;encoding guesser;
720;encoding-guesser.at:53;UTF-16LE;encoding guesser;
721;encoding-guesser.at:62;UTF-16LE starting with U+0100;encoding guesser;
722;encoding-guesser.at:69;UTF-32 with big-endian byte order mark;encoding guesser;
723;encoding-guesser.at:76;UTF-32 with little-endian byte order mark;encoding guesser;
724;encoding-guesser.at:83;UTF-32BE;encoding guesser;
725;encoding-guesser.at:90;UTF-32LE;encoding guesser;
726;encoding-guesser.at:97;ISO-8859-1;encoding guesser;
727;encoding-guesser.at:105;GB-18030 with byte order mark;encoding guesser;
728;encoding-guesser.at:113;UTF-EBCDIC with byte order mark;encoding guesser;
729;encoding-guesser.at:121;EUC-JP as Auto,EUC-JP;encoding guesser;
730;encoding-guesser.at:129;EUC-JP starting with ASCII as Auto,EUC-JP;encoding guesser;
731;encoding-guesser.at:137;UTF-8 with character split across input buffers;encoding guesser;
732;encoding-guesser.at:145;windows-1252 as Auto,UTF-8;encoding guesser;
733;float-format.at:3;floating point format conversions;;
734;heap.at:8;heap -- insert-no-dups-delete-min;;
735;heap.at:9;heap -- insert-with-dups-delete-min;;
736;heap.at:10;heap -- insert-no-dups-delete-random;;
737;heap.at:11;heap -- inc-dec;;
738;heap.at:12;heap -- random-insert-delete;;
739;hmap.at:8;hmap -- insert-any-remove-any-random-hash;;
740;hmap.at:9;hmap -- insert-any-remove-any-identity-hash;;
741;hmap.at:10;hmap -- insert-any-remove-any-constant-hash;;
742;hmap.at:11;hmap -- insert-any-remove-same-random-hash;;
743;hmap.at:12;hmap -- insert-any-remove-same-identity-hash;;
744;hmap.at:13;hmap -- insert-any-remove-same-constant-hash;;
745;hmap.at:14;hmap -- insert-any-remove-reverse-random-hash;;
746;hmap.at:15;hmap -- insert-any-remove-reverse-identity-hash;;
747;hmap.at:16;hmap -- insert-any-remove-reverse-constant-hash;;
748;hmap.at:17;hmap -- random-sequence-random-hash;;
749;hmap.at:18;hmap -- random-sequence-identity-hash;;
750;hmap.at:19;hmap -- random-sequence-constant-hash;;
751;hmap.at:20;hmap -- insert-ordered-random-hash;;
752;hmap.at:21;hmap -- insert-ordered-identity-hash;;
753;hmap.at:22;hmap -- insert-ordered-constant-hash;;
754;hmap.at:23;hmap -- moved-random-hash;;
755;hmap.at:24;hmap -- moved-identity-hash;;
756;hmap.at:25;hmap -- moved-constant-hash;;
757;hmap.at:26;hmap -- changed-random-hash;;
758;hmap.at:27;hmap -- changed-identity-hash;;
759;hmap.at:28;hmap -- changed-constant-hash;;
760;hmap.at:29;hmap -- swap-random-hash;;
761;hmap.at:30;hmap -- clear;;
762;hmap.at:31;hmap -- destroy-null;;
763;hmap.at:32;hmap -- shrink-empty;;
764;hmapx.at:8;hmapx -- insert-any-remove-any-random-hash;;
765;hmapx.at:9;hmapx -- insert-any-remove-any-identity-hash;;
766;hmapx.at:10;hmapx -- insert-any-remove-any-constant-hash;;
767;hmapx.at:11;hmapx -- insert-any-remove-same-random-hash;;
768;hmapx.at:12;hmapx -- insert-any-remove-same-identity-hash;;
769;hmapx.at:13;hmapx -- insert-any-remove-same-constant-hash;;
770;hmapx.at:14;hmapx -- insert-any-remove-reverse-random-hash;;
771;hmapx.at:15;hmapx -- insert-any-remove-reverse-identity-hash;;
772;hmapx.at:16;hmapx -- insert-any-remove-reverse-constant-hash;;
773;hmapx.at:17;hmapx -- random-sequence-random-hash;;
774;hmapx.at:18;hmapx -- random-sequence-identity-hash;;
775;hmapx.at:19;hmapx -- random-sequence-constant-hash;;
776;hmapx.at:20;hmapx -- insert-ordered-random-hash;;
777;hmapx.at:21;hmapx -- insert-ordered-identity-hash;;
778;hmapx.at:22;hmapx -- insert-ordered-constant-hash;;
779;hmapx.at:23;hmapx -- moved-random-hash;;
780;hmapx.at:24;hmapx -- moved-identity-hash;;
781;hmapx.at:25;hmapx -- moved-constant-hash;;
782;hmapx.at:26;hmapx -- changed-random-hash;;
783;hmapx.at:27;hmapx -- changed-identity-hash;;
784;hmapx.at:28;hmapx -- changed-constant-hash;;
785;hmapx.at:29;hmapx -- change-random-hash;;
786;hmapx.at:30;hmapx -- change-identity-hash;;
787;hmapx.at:31;hmapx -- change-constant-hash;;
788;hmapx.at:32;hmapx -- swap-random-hash;;
789;hmapx.at:33;hmapx -- clear;;
790;hmapx.at:34;hmapx -- destroy-null;;
791;hmapx.at:35;hmapx -- shrink-empty;;
792;i18n.at:20;convert reflexively;i18n;
793;i18n.at:21;convert without any change;i18n;
794;i18n.at:23;convert from ISO-8859-1 to UTF-8;i18n;
795;i18n.at:25;convert from UTF-8 to ISO-8859-1;i18n;
796;i18n.at:29;convert invalid UTF-8 to ISO-8859-1;i18n;
797;i18n.at:32;convert truncated UTF-8 to ISO-8559-1;i18n;
798;i18n.at:37;convert dropped final character in windows-1258;i18n;
799;i18n.at:42;convert from ISO-8859-1 to UTF-8 with overflow;i18n;
800;i18n.at:46;convert unknown encoding;i18n;
801;i18n.at:77;truncate \"abc\" to 6 bytes in UTF-8;i18n;
802;i18n.at:78;truncate \"\" + \"xyz\" to 6 bytes in UTF-8;i18n;
803;i18n.at:79;truncate \"\" to 6 bytes in UTF-8;i18n;
804;i18n.at:80;truncate \"abcdefghij\" to 6 bytes in UTF-8;i18n;
805;i18n.at:81;truncate \"\" + \"tuvwxyz\" to 6 bytes in UTF-8;i18n;
806;i18n.at:83;truncate \"abc\" + \"xyz\" to 6 bytes in UTF-8;i18n;
807;i18n.at:84;truncate \"abcd\" + \"xyz\" to 6 bytes in UTF-8;i18n;
808;i18n.at:85;truncate \"abc\" + \"uvwxyz\" to 6 bytes in UTF-8;i18n;
809;i18n.at:89;truncate \"x\\342\\203\\236\" + \"y\" to 0 bytes in UTF-8;i18n;
810;i18n.at:90;truncate \"x\\342\\203\\236\" + \"y\" to 1 bytes in UTF-8;i18n;
811;i18n.at:91;truncate \"x\\342\\203\\236\" + \"y\" to 2 bytes in UTF-8;i18n;
812;i18n.at:92;truncate \"x\\342\\203\\236\" + \"y\" to 3 bytes in UTF-8;i18n;
813;i18n.at:93;truncate \"x\\342\\203\\236\" + \"y\" to 4 bytes in UTF-8;i18n;
814;i18n.at:94;truncate \"x\\342\\203\\236\" + \"y\" to 5 bytes in UTF-8;i18n;
815;i18n.at:97;truncate \"\\303\\251\\303\\250\\303\\244\" + \"xyz\" to 0 bytes in ISO-8859-1;i18n;
816;i18n.at:98;truncate \"\\303\\251\\303\\250\\303\\244\" + \"xyz\" to 1 bytes in ISO-8859-1;i18n;
817;i18n.at:99;truncate \"\\303\\251\\303\\250\\303\\244\" + \"xyz\" to 2 bytes in ISO-8859-1;i18n;
818;i18n.at:100;truncate \"\\303\\251\\303\\250\\303\\244\" + \"xyz\" to 3 bytes in ISO-8859-1;i18n;
819;i18n.at:101;truncate \"\\303\\251\\303\\250\\303\\244\" + \"xyz\" to 4 bytes in ISO-8859-1;i18n;
820;i18n.at:103;truncate \"\\303\\251\\303\\250\\303\\244\" + \"xyz\" to 5 bytes in ISO-8859-1;i18n;
821;i18n.at:105;truncate \"\\303\\251\\303\\250\\303\\244\" + \"xyz\" to 6 bytes in ISO-8859-1;i18n;
822;line-reader.at:3;read ASCII;line_reader;
823;line-reader.at:12;read UTF-8;line_reader;
824;line-reader.at:20;read EUC-JP;line_reader;
825;line-reader.at:29;read ASCII as Auto;line_reader;
826;line-reader.at:37;read UTF-8 as Auto;line_reader;
827;line-reader.at:46;read ISO-8859-1 as Auto,ISO-8859-1;line_reader;
828;line-reader.at:58;read UTF-16BE as Auto,UTF-16BE;line_reader;
829;line-reader.at:67;read EUC-JP as Auto,EUC-JP;line_reader;
830;ll.at:8;ll -- push-pop;;
831;ll.at:9;ll -- insert-remove;;
832;ll.at:10;ll -- swap;;
833;ll.at:11;ll -- swap-range;;
834;ll.at:12;ll -- remove-range;;
835;ll.at:13;ll -- remove-equal;;
836;ll.at:14;ll -- remove-if;;
837;ll.at:15;ll -- moved;;
838;ll.at:16;ll -- find-equal;;
839;ll.at:17;ll -- find-if;;
840;ll.at:18;ll -- find-adjacent-equal;;
841;ll.at:19;ll -- count-range;;
842;ll.at:20;ll -- count-equal;;
843;ll.at:21;ll -- count-if;;
844;ll.at:22;ll -- min-max;;
845;ll.at:23;ll -- lexicographical-compare-3way;;
846;ll.at:24;ll -- apply;;
847;ll.at:25;ll -- reverse;;
848;ll.at:26;ll -- permutations-no-dups;;
849;ll.at:27;ll -- permutations-with-dups;;
850;ll.at:28;ll -- merge-no-dups;;
851;ll.at:29;ll -- merge-with-dups;;
852;ll.at:30;ll -- sort-exhaustive;;
853;ll.at:31;ll -- sort-stable;;
854;ll.at:32;ll -- sort-subset;;
855;ll.at:33;ll -- sort-big;;
856;ll.at:34;ll -- unique;;
857;ll.at:35;ll -- sort-unique;;
858;ll.at:36;ll -- insert-ordered;;
859;ll.at:37;ll -- partition;;
860;llx.at:8;llx -- push-pop;;
861;llx.at:9;llx -- insert-remove;;
862;llx.at:10;llx -- swap;;
863;llx.at:11;llx -- swap-range;;
864;llx.at:12;llx -- remove-range;;
865;llx.at:13;llx -- remove-equal;;
866;llx.at:14;llx -- remove-if;;
867;llx.at:15;llx -- find-equal;;
868;llx.at:16;llx -- find;;
869;llx.at:17;llx -- find-if;;
870;llx.at:18;llx -- find-adjacent-equal;;
871;llx.at:19;llx -- count-range;;
872;llx.at:20;llx -- count-equal;;
873;llx.at:21;llx -- count-if;;
874;llx.at:22;llx -- min-max;;
875;llx.at:23;llx -- lexicographical-compare-3way;;
876;llx.at:24;llx -- apply;;
877;llx.at:25;llx -- destroy;;
878;llx.at:26;llx -- reverse;;
879;llx.at:27;llx -- permutations-no-dups;;
880;llx.at:28;llx -- permutations-with-dups;;
881;llx.at:29;llx -- merge-no-dups;;
882;llx.at:30;llx -- merge-with-dups;;
883;llx.at:31;llx -- sort-exhaustive;;
884;llx.at:32;llx -- sort-stable;;
885;llx.at:33;llx -- sort-subset;;
886;llx.at:34;llx -- sort-big;;
887;llx.at:35;llx -- unique;;
888;llx.at:36;llx -- sort-unique;;
889;llx.at:37;llx -- insert-ordered;;
890;llx.at:38;llx -- partition;;
891;llx.at:39;llx -- allocation-failure;;
892;range-map.at:8;range-map -- insert;;
893;range-map.at:9;range-map -- delete-contiguous;;
894;range-map.at:10;range-map -- delete-gaps;;
895;range-set.at:8;range-set -- insert;;
896;range-set.at:9;range-set -- delete;;
897;range-set.at:10;range-set -- allocate;;
898;range-set.at:11;range-set -- allocate-fully;;
899;range-set.at:12;range-set -- pool;;
900;range-set.at:13;range-set -- destroy-null;;
901;range-tower.at:8;range-tower -- set1;;
902;range-tower.at:9;range-tower -- set0;;
903;range-tower.at:10;range-tower -- insert0;;
904;range-tower.at:11;range-tower -- insert1;;
905;range-tower.at:12;range-tower -- delete;;
906;range-tower.at:13;range-tower -- move;;
907;range-tower.at:14;range-tower -- pool;;
908;range-tower.at:15;range-tower -- destroy-null;;
909;sparse-array.at:9;sparse array -- random-insert-delete;sparse-array;
910;sparse-array.at:11;sparse array -- insert and delete with strides;sparse-array;
911;sparse-xarray-test.at:42;in-memory sparse_xarray;;
912;sparse-xarray-test.at:57;on-disk sparse_xarray max-memory-rows=0;;
913;sparse-xarray-test.at:58;on-disk sparse_xarray max-memory-rows=1;;
914;sparse-xarray-test.at:59;on-disk sparse_xarray max-memory-rows=2;;
915;sparse-xarray-test.at:61;copying between in-memory sparse_xarrays;sparse_xarray;
916;sparse-xarray-test.at:82;copying between on-disk sparse_xarrays max-memory-rows=0;sparse_xarray;
917;sparse-xarray-test.at:83;copying between on-disk sparse_xarrays max-memory-rows=1;sparse_xarray;
918;str.at:3;26-adic string formatting;;
919;string-map.at:9;string map -- insert-any-remove-any;string-map;
920;string-map.at:10;string map -- insert-any-remove-same;string-map;
921;string-map.at:11;string map -- insert-any-remove-reverse;string-map;
922;string-map.at:12;string map -- random-sequence;string-map;
923;string-map.at:13;string map -- replace;string-map;
924;string-map.at:14;string map -- insert-ordered;string-map;
925;string-map.at:15;string map -- clear;string-map;
926;string-map.at:16;string map -- clone;string-map;
927;string-map.at:17;string map -- swap;string-map;
928;string-map.at:18;string map -- node-swap-value;string-map;
929;string-map.at:19;string map -- insert-map;string-map;
930;string-map.at:20;string map -- replace-map;string-map;
931;string-map.at:21;string map -- get-keys-and-values;string-map;
932;string-map.at:22;string map -- destroy-null;string-map;
933;stringi-map.at:9;case-insensitive string map -- insert-any-remove-any;stringi-map;
934;stringi-map.at:10;case-insensitive string map -- insert-any-remove-same;stringi-map;
935;stringi-map.at:11;case-insensitive string map -- insert-any-remove-reverse;stringi-map;
936;stringi-map.at:12;case-insensitive string map -- random-sequence;stringi-map;
937;stringi-map.at:13;case-insensitive string map -- replace;stringi-map;
938;stringi-map.at:14;case-insensitive string map -- insert-ordered;stringi-map;
939;stringi-map.at:15;case-insensitive string map -- clear;stringi-map;
940;stringi-map.at:16;case-insensitive string map -- clone;stringi-map;
941;stringi-map.at:17;case-insensitive string map -- swap;stringi-map;
942;stringi-map.at:18;case-insensitive string map -- node-swap-value;stringi-map;
943;stringi-map.at:19;case-insensitive string map -- insert-map;stringi-map;
944;stringi-map.at:20;case-insensitive string map -- replace-map;stringi-map;
945;stringi-map.at:21;case-insensitive string map -- get-keys-and-values;stringi-map;
946;stringi-map.at:22;case-insensitive string map -- destroy-null;stringi-map;
947;string-set.at:9;string set -- insert-any-remove-any;string-set;
948;string-set.at:10;string set -- insert-any-remove-same;string-set;
949;string-set.at:11;string set -- insert-any-remove-reverse;string-set;
950;string-set.at:12;string set -- random-sequence;string-set;
951;string-set.at:13;string set -- insert-ordered;string-set;
952;string-set.at:14;string set -- union;string-set;
953;string-set.at:15;string set -- union-and-intersection;string-set;
954;string-set.at:16;string set -- intersect;string-set;
955;string-set.at:17;string set -- subtract;string-set;
956;string-set.at:18;string set -- swap;string-set;
957;string-set.at:19;string set -- clear;string-set;
958;string-set.at:20;string set -- clone;string-set;
959;string-set.at:21;string set -- destroy-null;string-set;
960;stringi-set.at:9;case-insensitive string set -- insert-any-remove-any;stringi-set;
961;stringi-set.at:10;case-insensitive string set -- insert-any-remove-same;stringi-set;
962;stringi-set.at:11;case-insensitive string set -- insert-any-remove-reverse;stringi-set;
963;stringi-set.at:12;case-insensitive string set -- random-sequence;stringi-set;
964;stringi-set.at:13;case-insensitive string set -- insert-ordered;stringi-set;
965;stringi-set.at:14;case-insensitive string set -- union;stringi-set;
966;stringi-set.at:15;case-insensitive string set -- union-and-intersection;stringi-set;
967;stringi-set.at:16;case-insensitive string set -- intersect;stringi-set;
968;stringi-set.at:17;case-insensitive string set -- subtract;stringi-set;
969;stringi-set.at:18;case-insensitive string set -- swap;stringi-set;
970;stringi-set.at:19;case-insensitive string set -- clear;stringi-set;
971;stringi-set.at:20;case-insensitive string set -- clone;stringi-set;
972;stringi-set.at:21;case-insensitive string set -- destroy-null;stringi-set;
973;tower.at:8;tower -- insert;;
974;tower.at:9;tower -- delete;;
975;tower.at:10;tower -- resize;;
976;tower.at:11;tower -- splice-out;;
977;tower.at:12;tower -- splice-in;;
978;u8-istream.at:3;read ASCII;u8_istream;
979;u8-istream.at:10;read UTF-8;u8_istream;
980;u8-istream.at:19;read EUC-JP;u8_istream;
981;u8-istream.at:28;read UTF-8 with character split across input buffers;u8_istream;
982;u8-istream.at:39;read UTF-8 with character split across output buffers;u8_istream;
983;u8-istream.at:48;read UTF-8 with character split across input and output buffers;u8_istream;
984;u8-istream.at:59;read EUC-JP with character split across input buffers;u8_istream;
985;u8-istream.at:73;read EUC-JP with character split across output buffers;u8_istream;
986;u8-istream.at:82;read EUC-JP with character split across input and output buffers;u8_istream;
987;u8-istream.at:96;read ASCII as Auto;u8_istream;
988;u8-istream.at:105;read UTF-8 as Auto;u8_istream;
989;u8-istream.at:119;read ISO-8859-1 as Auto,ISO-8859-1;u8_istream;
990;u8-istream.at:131;read UTF-16BE as Auto,UTF-16BE;u8_istream;
991;u8-istream.at:140;read UTF-16 as Auto;u8_istream;
992;u8-istream.at:159;read UTF-32 as Auto;u8_istream;
993;u8-istream.at:176;read EUC-JP as Auto,EUC-JP;u8_istream;
994;zip.at:3;Basic zip - unzip test;compression;
995;chart-geometry.at:3;Chart Scale;;
996;chart-geometry.at:7;Chart Ticks Format;;
997;moments.at:28;two-pass moments;;
998;moments.at:29;one-pass moments;;
999;randist.at:86;random distributions -- beta;;
1000;randist.at:321;random distributions -- cauchy;;
1001;randist.at:930;random distributions -- chisq;;
1002;randist.at:978;random distributions -- exp;;
1003;randist.at:1026;random distributions -- f;;
1004;randist.at:1206;random distributions -- gamma;;
1005;randist.at:1430;random distributions -- laplace;;
1006;randist.at:1654;random distributions -- logistic;;
1007;randist.at:1878;random distributions -- lnormal;;
1008;randist.at:2058;random distributions -- normal;;
1009;randist.at:2282;random distributions -- pareto;;
1010;randist.at:2418;random distributions -- t;;
1011;randist.at:2510;random distributions -- uniform;;
1012;randist.at:2690;random distributions -- weibull;;
1013;ascii.at:3;ASCII driver overwriting single-width text;render rendering;
1014;ascii.at:135;ASCII driver overwriting double-width text;render rendering;
1015;ascii.at:391;ASCII driver overwriting combining characters;render rendering;
1016;ascii.at:523;ASCII driver u8_line_set_length;render rendering;
1017;ascii.at:564;ASCII driver Unicode box characters;render rendering;
1018;ascii.at:584;ASCII driver syntax printback;;
1019;ascii.at:631;ASCII unicode box chars;;
1020;charts.at:8;Examine;;
1021;charts.at:40;Roc;;
1022;charts.at:95;Scree;;
1023;charts.at:123;Histogram;;
1024;charts.at:160;FREQUENCIES charts;;
1025;charts.at:198;CROSSTABS charts;;
1026;output.at:23;output csv to unwritable directory;;
1027;output.at:24;output html to unwritable directory;;
1028;output.at:25;output odt to unwritable directory;;
1029;output.at:26;output pdf to unwritable directory;;
1030;output.at:27;output txt to unwritable directory;;
1031;paper-size.at:3;letter default paper size;;
1032;paper-size.at:12;a4 default paper size;;
1033;paper-size.at:21;specific paper sizes;paper size;
1034;render.at:161;single cell;render rendering;
1035;render.at:170;nested single cell;render rendering;
1036;render.at:181;single cell with border;render rendering;
1037;render.at:193;nested single cell with border;render rendering;
1038;render.at:209;joined columns;render rendering;
1039;render.at:225;3x3, joined rows and columns;render rendering;
1040;render.at:245;joined rows and columns (with footnotes);render rendering footnote;
1041;render.at:287;6x6, joined rows and columns;render rendering;
1042;render.at:307;3 rows with many joined cells;render rendering;
1043;render.at:326;3 columns with many joined cells;render rendering;
1044;render.at:378;joined rows;render rendering;
1045;render.at:394;nested joined rows;render rendering;
1046;render.at:416;joined rows only, no rules;render rendering;
1047;render.at:429;joined columns only, no rules;render rendering;
1048;render.at:444;5 big narrow cells;render rendering;
1049;render.at:465;9 big narrow cells;render rendering;
1050;render.at:496;2 big cells with new-lines;render rendering;
1051;render.at:527;8x8 with many 2x2 joins;render rendering;
1052;render.at:556;nested 8x8;render rendering;
1053;render.at:585;nested 8x8s and 6x6s;render rendering;
1054;render.at:667;doubly nested cells;render rendering;
1055;render.at:755;breaking row of many small cells;render rendering;
1056;render.at:781;breaking row of many small cells, with headers;render rendering;
1057;render.at:820;breaking row of many medium-size cells;render rendering;
1058;render.at:870;breaking row of many medium-size cells, with headers;render rendering;
1059;render.at:928;breaking row of many big narrow cells;render rendering;
1060;render.at:1038;breaking 2 rows of many small cells;render rendering;
1061;render.at:1072;breaking 3 rows with many joined cells;render rendering;
1062;render.at:1114;horz break 6x6, joined rows and columns;render rendering;
1063;render.at:1164;horz break 6x6, joined rows and columns, left header;render rendering;
1064;render.at:1200;horz break 6x6, joined rows and columns, right header;render rendering;
1065;render.at:1236;breaking joined cells too wide for page;render rendering;
1066;render.at:1304;breaking joined cells much too wide for page;render rendering;
1067;render.at:1396;breaking cell too wide for page, no border;render rendering;
1068;render.at:1426;breaking cell too wide for page, with border;render rendering;
1069;render.at:1457;horz break 8x8 with many 2x2 joins;render rendering;
1070;render.at:1607;breaking column of many small cells;render rendering;
1071;render.at:1717;breaking column of many small cells, with headers;render rendering;
1072;render.at:1837;disabling too-big headers;render rendering;
1073;render.at:1894;breaking column of many medium-size cells;render rendering;
1074;render.at:2096;breaking 3 columns with many joined cells;render rendering;
1075;render.at:2208;vert break 6x6, joined rows and columns;render rendering;
1076;render.at:2251;breaking joined cells too tall for page;render rendering;
1077;render.at:2307;breaking cell too tall for page, no border;render rendering;
1078;render.at:2349;breaking cell too tall for page, with border;render rendering;
1079;render.at:2381;breaking nested cell too tall for page;render rendering;
1080;render.at:2415;double break 6x6, joined rows and columns;render rendering;
1081;render.at:2530;double break 8x8, with joins, left and right headers;render rendering;
1082;render.at:2617;double break 8x8, with joins, top and bottom headers;render rendering;
1083;render.at:2724;double break 8x8, with joins, all headers;render rendering;
1084;render.at:2831;double break joined cells too big for page;render rendering;
1085;render.at:2968;LIST puts space between columns;render rendering;
1086;render.at:2993;ASCII driver renders end of line spaces reasonably;render rendering;
1087;render.at:3031;multiple spanned cells all contribute to dimensions;render rendering;
1088;tables.at:3;precision;;
1089;main.at:3;nonexistent syntax file crash;;
1090;main.at:9;SIGTERM yields clean shutdown;;
1091;main.at:24;SIGSEGV yields error report;;
1092;main.at:42;argument parsing;;
1093;syntax-gen.at:3;Syntax Generation - printf like;;
1094;perl-module.at:17;Perl create system file;;
1095;perl-module.at:77;Perl writing cases to system files;;
1096;perl-module.at:170;Perl write variable parameters;;
1097;perl-module.at:245;Perl dictionary survives system file;;
1098;perl-module.at:314;Perl read system file;;
1099;perl-module.at:406;Perl copying system files;;
1100;perl-module.at:522;Perl value formatting;;
1101;perl-module.at:561;Perl opening nonexistent file;;
1102;perl-module.at:580;Perl missing values;;
1103;perl-module.at:626;Perl custom attributes;;
1104;perl-module.at:657;Perl Pspp.t;;
"
# List of the all the test groups.
at_groups_all=`$as_echo "$at_help_all" | sed 's/;.*//'`
# at_fn_validate_ranges NAME...
# -----------------------------
# Validate and normalize the test group number contained in each variable
# NAME. Leading zeroes are treated as decimal.
at_fn_validate_ranges ()
{
for at_grp
do
eval at_value=\$$at_grp
if test $at_value -lt 1 || test $at_value -gt 1104; then
$as_echo "invalid test group: $at_value" >&2
exit 1
fi
case $at_value in
0*) # We want to treat leading 0 as decimal, like expr and test, but
# AS_VAR_ARITH treats it as octal if it uses $(( )).
# With XSI shells, ${at_value#${at_value%%[1-9]*}} avoids the
# expr fork, but it is not worth the effort to determine if the
# shell supports XSI when the user can just avoid leading 0.
eval $at_grp='`expr $at_value + 0`' ;;
esac
done
}
at_prev=
for at_option
do
# If the previous option needs an argument, assign it.
if test -n "$at_prev"; then
at_option=$at_prev=$at_option
at_prev=
fi
case $at_option in
*=?*) at_optarg=`expr "X$at_option" : '[^=]*=\(.*\)'` ;;
*) at_optarg= ;;
esac
# Accept the important Cygnus configure options, so we can diagnose typos.
case $at_option in
--help | -h )
at_help_p=:
;;
--list | -l )
at_list_p=:
;;
--version | -V )
at_version_p=:
;;
--clean | -c )
at_clean=:
;;
--color )
at_color=always
;;
--color=* )
case $at_optarg in
no | never | none) at_color=never ;;
auto | tty | if-tty) at_color=auto ;;
always | yes | force) at_color=always ;;
*) at_optname=`echo " $at_option" | sed 's/^ //; s/=.*//'`
as_fn_error $? "unrecognized argument to $at_optname: $at_optarg" ;;
esac
;;
--debug | -d )
at_debug_p=:
;;
--errexit | -e )
at_debug_p=:
at_errexit_p=:
;;
--verbose | -v )
at_verbose=; at_quiet=:
;;
--trace | -x )
at_traceon='set -x'
at_trace_echo=echo
at_check_filter_trace=at_fn_filter_trace
;;
[0-9] | [0-9][0-9] | [0-9][0-9][0-9] | [0-9][0-9][0-9][0-9])
at_fn_validate_ranges at_option
as_fn_append at_groups "$at_option$as_nl"
;;
# Ranges
[0-9]- | [0-9][0-9]- | [0-9][0-9][0-9]- | [0-9][0-9][0-9][0-9]-)
at_range_start=`echo $at_option |tr -d X-`
at_fn_validate_ranges at_range_start
at_range=`$as_echo "$at_groups_all" | \
sed -ne '/^'$at_range_start'$/,$p'`
as_fn_append at_groups "$at_range$as_nl"
;;
-[0-9] | -[0-9][0-9] | -[0-9][0-9][0-9] | -[0-9][0-9][0-9][0-9])
at_range_end=`echo $at_option |tr -d X-`
at_fn_validate_ranges at_range_end
at_range=`$as_echo "$at_groups_all" | \
sed -ne '1,/^'$at_range_end'$/p'`
as_fn_append at_groups "$at_range$as_nl"
;;
[0-9]-[0-9] | [0-9]-[0-9][0-9] | [0-9]-[0-9][0-9][0-9] | \
[0-9]-[0-9][0-9][0-9][0-9] | [0-9][0-9]-[0-9][0-9] | \
[0-9][0-9]-[0-9][0-9][0-9] | [0-9][0-9]-[0-9][0-9][0-9][0-9] | \
[0-9][0-9][0-9]-[0-9][0-9][0-9] | \
[0-9][0-9][0-9]-[0-9][0-9][0-9][0-9] | \
[0-9][0-9][0-9][0-9]-[0-9][0-9][0-9][0-9] )
at_range_start=`expr $at_option : '\(.*\)-'`
at_range_end=`expr $at_option : '.*-\(.*\)'`
if test $at_range_start -gt $at_range_end; then
at_tmp=$at_range_end
at_range_end=$at_range_start
at_range_start=$at_tmp
fi
at_fn_validate_ranges at_range_start at_range_end
at_range=`$as_echo "$at_groups_all" | \
sed -ne '/^'$at_range_start'$/,/^'$at_range_end'$/p'`
as_fn_append at_groups "$at_range$as_nl"
;;
# Directory selection.
--directory | -C )
at_prev=--directory
;;
--directory=* )
at_change_dir=:
at_dir=$at_optarg
if test x- = "x$at_dir" ; then
at_dir=./-
fi
;;
# Parallel execution.
--jobs | -j )
at_jobs=0
;;
--jobs=* | -j[0-9]* )
if test -n "$at_optarg"; then
at_jobs=$at_optarg
else
at_jobs=`expr X$at_option : 'X-j\(.*\)'`
fi
case $at_jobs in *[!0-9]*)
at_optname=`echo " $at_option" | sed 's/^ //; s/[0-9=].*//'`
as_fn_error $? "non-numeric argument to $at_optname: $at_jobs" ;;
esac
;;
# Keywords.
--keywords | -k )
at_prev=--keywords
;;
--keywords=* )
at_groups_selected=$at_help_all
at_save_IFS=$IFS
IFS=,
set X $at_optarg
shift
IFS=$at_save_IFS
for at_keyword
do
at_invert=
case $at_keyword in
'!'*)
at_invert="-v"
at_keyword=`expr "X$at_keyword" : 'X!\(.*\)'`
;;
esac
# It is on purpose that we match the test group titles too.
at_groups_selected=`$as_echo "$at_groups_selected" |
grep -i $at_invert "^[1-9][^;]*;.*[; ]$at_keyword[ ;]"`
done
# Smash the keywords.
at_groups_selected=`$as_echo "$at_groups_selected" | sed 's/;.*//'`
as_fn_append at_groups "$at_groups_selected$as_nl"
;;
--recheck)
at_recheck=:
;;
*=*)
at_envvar=`expr "x$at_option" : 'x\([^=]*\)='`
# Reject names that are not valid shell variable names.
case $at_envvar in
'' | [0-9]* | *[!_$as_cr_alnum]* )
as_fn_error $? "invalid variable name: \`$at_envvar'" ;;
esac
at_value=`$as_echo "$at_optarg" | sed "s/'/'\\\\\\\\''/g"`
# Export now, but save eval for later and for debug scripts.
export $at_envvar
as_fn_append at_debug_args " $at_envvar='$at_value'"
;;
*) $as_echo "$as_me: invalid option: $at_option" >&2
$as_echo "Try \`$0 --help' for more information." >&2
exit 1
;;
esac
done
# Verify our last option didn't require an argument
if test -n "$at_prev"; then :
as_fn_error $? "\`$at_prev' requires an argument"
fi
# The file containing the suite.
at_suite_log=$at_dir/$as_me.log
# Selected test groups.
if test -z "$at_groups$at_recheck"; then
at_groups=$at_groups_all
else
if test -n "$at_recheck" && test -r "$at_suite_log"; then
at_oldfails=`sed -n '
/^Failed tests:$/,/^Skipped tests:$/{
s/^[ ]*\([1-9][0-9]*\):.*/\1/p
}
/^Unexpected passes:$/,/^## Detailed failed tests/{
s/^[ ]*\([1-9][0-9]*\):.*/\1/p
}
/^## Detailed failed tests/q
' "$at_suite_log"`
as_fn_append at_groups "$at_oldfails$as_nl"
fi
# Sort the tests, removing duplicates.
at_groups=`$as_echo "$at_groups" | sort -nu | sed '/^$/d'`
fi
if test x"$at_color" = xalways \
|| { test x"$at_color" = xauto && test -t 1; }; then
at_red=`printf '\033[0;31m'`
at_grn=`printf '\033[0;32m'`
at_lgn=`printf '\033[1;32m'`
at_blu=`printf '\033[1;34m'`
at_std=`printf '\033[m'`
else
at_red= at_grn= at_lgn= at_blu= at_std=
fi
# Help message.
if $at_help_p; then
cat <<_ATEOF || at_write_fail=1
Usage: $0 [OPTION]... [VARIABLE=VALUE]... [TESTS]
Run all the tests, or the selected TESTS, given by numeric ranges, and
save a detailed log file. Upon failure, create debugging scripts.
Do not change environment variables directly. Instead, set them via
command line arguments. Set \`AUTOTEST_PATH' to select the executables
to exercise. Each relative directory is expanded as build and source
directories relative to the top level of this distribution.
E.g., from within the build directory /tmp/foo-1.0, invoking this:
$ $0 AUTOTEST_PATH=bin
is equivalent to the following, assuming the source directory is /src/foo-1.0:
PATH=/tmp/foo-1.0/bin:/src/foo-1.0/bin:\$PATH $0
_ATEOF
cat <<_ATEOF || at_write_fail=1
Operation modes:
-h, --help print the help message, then exit
-V, --version print version number, then exit
-c, --clean remove all the files this test suite might create and exit
-l, --list describes all the tests, or the selected TESTS
_ATEOF
cat <<_ATEOF || at_write_fail=1
Execution tuning:
-C, --directory=DIR
change to directory DIR before starting
--color[=never|auto|always]
enable colored test results on terminal, or always
-j, --jobs[=N]
Allow N jobs at once; infinite jobs with no arg (default 1)
-k, --keywords=KEYWORDS
select the tests matching all the comma-separated KEYWORDS
multiple \`-k' accumulate; prefixed \`!' negates a KEYWORD
--recheck select all tests that failed or passed unexpectedly last time
-e, --errexit abort as soon as a test fails; implies --debug
-v, --verbose force more detailed output
default for debugging scripts
-d, --debug inhibit clean up and top-level logging
default for debugging scripts
-x, --trace enable tests shell tracing
_ATEOF
cat <<_ATEOF || at_write_fail=1
Report bugs to .
GNU PSPP home page: .
General help using GNU software: .
_ATEOF
exit $at_write_fail
fi
# List of tests.
if $at_list_p; then
cat <<_ATEOF || at_write_fail=1
GNU PSPP 0.8.5 test suite test groups:
NUM: FILE-NAME:LINE TEST-GROUP-NAME
KEYWORDS
_ATEOF
# Pass an empty line as separator between selected groups and help.
$as_echo "$at_groups$as_nl$as_nl$at_help_all" |
awk 'NF == 1 && FS != ";" {
selected[$ 1] = 1
next
}
/^$/ { FS = ";" }
NF > 0 {
if (selected[$ 1]) {
printf " %3d: %-18s %s\n", $ 1, $ 2, $ 3
if ($ 4) {
lmax = 79
indent = " "
line = indent
len = length (line)
n = split ($ 4, a, " ")
for (i = 1; i <= n; i++) {
l = length (a[i]) + 1
if (i > 1 && len + l > lmax) {
print line
line = indent " " a[i]
len = length (line)
} else {
line = line " " a[i]
len += l
}
}
if (n)
print line
}
}
}' || at_write_fail=1
exit $at_write_fail
fi
if $at_version_p; then
$as_echo "$as_me (GNU PSPP 0.8.5)" &&
cat <<\_ATEOF || at_write_fail=1
Copyright (C) 2012 Free Software Foundation, Inc.
This test suite is free software; the Free Software Foundation gives
unlimited permission to copy, distribute and modify it.
_ATEOF
exit $at_write_fail
fi
# Should we print banners? Yes if more than one test is run.
case $at_groups in #(
*$as_nl* )
at_print_banners=: ;; #(
* ) at_print_banners=false ;;
esac
# Text for banner N, set to a single space once printed.
# Banner 1. calendar.at:1
# Category starts at test group 1.
at_banner_text_1="calendar"
# Banner 2. data-in.at:1
# Category starts at test group 2.
at_banner_text_2="data input (data-in)"
# Banner 3. data-out.at:1
# Category starts at test group 20.
at_banner_text_3="data output (data-out)"
# Banner 4. datasheet-test.at:1
# Category starts at test group 28.
at_banner_text_4="datasheet"
# Banner 5. dictionary.at:1
# Category starts at test group 33.
at_banner_text_5="dictionary"
# Banner 6. format-guesser.at:1
# Category starts at test group 34.
at_banner_text_6="format guesser"
# Banner 7. pc+-file-reader.at:1
# Category starts at test group 35.
at_banner_text_7="SPSS/PC+ file reader - positive"
# Banner 8. pc+-file-reader.at:447
# Category starts at test group 39.
at_banner_text_8="SPSS/PC+ file reader - negative"
# Banner 9. por-file.at:1
# Category starts at test group 55.
at_banner_text_9="portable files"
# Banner 10. sys-file-reader.at:1
# Category starts at test group 59.
at_banner_text_10="system file reader - positive"
# Banner 11. sys-file-reader.at:1558
# Category starts at test group 76.
at_banner_text_11="system file reader - negative"
# Banner 12. sys-file.at:1
# Category starts at test group 151.
at_banner_text_12="system files"
# Banner 13. sys-file.at:314
# Category starts at test group 160.
at_banner_text_13="system files -- very long strings"
# Banner 14. sys-file-encryption.at:1
# Category starts at test group 165.
at_banner_text_14="system file encryption"
# Banner 15. command.at:1
# Category starts at test group 166.
at_banner_text_15="command parser"
# Banner 16. command.at:24
# Category starts at test group 168.
at_banner_text_16="ERASE"
# Banner 17. command.at:52
# Category starts at test group 170.
at_banner_text_17="N OF CASES"
# Banner 18. command.at:89
# Category starts at test group 171.
at_banner_text_18="COMMENT"
# Banner 19. do-if.at:1
# Category starts at test group 172.
at_banner_text_19="DO IF"
# Banner 20. do-repeat.at:1
# Category starts at test group 174.
at_banner_text_20="DO REPEAT"
# Banner 21. loop.at:1
# Category starts at test group 180.
at_banner_text_21="LOOP"
# Banner 22. temporary.at:1
# Category starts at test group 188.
at_banner_text_22="TEMPORARY"
# Banner 23. add-files.at:103
# Category starts at test group 189.
at_banner_text_23="ADD FILES"
# Banner 24. data-list.at:1
# Category starts at test group 195.
at_banner_text_24="DATA LIST"
# Banner 25. data-reader.at:1
# Category starts at test group 206.
at_banner_text_25="BEGIN DATA"
# Banner 26. dataset.at:1
# Category starts at test group 212.
at_banner_text_26="DATASET commands"
# Banner 27. file-handle.at:1
# Category starts at test group 218.
at_banner_text_27="FILE HANDLE"
# Banner 28. get-data-spreadsheet.at:152
# Category starts at test group 219.
at_banner_text_28="GET DATA Spreadsheet /TYPE=GNM"
# Banner 29. get-data-spreadsheet.at:358
# Category starts at test group 228.
at_banner_text_29="GET DATA Spreadsheet /TYPE=ODS"
# Banner 30. get-data-psql.at:1
# Category starts at test group 236.
at_banner_text_30="GET DATA /TYPE=PSQL"
# Banner 31. get-data-txt.at:1
# Category starts at test group 237.
at_banner_text_31="GET DATA /TYPE=TXT"
# Banner 32. get.at:1
# Category starts at test group 247.
at_banner_text_32="GET"
# Banner 33. inpt-pgm.at:1
# Category starts at test group 252.
at_banner_text_33="INPUT PROGRAM"
# Banner 34. list.at:1
# Category starts at test group 256.
at_banner_text_34="LIST"
# Banner 35. match-files.at:1
# Category starts at test group 262.
at_banner_text_35="MATCH FILES"
# Banner 36. print-space.at:1
# Category starts at test group 272.
at_banner_text_36="PRINT SPACE"
# Banner 37. print.at:1
# Category starts at test group 276.
at_banner_text_37="PRINT and WRITE"
# Banner 38. save.at:1
# Category starts at test group 286.
at_banner_text_38="IMPORT and EXPORT"
# Banner 39. save.at:27
# Category starts at test group 287.
at_banner_text_39="SAVE"
# Banner 40. save-translate.at:1
# Category starts at test group 288.
at_banner_text_40="SAVE TRANSLATE /TYPE=CSV"
# Banner 41. save-translate.at:82
# Category starts at test group 294.
at_banner_text_41="SAVE TRANSLATE /TYPE=TAB"
# Banner 42. update.at:71
# Category starts at test group 295.
at_banner_text_42="UPDATE"
# Banner 43. attributes.at:1
# Category starts at test group 298.
at_banner_text_43="VARIABLE ATTRIBUTES and DATAFILE ATTRIBUTES"
# Banner 44. delete-variables.at:1
# Category starts at test group 299.
at_banner_text_44="DELETE VARIABLES"
# Banner 45. formats.at:1
# Category starts at test group 300.
at_banner_text_45="FORMATS"
# Banner 46. missing-values.at:1
# Category starts at test group 302.
at_banner_text_46="MISSING VALUES"
# Banner 47. mrsets.at:1
# Category starts at test group 304.
at_banner_text_47="MRSETS"
# Banner 48. rename-variables.at:1
# Category starts at test group 316.
at_banner_text_48="RENAME VARIABLES"
# Banner 49. split-file.at:1
# Category starts at test group 319.
at_banner_text_49="SPLIT FILE"
# Banner 50. sys-file-info.at:1
# Category starts at test group 321.
at_banner_text_50="SYSFILE INFO"
# Banner 51. sys-file-info.at:50
# Category starts at test group 322.
at_banner_text_51="DISPLAY"
# Banner 52. value-labels.at:1
# Category starts at test group 327.
at_banner_text_52="VALUE LABELS"
# Banner 53. variable-display.at:1
# Category starts at test group 332.
at_banner_text_53="variable display attributes"
# Banner 54. variable-display.at:34
# Category starts at test group 333.
at_banner_text_54="VARIABLE LABELS"
# Banner 55. vector.at:1
# Category starts at test group 334.
at_banner_text_55="VECTOR"
# Banner 56. weight.at:1
# Category starts at test group 338.
at_banner_text_56="WEIGHT"
# Banner 57. evaluate.at:33
# Category starts at test group 339.
at_banner_text_57="expressions"
# Banner 58. parse.at:1
# Category starts at test group 367.
at_banner_text_58="expression parsing"
# Banner 59. command-name.at:1
# Category starts at test group 369.
at_banner_text_59="command name matching"
# Banner 60. lexer.at:1
# Category starts at test group 376.
at_banner_text_60="lexer"
# Banner 61. q2c.at:1
# Category starts at test group 378.
at_banner_text_61="q2c"
# Banner 62. scan.at:1
# Category starts at test group 379.
at_banner_text_62="syntax scanning"
# Banner 63. segment.at:1
# Category starts at test group 391.
at_banner_text_63="syntax segmentation"
# Banner 64. variable-parser.at:1
# Category starts at test group 405.
at_banner_text_64="Variable parser"
# Banner 65. aggregate.at:1
# Category starts at test group 406.
at_banner_text_65="AGGREGATE procedure"
# Banner 66. autorecode.at:1
# Category starts at test group 422.
at_banner_text_66="AUTORECODE procedure"
# Banner 67. correlations.at:1
# Category starts at test group 429.
at_banner_text_67="CORRELATIONS"
# Banner 68. crosstabs.at:1
# Category starts at test group 434.
at_banner_text_68="CROSSTABS procedure"
# Banner 69. descriptives.at:1
# Category starts at test group 450.
at_banner_text_69="DESCRIPTIVES procedure"
# Banner 70. examine.at:1
# Category starts at test group 461.
at_banner_text_70="EXAMINE"
# Banner 71. graph.at:1
# Category starts at test group 480.
at_banner_text_71="GRAPH"
# Banner 72. factor.at:1
# Category starts at test group 486.
at_banner_text_72="FACTOR procedure"
# Banner 73. flip.at:1
# Category starts at test group 492.
at_banner_text_73="FLIP command"
# Banner 74. frequencies.at:1
# Category starts at test group 494.
at_banner_text_74="FREQUENCIES procedure"
# Banner 75. glm.at:1
# Category starts at test group 513.
at_banner_text_75="GLM procedure"
# Banner 76. logistic.at:1
# Category starts at test group 517.
at_banner_text_76="LOGISTIC REGRESSION"
# Banner 77. means.at:1
# Category starts at test group 527.
at_banner_text_77="MEANS procedure"
# Banner 78. npar.at:1
# Category starts at test group 537.
at_banner_text_78="NPAR TESTS"
# Banner 79. oneway.at:1
# Category starts at test group 573.
at_banner_text_79="ONEWAY procedure"
# Banner 80. quick-cluster.at:1
# Category starts at test group 588.
at_banner_text_80="QUICK CLUSTER"
# Banner 81. rank.at:1
# Category starts at test group 595.
at_banner_text_81="RANK"
# Banner 82. regression.at:1
# Category starts at test group 607.
at_banner_text_82="LINEAR REGRESSION"
# Banner 83. reliability.at:1
# Category starts at test group 616.
at_banner_text_83="RELIABILITY"
# Banner 84. roc.at:1
# Category starts at test group 621.
at_banner_text_84="ROC"
# Banner 85. sort-cases.at:1
# Category starts at test group 624.
at_banner_text_85="SORT CASES"
# Banner 86. t-test.at:1
# Category starts at test group 645.
at_banner_text_86="T-TEST"
# Banner 87. cache.at:1
# Category starts at test group 662.
at_banner_text_87="CACHE"
# Banner 88. cd.at:1
# Category starts at test group 663.
at_banner_text_88="CD"
# Banner 89. date.at:1
# Category starts at test group 664.
at_banner_text_89="USE"
# Banner 90. insert.at:1
# Category starts at test group 665.
at_banner_text_90="INSERT"
# Banner 91. permissions.at:1
# Category starts at test group 672.
at_banner_text_91="PERMISSIONS"
# Banner 92. set.at:1
# Category starts at test group 673.
at_banner_text_92="SET"
# Banner 93. set.at:96
# Category starts at test group 676.
at_banner_text_93="PRESERVE and RESTORE"
# Banner 94. show.at:1
# Category starts at test group 677.
at_banner_text_94="SHOW"
# Banner 95. title.at:1
# Category starts at test group 679.
at_banner_text_95="TITLE and related commands"
# Banner 96. compute.at:1
# Category starts at test group 680.
at_banner_text_96="COMPUTE transformation"
# Banner 97. count.at:1
# Category starts at test group 684.
at_banner_text_97="COUNT"
# Banner 98. recode.at:1
# Category starts at test group 686.
at_banner_text_98="RECODE transformation"
# Banner 99. sample.at:1
# Category starts at test group 696.
at_banner_text_99="SAMPLE"
# Banner 100. select-if.at:1
# Category starts at test group 697.
at_banner_text_100="FILTER"
# Banner 101. abt.at:1
# Category starts at test group 698.
at_banner_text_101="Augmented binary tree (ABT) library"
# Banner 102. bt.at:1
# Category starts at test group 705.
at_banner_text_102="Balanced tree (BT) library"
# Banner 103. encoding-guesser.at:1
# Category starts at test group 713.
at_banner_text_103="encoding guesser"
# Banner 104. float-format.at:1
# Category starts at test group 733.
at_banner_text_104="floating point formats"
# Banner 105. heap.at:1
# Category starts at test group 734.
at_banner_text_105="Heap library"
# Banner 106. hmap.at:1
# Category starts at test group 739.
at_banner_text_106="Hash map (hmap) library"
# Banner 107. hmapx.at:1
# Category starts at test group 764.
at_banner_text_107="Hash map of pointers (hmapx) library"
# Banner 108. i18n.at:1
# Category starts at test group 792.
at_banner_text_108="i18n recoding"
# Banner 109. i18n.at:54
# Category starts at test group 801.
at_banner_text_109="i18n concatenation"
# Banner 110. line-reader.at:1
# Category starts at test group 822.
at_banner_text_110="line_reader"
# Banner 111. ll.at:1
# Category starts at test group 830.
at_banner_text_111="doubly linked list (ll) library"
# Banner 112. llx.at:1
# Category starts at test group 860.
at_banner_text_112="doubly linked list of pointers (llx) library"
# Banner 113. range-map.at:1
# Category starts at test group 892.
at_banner_text_113="range map library"
# Banner 114. range-set.at:1
# Category starts at test group 895.
at_banner_text_114="range set library"
# Banner 115. range-tower.at:1
# Category starts at test group 901.
at_banner_text_115="range tower library"
# Banner 116. sparse-array.at:1
# Category starts at test group 909.
at_banner_text_116="sparse array library"
# Banner 117. sparse-xarray-test.at:1
# Category starts at test group 911.
at_banner_text_117="sparse external arrays"
# Banner 118. str.at:1
# Category starts at test group 918.
at_banner_text_118="string library"
# Banner 119. string-map.at:1
# Category starts at test group 919.
at_banner_text_119="string map library"
# Banner 120. stringi-map.at:1
# Category starts at test group 933.
at_banner_text_120="case-insensitive string map library"
# Banner 121. string-set.at:1
# Category starts at test group 947.
at_banner_text_121="string set library"
# Banner 122. stringi-set.at:1
# Category starts at test group 960.
at_banner_text_122="case-insensitive string set library"
# Banner 123. tower.at:1
# Category starts at test group 973.
at_banner_text_123="tower library"
# Banner 124. u8-istream.at:1
# Category starts at test group 978.
at_banner_text_124="u8_istream"
# Banner 125. zip.at:1
# Category starts at test group 994.
at_banner_text_125="zip"
# Banner 126. chart-geometry.at:1
# Category starts at test group 995.
at_banner_text_126="Chart Geometry"
# Banner 127. moments.at:1
# Category starts at test group 997.
at_banner_text_127="calculating moments"
# Banner 128. randist.at:1
# Category starts at test group 999.
at_banner_text_128="random distributions"
# Banner 129. ascii.at:1
# Category starts at test group 1013.
at_banner_text_129="ASCII driver -- rendering corner cases"
# Banner 130. charts.at:1
# Category starts at test group 1020.
at_banner_text_130="CHARTS Rudimentary run tests"
# Banner 131. output.at:1
# Category starts at test group 1026.
at_banner_text_131="output drivers"
# Banner 132. paper-size.at:1
# Category starts at test group 1031.
at_banner_text_132="output -- paper sizes"
# Banner 133. render.at:159
# Category starts at test group 1034.
at_banner_text_133="output rendering -- no page breaking"
# Banner 134. render.at:753
# Category starts at test group 1055.
at_banner_text_134="output rendering -- horizontal page breaks"
# Banner 135. render.at:1605
# Category starts at test group 1070.
at_banner_text_135="output rendering -- vertical page breaks"
# Banner 136. render.at:2413
# Category starts at test group 1080.
at_banner_text_136="output rendering -- double page breaks"
# Banner 137. render.at:2964
# Category starts at test group 1085.
at_banner_text_137="output rendering -- problematic procedures"
# Banner 138. tables.at:1
# Category starts at test group 1088.
at_banner_text_138="output -- tables"
# Banner 139. main.at:1
# Category starts at test group 1089.
at_banner_text_139="PSPP terminal UI"
# Banner 140. syntax-gen.at:1
# Category starts at test group 1093.
at_banner_text_140="SYNTAX GENERATOR"
# Banner 141. perl-module.at:1
# Category starts at test group 1094.
at_banner_text_141="Perl module tests"
# Take any -C into account.
if $at_change_dir ; then
test x != "x$at_dir" && cd "$at_dir" \
|| as_fn_error $? "unable to change directory"
at_dir=`pwd`
fi
# Load the config files for any default variable assignments.
for at_file in atconfig atlocal
do
test -r $at_file || continue
. ./$at_file || as_fn_error $? "invalid content: $at_file"
done
# Autoconf <=2.59b set at_top_builddir instead of at_top_build_prefix:
: "${at_top_build_prefix=$at_top_builddir}"
# Perform any assignments requested during argument parsing.
eval "$at_debug_args"
# atconfig delivers names relative to the directory the test suite is
# in, but the groups themselves are run in testsuite-dir/group-dir.
if test -n "$at_top_srcdir"; then
builddir=../..
for at_dir_var in srcdir top_srcdir top_build_prefix
do
eval at_val=\$at_$at_dir_var
case $at_val in
[\\/$]* | ?:[\\/]* ) at_prefix= ;;
*) at_prefix=../../ ;;
esac
eval "$at_dir_var=\$at_prefix\$at_val"
done
fi
## -------------------- ##
## Directory structure. ##
## -------------------- ##
# This is the set of directories and files used by this script
# (non-literals are capitalized):
#
# TESTSUITE - the testsuite
# TESTSUITE.log - summarizes the complete testsuite run
# TESTSUITE.dir/ - created during a run, remains after -d or failed test
# + at-groups/ - during a run: status of all groups in run
# | + NNN/ - during a run: meta-data about test group NNN
# | | + check-line - location (source file and line) of current AT_CHECK
# | | + status - exit status of current AT_CHECK
# | | + stdout - stdout of current AT_CHECK
# | | + stder1 - stderr, including trace
# | | + stderr - stderr, with trace filtered out
# | | + test-source - portion of testsuite that defines group
# | | + times - timestamps for computing duration
# | | + pass - created if group passed
# | | + xpass - created if group xpassed
# | | + fail - created if group failed
# | | + xfail - created if group xfailed
# | | + skip - created if group skipped
# + at-stop - during a run: end the run if this file exists
# + at-source-lines - during a run: cache of TESTSUITE line numbers for extraction
# + 0..NNN/ - created for each group NNN, remains after -d or failed test
# | + TESTSUITE.log - summarizes the group results
# | + ... - files created during the group
# The directory the whole suite works in.
# Should be absolute to let the user `cd' at will.
at_suite_dir=$at_dir/$as_me.dir
# The file containing the suite ($at_dir might have changed since earlier).
at_suite_log=$at_dir/$as_me.log
# The directory containing helper files per test group.
at_helper_dir=$at_suite_dir/at-groups
# Stop file: if it exists, do not start new jobs.
at_stop_file=$at_suite_dir/at-stop
# The fifo used for the job dispatcher.
at_job_fifo=$at_suite_dir/at-job-fifo
if $at_clean; then
test -d "$at_suite_dir" &&
find "$at_suite_dir" -type d ! -perm -700 -exec chmod u+rwx \{\} \;
rm -f -r "$at_suite_dir" "$at_suite_log"
exit $?
fi
# Don't take risks: use only absolute directories in PATH.
#
# For stand-alone test suites (ie. atconfig was not found),
# AUTOTEST_PATH is relative to `.'.
#
# For embedded test suites, AUTOTEST_PATH is relative to the top level
# of the package. Then expand it into build/src parts, since users
# may create executables in both places.
AUTOTEST_PATH=`$as_echo "$AUTOTEST_PATH" | sed "s|:|$PATH_SEPARATOR|g"`
at_path=
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $AUTOTEST_PATH $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
test -n "$at_path" && as_fn_append at_path $PATH_SEPARATOR
case $as_dir in
[\\/]* | ?:[\\/]* )
as_fn_append at_path "$as_dir"
;;
* )
if test -z "$at_top_build_prefix"; then
# Stand-alone test suite.
as_fn_append at_path "$as_dir"
else
# Embedded test suite.
as_fn_append at_path "$at_top_build_prefix$as_dir$PATH_SEPARATOR"
as_fn_append at_path "$at_top_srcdir/$as_dir"
fi
;;
esac
done
IFS=$as_save_IFS
# Now build and simplify PATH.
#
# There might be directories that don't exist, but don't redirect
# builtins' (eg., cd) stderr directly: Ultrix's sh hates that.
at_new_path=
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $at_path
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
test -d "$as_dir" || continue
case $as_dir in
[\\/]* | ?:[\\/]* ) ;;
* ) as_dir=`(cd "$as_dir" && pwd) 2>/dev/null` ;;
esac
case $PATH_SEPARATOR$at_new_path$PATH_SEPARATOR in
*$PATH_SEPARATOR$as_dir$PATH_SEPARATOR*) ;;
$PATH_SEPARATOR$PATH_SEPARATOR) at_new_path=$as_dir ;;
*) as_fn_append at_new_path "$PATH_SEPARATOR$as_dir" ;;
esac
done
IFS=$as_save_IFS
PATH=$at_new_path
export PATH
# Setting up the FDs.
# 5 is the log file. Not to be overwritten if `-d'.
if $at_debug_p; then
at_suite_log=/dev/null
else
: >"$at_suite_log"
fi
exec 5>>"$at_suite_log"
# Banners and logs.
$as_echo "## -------------------------- ##
## GNU PSPP 0.8.5 test suite. ##
## -------------------------- ##"
{
$as_echo "## -------------------------- ##
## GNU PSPP 0.8.5 test suite. ##
## -------------------------- ##"
echo
$as_echo "$as_me: command line was:"
$as_echo " \$ $0 $at_cli_args"
echo
# If ChangeLog exists, list a few lines in case it might help determining
# the exact version.
if test -n "$at_top_srcdir" && test -f "$at_top_srcdir/ChangeLog"; then
$as_echo "## ---------- ##
## ChangeLog. ##
## ---------- ##"
echo
sed 's/^/| /;10q' "$at_top_srcdir/ChangeLog"
echo
fi
{
cat <<_ASUNAME
## --------- ##
## Platform. ##
## --------- ##
hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
uname -m = `(uname -m) 2>/dev/null || echo unknown`
uname -r = `(uname -r) 2>/dev/null || echo unknown`
uname -s = `(uname -s) 2>/dev/null || echo unknown`
uname -v = `(uname -v) 2>/dev/null || echo unknown`
/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown`
/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
_ASUNAME
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
$as_echo "PATH: $as_dir"
done
IFS=$as_save_IFS
}
echo
# Contents of the config files.
for at_file in atconfig atlocal
do
test -r $at_file || continue
$as_echo "$as_me: $at_file:"
sed 's/^/| /' $at_file
echo
done
} >&5
## ------------------------- ##
## Autotest shell functions. ##
## ------------------------- ##
# at_fn_banner NUMBER
# -------------------
# Output banner NUMBER, provided the testsuite is running multiple groups and
# this particular banner has not yet been printed.
at_fn_banner ()
{
$at_print_banners || return 0
eval at_banner_text=\$at_banner_text_$1
test "x$at_banner_text" = "x " && return 0
eval "at_banner_text_$1=\" \""
if test -z "$at_banner_text"; then
$at_first || echo
else
$as_echo "$as_nl$at_banner_text$as_nl"
fi
} # at_fn_banner
# at_fn_check_prepare_notrace REASON LINE
# ---------------------------------------
# Perform AT_CHECK preparations for the command at LINE for an untraceable
# command; REASON is the reason for disabling tracing.
at_fn_check_prepare_notrace ()
{
$at_trace_echo "Not enabling shell tracing (command contains $1)"
$as_echo "$2" >"$at_check_line_file"
at_check_trace=: at_check_filter=:
: >"$at_stdout"; : >"$at_stderr"
}
# at_fn_check_prepare_trace LINE
# ------------------------------
# Perform AT_CHECK preparations for the command at LINE for a traceable
# command.
at_fn_check_prepare_trace ()
{
$as_echo "$1" >"$at_check_line_file"
at_check_trace=$at_traceon at_check_filter=$at_check_filter_trace
: >"$at_stdout"; : >"$at_stderr"
}
# at_fn_check_prepare_dynamic COMMAND LINE
# ----------------------------------------
# Decide if COMMAND at LINE is traceable at runtime, and call the appropriate
# preparation function.
at_fn_check_prepare_dynamic ()
{
case $1 in
*$as_nl*)
at_fn_check_prepare_notrace 'an embedded newline' "$2" ;;
*)
at_fn_check_prepare_trace "$2" ;;
esac
}
# at_fn_filter_trace
# ------------------
# Remove the lines in the file "$at_stderr" generated by "set -x" and print
# them to stderr.
at_fn_filter_trace ()
{
mv "$at_stderr" "$at_stder1"
grep '^ *+' "$at_stder1" >&2
grep -v '^ *+' "$at_stder1" >"$at_stderr"
}
# at_fn_log_failure FILE-LIST
# ---------------------------
# Copy the files in the list on stdout with a "> " prefix, and exit the shell
# with a failure exit code.
at_fn_log_failure ()
{
for file
do $as_echo "$file:"; sed 's/^/> /' "$file"; done
echo 1 > "$at_status_file"
exit 1
}
# at_fn_check_skip EXIT-CODE LINE
# -------------------------------
# Check whether EXIT-CODE is a special exit code (77 or 99), and if so exit
# the test group subshell with that same exit code. Use LINE in any report
# about test failure.
at_fn_check_skip ()
{
case $1 in
99) echo 99 > "$at_status_file"; at_failed=:
$as_echo "$2: hard failure"; exit 99;;
77) echo 77 > "$at_status_file"; exit 77;;
esac
}
# at_fn_check_status EXPECTED EXIT-CODE LINE
# ------------------------------------------
# Check whether EXIT-CODE is the EXPECTED exit code, and if so do nothing.
# Otherwise, if it is 77 or 99, exit the test group subshell with that same
# exit code; if it is anything else print an error message referring to LINE,
# and fail the test.
at_fn_check_status ()
{
case $2 in
$1 ) ;;
77) echo 77 > "$at_status_file"; exit 77;;
99) echo 99 > "$at_status_file"; at_failed=:
$as_echo "$3: hard failure"; exit 99;;
*) $as_echo "$3: exit code was $2, expected $1"
at_failed=:;;
esac
}
# at_fn_diff_devnull FILE
# -----------------------
# Emit a diff between /dev/null and FILE. Uses "test -s" to avoid useless diff
# invocations.
at_fn_diff_devnull ()
{
test -s "$1" || return 0
$at_diff "$at_devnull" "$1"
}
# at_fn_test NUMBER
# -----------------
# Parse out test NUMBER from the tail of this file.
at_fn_test ()
{
eval at_sed=\$at_sed$1
sed "$at_sed" "$at_myself" > "$at_test_source"
}
# at_fn_create_debugging_script
# -----------------------------
# Create the debugging script $at_group_dir/run which will reproduce the
# current test group.
at_fn_create_debugging_script ()
{
{
echo "#! /bin/sh" &&
echo 'test "${ZSH_VERSION+set}" = set && alias -g '\''${1+"$@"}'\''='\''"$@"'\''' &&
$as_echo "cd '$at_dir'" &&
$as_echo "exec \${CONFIG_SHELL-$SHELL} \"$at_myself\" -v -d $at_debug_args $at_group \${1+\"\$@\"}" &&
echo 'exit 1'
} >"$at_group_dir/run" &&
chmod +x "$at_group_dir/run"
}
## -------------------------------- ##
## End of autotest shell functions. ##
## -------------------------------- ##
{
$as_echo "## ---------------- ##
## Tested programs. ##
## ---------------- ##"
echo
} >&5
# Report what programs are being tested.
for at_program in : $at_tested
do
test "$at_program" = : && continue
case $at_program in
[\\/]* | ?:[\\/]* ) $at_program_=$at_program ;;
* )
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
test -f "$as_dir/$at_program" && break
done
IFS=$as_save_IFS
at_program_=$as_dir/$at_program ;;
esac
if test -f "$at_program_"; then
{
$as_echo "$at_srcdir/testsuite.at:1: $at_program_ --version"
"$at_program_" --version &5 2>&1
else
as_fn_error $? "cannot find $at_program" "$LINENO" 5
fi
done
{
$as_echo "## ------------------ ##
## Running the tests. ##
## ------------------ ##"
} >&5
at_start_date=`date`
at_start_time=`date +%s 2>/dev/null`
$as_echo "$as_me: starting at: $at_start_date" >&5
data_in_prng () {
cat > my-rand.pl <<'EOF'
# This random number generator and the test for it below are drawn
# from Park and Miller, "Random Number Generators: Good Ones are Hard
# to Come By", Communications of the ACM 31:10 (October 1988). It is
# documented to function properly on systems with a 46-bit or longer
# real significand, which includes systems that have 64-bit IEEE reals
# (with 53-bit significand). The test should catch any systems for
# which this is not true, in any case.
our ($seed) = 1;
sub my_rand {
my ($modulo) = @_;
my ($a) = 16807;
my ($m) = 2147483647;
my ($tmp) = $a * $seed;
$seed = $tmp - $m * int ($tmp / $m);
return $seed % $modulo;
}
EOF
cat > test-my-rand.pl <<'EOF'
#! /usr/bin/perl
use strict;
use warnings;
do 'my-rand.pl';
my_rand (1) foreach 1...10000;
our $seed;
die $seed if $seed != 1043618065;
EOF
}
date_in () {
data_in_prng
cat > date-in.pl << 'EOF'
#! /usr/bin/perl
use strict;
use warnings;
do 'my-rand.pl';
my ($fmt_name, @templates) = @ARGV;
my @dates = (#yyyy mm dd jjj HH MM SS
[1648, 6, 10, 162, 0, 0, 0],
[1680, 6, 30, 182, 4, 50, 38],
[1716, 7, 24, 206, 12, 31, 35],
[1768, 6, 19, 171, 12, 47, 53],
[1819, 8, 2, 214, 1, 26, 0],
[1839, 3, 27, 86, 20, 58, 11],
[1903, 4, 19, 109, 7, 36, 5],
[1929, 8, 25, 237, 15, 43, 49],
[1941, 9, 29, 272, 4, 25, 9],
[1943, 4, 19, 109, 6, 49, 27],
[1943, 10, 7, 280, 2, 57, 52],
[1992, 3, 17, 77, 16, 45, 44],
[1996, 2, 25, 56, 21, 30, 57],
[1941, 9, 29, 272, 4, 25, 9],
[1943, 4, 19, 109, 6, 49, 27],
[1943, 10, 7, 280, 2, 57, 52],
[1992, 3, 17, 77, 16, 45, 44],
[1996, 2, 25, 56, 21, 30, 57],
[2038, 11, 10, 314, 22, 30, 4],
[2094, 7, 18, 199, 1, 56, 51]);
open (SYNTAX, '>', "$fmt_name.sps") or die "$fmt_name.sps: create: $!\n";
print SYNTAX "SET EPOCH 1930.\n";
print SYNTAX "DATA LIST NOTABLE FILE='$fmt_name.in'/$fmt_name 1-40 ($fmt_name).\n";
print SYNTAX "PRINT OUTFILE='$fmt_name.out'/$fmt_name (F16.2).\n";
print SYNTAX "EXECUTE.\n";
close (SYNTAX);
my ($fn) = "$fmt_name.in";
open (DATA, '>', $fn) or die "$fn: create: $!\n";
select DATA;
for my $template (@templates) {
for my $date (@dates) {
print_date_with_template ($date, $template) for 1...10;
}
}
close (DATA);
sub print_date_with_template {
my ($date, $template) = @_;
my ($year, $month, $day, $julian, $hour, $minute, $second) = @$date;
my ($quarter) = int (($month - 1) / 3) + 1;
my ($week) = int (($julian - 1) / 7) + 1;
my (@year_types) = ('full');
push (@year_types, '2digit') if $year >= 1930 && $year < 2030;
for my $c (split ('', $template)) {
if ($c eq 'd') {
printf (+pick ('%d', '%02d'), $day);
} elsif ($c eq 'm') {
my ($type) = pick ('arabic', 'roman', 'abbrev', 'full');
if ($type eq 'arabic') {
printf (+pick ('%d', '%02d'), $month);
} elsif ($type eq 'roman') {
my ($mmm) = ('i', 'ii', 'iii',
'iv', 'v', 'vi',
'vii', 'viii', 'ix',
'x', 'xi', 'xii')[$month - 1];
print_rand_case ($mmm);
} elsif ($type eq 'abbrev') {
my ($mmm) = qw (jan feb mar apr may jun
jul aug sep oct nov dec)[$month - 1];
print_rand_case ($mmm);
} elsif ($type eq 'full') {
my ($mmm) = qw (january february march
april may june
july august september
october november december)[$month - 1];
print_rand_case ($mmm);
} else {
die;
}
} elsif ($c eq 'y') {
my ($type) = pick (@year_types);
if ($type eq '2digit') {
printf (+pick ('%d', '%02d'), $year % 100);
} elsif ($type eq 'full') {
print $year;
} else {
die;
}
} elsif ($c eq 'j') {
my ($type) = pick (@year_types);
if ($type eq '2digit') {
printf ("%02d%03d", $year % 100, $julian);
} elsif ($type eq 'full') {
printf ("%04d%03d", $year, $julian);
} else {
die;
}
} elsif ($c eq 'q') {
print $quarter;
} elsif ($c eq 'w') {
print $week;
} elsif ($c eq 'H') {
printf (+pick ('%d', '%02d'), $hour);
} elsif ($c eq 'M') {
printf (+pick ('%d', '%02d'), $minute);
} elsif ($c eq 'S') {
printf (+pick ('%d', '%02d'), $second);
} elsif ($c eq '-') {
print +pick (' ', '-', '.', ',', '/');
} elsif ($c eq ':') {
print +pick (' ', ':');
} elsif ($c eq ' ') {
print ' ';
} elsif ($c eq 'Q') {
maybe_print_space ();
print_rand_case ('q');
maybe_print_space ();
} elsif ($c eq 'W') {
maybe_print_space ();
print_rand_case ('wk');
maybe_print_space ();
} elsif ($c eq '+') {
print +pick ('', '-', '+');
} else {
die;
}
}
print "\n";
}
sub print_rand_case {
my ($s) = @_;
my ($case) = pick (qw (uc lc tc));
if ($case eq 'uc') {
print uc ($s);
} elsif ($case eq 'lc') {
print lc ($s);
} elsif ($case eq 'tc') {
print ucfirst ($s);
} else {
die;
}
}
sub maybe_print_space {
print +pick ('', ' ');
}
sub pick {
return $_[int (my_rand ($#_
+ 1))];
}
EOF
}
time_in () {
data_in_prng
cat > time-in.pl << 'EOF'
#! /usr/bin/perl
use strict;
use warnings;
do 'my-rand.pl';
my ($skip, $fmt_name, @templates) = @ARGV;
my_rand (1) foreach 1...$skip;
my @times = (# D HH MM SS
[ 0, 0, 0, 0.00],
[ 1, 4, 50, 38.68],
[ 5, 12, 31, 35.82],
[ 0, 12, 47, 53.41],
[ 3, 1, 26, 0.69],
[ 1, 20, 58, 11.19],
[ 12, 7, 36, 5.98],
[ 52, 15, 43, 49.27],
[ 7, 4, 25, 9.24],
[ 0, 6, 49, 27.89],
[ 20, 2, 57, 52.56],
[555, 16, 45, 44.12],
[120, 21, 30, 57.27],
[ 0, 4, 25, 9.98],
[ 3, 6, 49, 27.24],
[ 5, 2, 57, 52.13],
[ 0, 16, 45, 44.35],
[ 1, 21, 30, 57.32],
[ 10, 22, 30, 4.27],
[ 22, 1, 56, 51.18]);
open (SYNTAX, '>', "$fmt_name.sps") or die "$fmt_name.sps: create: $!\n";
print SYNTAX "DATA LIST NOTABLE FILE='$fmt_name.data'/$fmt_name 1-40 ($fmt_name).\n";
print SYNTAX "PRINT OUTFILE='$fmt_name.out'/$fmt_name (F16.2).\n";
print SYNTAX "EXECUTE.\n";
close (SYNTAX);
my ($fn) = "$fmt_name.data";
open (DATA, '>', $fn) or die "$fn: create: $!\n";
select DATA;
for my $template (@templates) {
for my $time (@times) {
print_time_with_template ($time, $template) for 1...10;
}
}
close (DATA);
sub print_time_with_template {
my ($time, $template) = @_;
my ($day, $hour, $minute, $second) = @$time;
for my $c (split ('', $template)) {
if ($c eq '+') {
print +pick ('', '-', '+');
} elsif ($c eq 'D') {
printf (+pick ('%d', '%02d'), $day);
$day = 0;
} elsif ($c eq 'H') {
printf (+pick ('%d', '%02d'), $hour + 24 * $day);
} elsif ($c eq 'M') {
printf (+pick ('%d', '%02d'), $minute);
} elsif ($c eq 'S') {
printf (+pick ('%.0f', '%02.0f', '%.1f', '%.2f'), $second);
} elsif ($c eq ':') {
print +pick (' ', ':');
} elsif ($c eq ' ') {
print ' ';
} else {
die;
}
}
print "\n";
}
sub pick {
return $_[int (my_rand ($#_
+ 1)) ];
}
EOF
}
zcompressed_sack () {
cat <<'EOF'
"$FL3"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 6; 2; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
2; 4; 0; 0; 0x010400 *2; s8 "STR4";
2; 8; 0; 0; 0x010800 *2; s8 "STR8";
2; 15; 0; 0; 0x010f00 *2; s8 "STR15";
2; -1; 0; 0; 0; 0; s8 "";
7; 20; 1; 12; "windows-1252";
999; 0;
i64 0x194; # zheader_ofs
i64 0x205; # ztrailer_ofs
i64 48; # ztrailer_len
hex "78 01 63 4c f9 f7 f7 df df ff bf 13 93 92 53 52";
hex "d3 d2 33 0c 0c 8d 8c 15 80 e0 ef df bf ff 52 d3";
hex "fe fe cd ca ce c9 05 f1 f3 f2 0b 0a 8b 8a 4b 4a";
hex "cb ca 2b 2a ab 1c 9d 9c 5d 5c dd dc 41 e2 1e 9e";
hex "5e de 3e be 7e fe ff fe fe 61 00 81 80 c0 a0 e0";
hex "90 d0 b0 70 00 0f 3f 23 d7";
i64 -100; # ztrailer_bias
i64 0; # ztrailer_zero
0x3ff000; # block_size
1; # n_blocks
i64 0x194; # uncompressed_ofs
i64 0x1ac; # compressed_ofs
88; # uncompressed_size
89; # compressed_size
EOF
}
vls_gen_data () {
cat > data.txt < gen-data.pl <<'EOF'
use strict;
use warnings;
# Generate shuffled data.
my (@data);
for my $i (0...$ARGV[0] - 1) {
push (@data, ($i) x $ARGV[1]);
}
fisher_yates_shuffle (\@data);
# Output shuffled data.
my (@shuffled) = map ([$data[$_], $_], 0...$#data);
open (SHUFFLED, ">data.txt");
print SHUFFLED "$data[$_] $_\n" foreach 0...$#data;
# Output sorted data.
my (@sorted) = sort { $a->[0] <=> $b->[0] || $a->[1] <=> $b->[1] } @shuffled;
open (SORTED, ">expout");
printf SORTED " %8d %8d \n", $_->[0], $_->[1] foreach @sorted;
# From perlfaq4.
sub fisher_yates_shuffle {
my $deck = shift; # $deck is a reference to an array
my $i = @$deck;
while ($i--) {
my $j = int rand ($i+1);
@$deck[$i,$j] = @$deck[$j,$i];
}
}
EOF
$PERL gen-data.pl "$@"
}
sparse_xarray_queue_limit () {
# Each on-disk sparse_xarray eats up a file descriptor, so for the
# tests that involve on-disk sparse_xarrays we need to limit the
# maximum length of the queue. Figure out how many file descriptors
# we can let the test program open at once.
OPEN_MAX=`getconf OPEN_MAX 2>/dev/null`
case $OPEN_MAX in
[0-9]*)
# Divide by 2 because some fds are used by other code.
queue_limit=`expr $OPEN_MAX / 2`
;;
undefined)
# Assume that any system with a dynamic fd limit has a large limit.
queue_limit=500
;;
*)
case `uname -m 2>/dev/null` in
CYGWIN*)
# Cygwin claims a 256-fd limit as OPEN_MAX in .
queue_limit=128
;;
MINGW*)
# The following email claims that Mingw should have a
# 2048-fd limit:
# http://www.mail-archive.com/squid-users@squid-cache.org/msg35249.html
queue_limit=1024
;;
*)
# This seems fairly conservative these days.
queue_limit=50
;;
esac
;;
esac
echo "$queue_limit"
}
randist_compare () {
cat > compare.pl <<'EOF'
use strict;
use warnings 'all';
my ($epsilon) = 1;
open (EXPECTED, '<', $ARGV[0]) or die "$ARGV[0]: open: $!\n";
open (ACTUAL, '<', $ARGV[1]) or die "$ARGV[1]: open: $!\n";
my ($errors) = 0;
LINE: for (;;) {
my $a = ;
my $b = ;
last if !defined $a && !defined $b;
die "$ARGV[0]:$.: unexpected end of file\n" if !defined $a;
die "$ARGV[1]:$.: unexpected end of file\n" if !defined $b;
my (@a) = split (' ', $a);
my (@b) = split (' ', $b);
die "$ARGV[1]:$.: contains ". scalar (@b) . " fields but should "
. "contain " . scalar (@a) . "\n"
if $#a != $#b;
foreach my $i (0...$#a) {
die "$ARGV[1]:$.: unexpected number of decimals\n"
if count_decimals ($a[$i]) != count_decimals ($b[$i]);
my ($an) = to_int ($a[$i]);
my ($bn) = to_int ($b[$i]);
if ($an ne $bn && ($bn < $an - $epsilon || $bn > $an + $epsilon)) {
$errors++;
if ($errors > 50) {
print "$ARGV[1]: Additional differences suppressed.\n";
last LINE;
}
print "$ARGV[1]:$.: Values differ from $ARGV[0]:$.\n";
print "Expected:\n", $a;
print "Calculated:\n", $b;
}
}
}
exit ($errors > 0);
sub count_decimals {
my ($s) = @_;
return length (substr ($s, index ($s, '.')));
}
sub to_int {
local ($_) = @_;
s/\.//;
return $_;
}
EOF
}
# Create the master directory if it doesn't already exist.
as_dir="$at_suite_dir"; as_fn_mkdir_p ||
as_fn_error $? "cannot create \`$at_suite_dir'" "$LINENO" 5
# Can we diff with `/dev/null'? DU 5.0 refuses.
if diff /dev/null /dev/null >/dev/null 2>&1; then
at_devnull=/dev/null
else
at_devnull=$at_suite_dir/devnull
>"$at_devnull"
fi
# Use `diff -u' when possible.
if at_diff=`diff -u "$at_devnull" "$at_devnull" 2>&1` && test -z "$at_diff"
then
at_diff='diff -u'
else
at_diff=diff
fi
# Get the last needed group.
for at_group in : $at_groups; do :; done
# Extract the start and end lines of each test group at the tail
# of this file
awk '
BEGIN { FS="" }
/^#AT_START_/ {
start = NR
}
/^#AT_STOP_/ {
test = substr ($ 0, 10)
print "at_sed" test "=\"1," start "d;" (NR-1) "q\""
if (test == "'"$at_group"'") exit
}' "$at_myself" > "$at_suite_dir/at-source-lines" &&
. "$at_suite_dir/at-source-lines" ||
as_fn_error $? "cannot create test line number cache" "$LINENO" 5
rm -f "$at_suite_dir/at-source-lines"
# Set number of jobs for `-j'; avoid more jobs than test groups.
set X $at_groups; shift; at_max_jobs=$#
if test $at_max_jobs -eq 0; then
at_jobs=1
fi
if test $at_jobs -ne 1 &&
{ test $at_jobs -eq 0 || test $at_jobs -gt $at_max_jobs; }; then
at_jobs=$at_max_jobs
fi
# If parallel mode, don't output banners, don't split summary lines.
if test $at_jobs -ne 1; then
at_print_banners=false
at_quiet=:
fi
# Set up helper dirs.
rm -rf "$at_helper_dir" &&
mkdir "$at_helper_dir" &&
cd "$at_helper_dir" &&
{ test -z "$at_groups" || mkdir $at_groups; } ||
as_fn_error $? "testsuite directory setup failed" "$LINENO" 5
# Functions for running a test group. We leave the actual
# test group execution outside of a shell function in order
# to avoid hitting zsh 4.x exit status bugs.
# at_fn_group_prepare
# -------------------
# Prepare for running a test group.
at_fn_group_prepare ()
{
# The directory for additional per-group helper files.
at_job_dir=$at_helper_dir/$at_group
# The file containing the location of the last AT_CHECK.
at_check_line_file=$at_job_dir/check-line
# The file containing the exit status of the last command.
at_status_file=$at_job_dir/status
# The files containing the output of the tested commands.
at_stdout=$at_job_dir/stdout
at_stder1=$at_job_dir/stder1
at_stderr=$at_job_dir/stderr
# The file containing the code for a test group.
at_test_source=$at_job_dir/test-source
# The file containing dates.
at_times_file=$at_job_dir/times
# Be sure to come back to the top test directory.
cd "$at_suite_dir"
# Clearly separate the test groups when verbose.
$at_first || $at_verbose echo
at_group_normalized=$at_group
eval 'while :; do
case $at_group_normalized in #(
'"$at_format"'*) break;;
esac
at_group_normalized=0$at_group_normalized
done'
# Create a fresh directory for the next test group, and enter.
# If one already exists, the user may have invoked ./run from
# within that directory; we remove the contents, but not the
# directory itself, so that we aren't pulling the rug out from
# under the shell's notion of the current directory.
at_group_dir=$at_suite_dir/$at_group_normalized
at_group_log=$at_group_dir/$as_me.log
if test -d "$at_group_dir"; then
find "$at_group_dir" -type d ! -perm -700 -exec chmod u+rwx {} \;
rm -fr "$at_group_dir"/* "$at_group_dir"/.[!.] "$at_group_dir"/.??*
fi ||
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: test directory for $at_group_normalized could not be cleaned" >&5
$as_echo "$as_me: WARNING: test directory for $at_group_normalized could not be cleaned" >&2;}
# Be tolerant if the above `rm' was not able to remove the directory.
as_dir="$at_group_dir"; as_fn_mkdir_p
echo 0 > "$at_status_file"
# In verbose mode, append to the log file *and* show on
# the standard output; in quiet mode only write to the log.
if test -z "$at_verbose"; then
at_tee_pipe='tee -a "$at_group_log"'
else
at_tee_pipe='cat >> "$at_group_log"'
fi
}
# at_fn_group_banner ORDINAL LINE DESC PAD [BANNER]
# -------------------------------------------------
# Declare the test group ORDINAL, located at LINE with group description DESC,
# and residing under BANNER. Use PAD to align the status column.
at_fn_group_banner ()
{
at_setup_line="$2"
test -n "$5" && at_fn_banner $5
at_desc="$3"
case $1 in
[0-9]) at_desc_line=" $1: ";;
[0-9][0-9]) at_desc_line=" $1: " ;;
*) at_desc_line="$1: " ;;
esac
as_fn_append at_desc_line "$3$4"
$at_quiet $as_echo_n "$at_desc_line"
echo "# -*- compilation -*-" >> "$at_group_log"
}
# at_fn_group_postprocess
# -----------------------
# Perform cleanup after running a test group.
at_fn_group_postprocess ()
{
# Be sure to come back to the suite directory, in particular
# since below we might `rm' the group directory we are in currently.
cd "$at_suite_dir"
if test ! -f "$at_check_line_file"; then
sed "s/^ */$as_me: WARNING: /" <<_ATEOF
A failure happened in a test group before any test could be
run. This means that test suite is improperly designed. Please
report this failure to .
_ATEOF
$as_echo "$at_setup_line" >"$at_check_line_file"
at_status=99
fi
$at_verbose $as_echo_n "$at_group. $at_setup_line: "
$as_echo_n "$at_group. $at_setup_line: " >> "$at_group_log"
case $at_xfail:$at_status in
yes:0)
at_msg="UNEXPECTED PASS"
at_res=xpass
at_errexit=$at_errexit_p
at_color=$at_red
;;
no:0)
at_msg="ok"
at_res=pass
at_errexit=false
at_color=$at_grn
;;
*:77)
at_msg='skipped ('`cat "$at_check_line_file"`')'
at_res=skip
at_errexit=false
at_color=$at_blu
;;
no:* | *:99)
at_msg='FAILED ('`cat "$at_check_line_file"`')'
at_res=fail
at_errexit=$at_errexit_p
at_color=$at_red
;;
yes:*)
at_msg='expected failure ('`cat "$at_check_line_file"`')'
at_res=xfail
at_errexit=false
at_color=$at_lgn
;;
esac
echo "$at_res" > "$at_job_dir/$at_res"
# In parallel mode, output the summary line only afterwards.
if test $at_jobs -ne 1 && test -n "$at_verbose"; then
$as_echo "$at_desc_line $at_color$at_msg$at_std"
else
# Make sure there is a separator even with long titles.
$as_echo " $at_color$at_msg$at_std"
fi
at_log_msg="$at_group. $at_desc ($at_setup_line): $at_msg"
case $at_status in
0|77)
# $at_times_file is only available if the group succeeded.
# We're not including the group log, so the success message
# is written in the global log separately. But we also
# write to the group log in case they're using -d.
if test -f "$at_times_file"; then
at_log_msg="$at_log_msg ("`sed 1d "$at_times_file"`')'
rm -f "$at_times_file"
fi
$as_echo "$at_log_msg" >> "$at_group_log"
$as_echo "$at_log_msg" >&5
# Cleanup the group directory, unless the user wants the files
# or the success was unexpected.
if $at_debug_p || test $at_res = xpass; then
at_fn_create_debugging_script
if test $at_res = xpass && $at_errexit; then
echo stop > "$at_stop_file"
fi
else
if test -d "$at_group_dir"; then
find "$at_group_dir" -type d ! -perm -700 -exec chmod u+rwx \{\} \;
rm -fr "$at_group_dir"
fi
rm -f "$at_test_source"
fi
;;
*)
# Upon failure, include the log into the testsuite's global
# log. The failure message is written in the group log. It
# is later included in the global log.
$as_echo "$at_log_msg" >> "$at_group_log"
# Upon failure, keep the group directory for autopsy, and create
# the debugging script. With -e, do not start any further tests.
at_fn_create_debugging_script
if $at_errexit; then
echo stop > "$at_stop_file"
fi
;;
esac
}
## ------------ ##
## Driver loop. ##
## ------------ ##
if (set -m && set +m && set +b) >/dev/null 2>&1; then
set +b
at_job_control_on='set -m' at_job_control_off='set +m' at_job_group=-
else
at_job_control_on=: at_job_control_off=: at_job_group=
fi
for at_signal in 1 2 15; do
trap 'set +x; set +e
$at_job_control_off
at_signal='"$at_signal"'
echo stop > "$at_stop_file"
trap "" $at_signal
at_pgids=
for at_pgid in `jobs -p 2>/dev/null`; do
at_pgids="$at_pgids $at_job_group$at_pgid"
done
test -z "$at_pgids" || kill -$at_signal $at_pgids 2>/dev/null
wait
if test "$at_jobs" -eq 1 || test -z "$at_verbose"; then
echo >&2
fi
at_signame=`kill -l $at_signal 2>&1 || echo $at_signal`
set x $at_signame
test 0 -gt 2 && at_signame=$at_signal
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: caught signal $at_signame, bailing out" >&5
$as_echo "$as_me: WARNING: caught signal $at_signame, bailing out" >&2;}
as_fn_arith 128 + $at_signal && exit_status=$as_val
as_fn_exit $exit_status' $at_signal
done
rm -f "$at_stop_file"
at_first=:
if test $at_jobs -ne 1 &&
rm -f "$at_job_fifo" &&
test -n "$at_job_group" &&
( mkfifo "$at_job_fifo" && trap 'exit 1' PIPE STOP TSTP ) 2>/dev/null
then
# FIFO job dispatcher.
trap 'at_pids=
for at_pid in `jobs -p`; do
at_pids="$at_pids $at_job_group$at_pid"
done
if test -n "$at_pids"; then
at_sig=TSTP
test "${TMOUT+set}" = set && at_sig=STOP
kill -$at_sig $at_pids 2>/dev/null
fi
kill -STOP $$
test -z "$at_pids" || kill -CONT $at_pids 2>/dev/null' TSTP
echo
# Turn jobs into a list of numbers, starting from 1.
at_joblist=`$as_echo "$at_groups" | sed -n 1,${at_jobs}p`
set X $at_joblist
shift
for at_group in $at_groups; do
$at_job_control_on 2>/dev/null
(
# Start one test group.
$at_job_control_off
if $at_first; then
exec 7>"$at_job_fifo"
else
exec 6<&-
fi
trap 'set +x; set +e
trap "" PIPE
echo stop > "$at_stop_file"
echo >&7
as_fn_exit 141' PIPE
at_fn_group_prepare
if cd "$at_group_dir" &&
at_fn_test $at_group &&
. "$at_test_source"
then :; else
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unable to parse test group: $at_group" >&5
$as_echo "$as_me: WARNING: unable to parse test group: $at_group" >&2;}
at_failed=:
fi
at_fn_group_postprocess
echo >&7
) &
$at_job_control_off
if $at_first; then
at_first=false
exec 6<"$at_job_fifo" 7>"$at_job_fifo"
fi
shift # Consume one token.
if test $# -gt 0; then :; else
read at_token <&6 || break
set x $*
fi
test -f "$at_stop_file" && break
done
exec 7>&-
# Read back the remaining ($at_jobs - 1) tokens.
set X $at_joblist
shift
if test $# -gt 0; then
shift
for at_job
do
read at_token
done <&6
fi
exec 6<&-
wait
else
# Run serially, avoid forks and other potential surprises.
for at_group in $at_groups; do
at_fn_group_prepare
if cd "$at_group_dir" &&
at_fn_test $at_group &&
. "$at_test_source"; then :; else
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unable to parse test group: $at_group" >&5
$as_echo "$as_me: WARNING: unable to parse test group: $at_group" >&2;}
at_failed=:
fi
at_fn_group_postprocess
test -f "$at_stop_file" && break
at_first=false
done
fi
# Wrap up the test suite with summary statistics.
cd "$at_helper_dir"
# Use ?..???? when the list must remain sorted, the faster * otherwise.
at_pass_list=`for f in */pass; do echo $f; done | sed '/\*/d; s,/pass,,'`
at_skip_list=`for f in */skip; do echo $f; done | sed '/\*/d; s,/skip,,'`
at_xfail_list=`for f in */xfail; do echo $f; done | sed '/\*/d; s,/xfail,,'`
at_xpass_list=`for f in ?/xpass ??/xpass ???/xpass ????/xpass; do
echo $f; done | sed '/?/d; s,/xpass,,'`
at_fail_list=`for f in ?/fail ??/fail ???/fail ????/fail; do
echo $f; done | sed '/?/d; s,/fail,,'`
set X $at_pass_list $at_xpass_list $at_xfail_list $at_fail_list $at_skip_list
shift; at_group_count=$#
set X $at_xpass_list; shift; at_xpass_count=$#; at_xpass_list=$*
set X $at_xfail_list; shift; at_xfail_count=$#
set X $at_fail_list; shift; at_fail_count=$#; at_fail_list=$*
set X $at_skip_list; shift; at_skip_count=$#
as_fn_arith $at_group_count - $at_skip_count && at_run_count=$as_val
as_fn_arith $at_xpass_count + $at_fail_count && at_unexpected_count=$as_val
as_fn_arith $at_xfail_count + $at_fail_count && at_total_fail_count=$as_val
# Back to the top directory.
cd "$at_dir"
rm -rf "$at_helper_dir"
# Compute the duration of the suite.
at_stop_date=`date`
at_stop_time=`date +%s 2>/dev/null`
$as_echo "$as_me: ending at: $at_stop_date" >&5
case $at_start_time,$at_stop_time in
[0-9]*,[0-9]*)
as_fn_arith $at_stop_time - $at_start_time && at_duration_s=$as_val
as_fn_arith $at_duration_s / 60 && at_duration_m=$as_val
as_fn_arith $at_duration_m / 60 && at_duration_h=$as_val
as_fn_arith $at_duration_s % 60 && at_duration_s=$as_val
as_fn_arith $at_duration_m % 60 && at_duration_m=$as_val
at_duration="${at_duration_h}h ${at_duration_m}m ${at_duration_s}s"
$as_echo "$as_me: test suite duration: $at_duration" >&5
;;
esac
echo
$as_echo "## ------------- ##
## Test results. ##
## ------------- ##"
echo
{
echo
$as_echo "## ------------- ##
## Test results. ##
## ------------- ##"
echo
} >&5
if test $at_run_count = 1; then
at_result="1 test"
at_were=was
else
at_result="$at_run_count tests"
at_were=were
fi
if $at_errexit_p && test $at_unexpected_count != 0; then
if test $at_xpass_count = 1; then
at_result="$at_result $at_were run, one passed"
else
at_result="$at_result $at_were run, one failed"
fi
at_result="$at_result unexpectedly and inhibited subsequent tests."
at_color=$at_red
else
# Don't you just love exponential explosion of the number of cases?
at_color=$at_red
case $at_xpass_count:$at_fail_count:$at_xfail_count in
# So far, so good.
0:0:0) at_result="$at_result $at_were successful." at_color=$at_grn ;;
0:0:*) at_result="$at_result behaved as expected." at_color=$at_lgn ;;
# Some unexpected failures
0:*:0) at_result="$at_result $at_were run,
$at_fail_count failed unexpectedly." ;;
# Some failures, both expected and unexpected
0:*:1) at_result="$at_result $at_were run,
$at_total_fail_count failed ($at_xfail_count expected failure)." ;;
0:*:*) at_result="$at_result $at_were run,
$at_total_fail_count failed ($at_xfail_count expected failures)." ;;
# No unexpected failures, but some xpasses
*:0:*) at_result="$at_result $at_were run,
$at_xpass_count passed unexpectedly." ;;
# No expected failures, but failures and xpasses
*:1:0) at_result="$at_result $at_were run,
$at_unexpected_count did not behave as expected ($at_fail_count unexpected failure)." ;;
*:*:0) at_result="$at_result $at_were run,
$at_unexpected_count did not behave as expected ($at_fail_count unexpected failures)." ;;
# All of them.
*:*:1) at_result="$at_result $at_were run,
$at_xpass_count passed unexpectedly,
$at_total_fail_count failed ($at_xfail_count expected failure)." ;;
*:*:*) at_result="$at_result $at_were run,
$at_xpass_count passed unexpectedly,
$at_total_fail_count failed ($at_xfail_count expected failures)." ;;
esac
if test $at_skip_count = 0 && test $at_run_count -gt 1; then
at_result="All $at_result"
fi
fi
# Now put skips in the mix.
case $at_skip_count in
0) ;;
1) at_result="$at_result
1 test was skipped." ;;
*) at_result="$at_result
$at_skip_count tests were skipped." ;;
esac
if test $at_unexpected_count = 0; then
echo "$at_color$at_result$at_std"
echo "$at_result" >&5
else
echo "${at_color}ERROR: $at_result$at_std" >&2
echo "ERROR: $at_result" >&5
{
echo
$as_echo "## ------------------------ ##
## Summary of the failures. ##
## ------------------------ ##"
# Summary of failed and skipped tests.
if test $at_fail_count != 0; then
echo "Failed tests:"
$SHELL "$at_myself" $at_fail_list --list
echo
fi
if test $at_skip_count != 0; then
echo "Skipped tests:"
$SHELL "$at_myself" $at_skip_list --list
echo
fi
if test $at_xpass_count != 0; then
echo "Unexpected passes:"
$SHELL "$at_myself" $at_xpass_list --list
echo
fi
if test $at_fail_count != 0; then
$as_echo "## ---------------------- ##
## Detailed failed tests. ##
## ---------------------- ##"
echo
for at_group in $at_fail_list
do
at_group_normalized=$at_group
eval 'while :; do
case $at_group_normalized in #(
'"$at_format"'*) break;;
esac
at_group_normalized=0$at_group_normalized
done'
cat "$at_suite_dir/$at_group_normalized/$as_me.log"
echo
done
echo
fi
if test -n "$at_top_srcdir"; then
sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
## ${at_top_build_prefix}config.log ##
_ASBOX
sed 's/^/| /' ${at_top_build_prefix}config.log
echo
fi
} >&5
sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
## $as_me.log was created. ##
_ASBOX
echo
if $at_debug_p; then
at_msg='per-test log files'
else
at_msg="\`${at_testdir+${at_testdir}/}$as_me.log'"
fi
$as_echo "Please send $at_msg and all information you think might help:
To:
Subject: [GNU PSPP 0.8.5] $as_me: $at_fail_list${at_fail_list:+ failed${at_xpass_list:+, }}$at_xpass_list${at_xpass_list:+ passed unexpectedly}
You may investigate any problem if you feel able to do so, in which
case the test suite provides a good starting point. Its output may
be found below \`${at_testdir+${at_testdir}/}$as_me.dir'.
"
exit 1
fi
exit 0
## ------------- ##
## Actual tests. ##
## ------------- ##
#AT_START_1
at_fn_group_banner 1 'calendar.at:3' \
"epoch" " " 1
at_xfail=no
(
$as_echo "1. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >epoch.sps <<'_ATEOF'
SET MXERR 1000.
SET MXWARN 1000.
SET EPOCH 1900.
DEBUG EVALUATE/YRMODA(0,1,1) = YRMODA(1900,1,1).
DEBUG EVALUATE/YRMODA(1,1,1) = YRMODA(1901,1,1).
DEBUG EVALUATE/YRMODA(12,1,1) = YRMODA(1912,1,1).
DEBUG EVALUATE/YRMODA(70,1,1) = YRMODA(1970,1,1).
DEBUG EVALUATE/YRMODA(87,1,1) = YRMODA(1987,1,1).
DEBUG EVALUATE/YRMODA(99,1,1) = YRMODA(1999,1,1).
DEBUG EVALUATE/YRMODA(100,1,1).
DEBUG EVALUATE/DATE.DMY(1,1,0) = DATE.DMY(1,1,1900).
DEBUG EVALUATE/DATE.DMY(1,1,1) = DATE.DMY(1,1,1901).
DEBUG EVALUATE/DATE.DMY(1,1,12) = DATE.DMY(1,1,1912).
DEBUG EVALUATE/DATE.DMY(1,1,70) = DATE.DMY(1,1,1970).
DEBUG EVALUATE/DATE.DMY(1,1,87) = DATE.DMY(1,1,1987).
DEBUG EVALUATE/DATE.DMY(1,1,99) = DATE.DMY(1,1,1999).
DEBUG EVALUATE/DATE.DMY(1,1,100).
SET EPOCH 1901.
DEBUG EVALUATE/YRMODA(0,1,1) = YRMODA(1900,1,1).
DEBUG EVALUATE/YRMODA(1,1,1) = YRMODA(1901,1,1).
DEBUG EVALUATE/YRMODA(12,1,1) = YRMODA(1912,1,1).
DEBUG EVALUATE/YRMODA(70,1,1) = YRMODA(1970,1,1).
DEBUG EVALUATE/YRMODA(87,1,1) = YRMODA(1987,1,1).
DEBUG EVALUATE/YRMODA(99,1,1) = YRMODA(1999,1,1).
DEBUG EVALUATE/YRMODA(100,1,1).
DEBUG EVALUATE/DATE.DMY(1,1,0) = DATE.DMY(1,1,2000).
DEBUG EVALUATE/DATE.DMY(1,1,1) = DATE.DMY(1,1,1901).
DEBUG EVALUATE/DATE.DMY(1,1,12) = DATE.DMY(1,1,1912).
DEBUG EVALUATE/DATE.DMY(1,1,70) = DATE.DMY(1,1,1970).
DEBUG EVALUATE/DATE.DMY(1,1,87) = DATE.DMY(1,1,1987).
DEBUG EVALUATE/DATE.DMY(1,1,99) = DATE.DMY(1,1,1999).
DEBUG EVALUATE/DATE.DMY(1,1,100).
SET EPOCH 1911.
DEBUG EVALUATE/YRMODA(0,1,1) = YRMODA(1900,1,1).
DEBUG EVALUATE/YRMODA(1,1,1) = YRMODA(1901,1,1).
DEBUG EVALUATE/YRMODA(12,1,1) = YRMODA(1912,1,1).
DEBUG EVALUATE/YRMODA(70,1,1) = YRMODA(1970,1,1).
DEBUG EVALUATE/YRMODA(87,1,1) = YRMODA(1987,1,1).
DEBUG EVALUATE/YRMODA(99,1,1) = YRMODA(1999,1,1).
DEBUG EVALUATE/YRMODA(100,1,1).
DEBUG EVALUATE/DATE.DMY(1,1,0) = DATE.DMY(1,1,2000).
DEBUG EVALUATE/DATE.DMY(1,1,1) = DATE.DMY(1,1,2001).
DEBUG EVALUATE/DATE.DMY(1,1,12) = DATE.DMY(1,1,1912).
DEBUG EVALUATE/DATE.DMY(1,1,70) = DATE.DMY(1,1,1970).
DEBUG EVALUATE/DATE.DMY(1,1,87) = DATE.DMY(1,1,1987).
DEBUG EVALUATE/DATE.DMY(1,1,99) = DATE.DMY(1,1,1999).
DEBUG EVALUATE/DATE.DMY(1,1,100).
SET EPOCH 1912.
DEBUG EVALUATE/YRMODA(0,1,1) = YRMODA(1900,1,1).
DEBUG EVALUATE/YRMODA(1,1,1) = YRMODA(1901,1,1).
DEBUG EVALUATE/YRMODA(12,1,1) = YRMODA(1912,1,1).
DEBUG EVALUATE/YRMODA(70,1,1) = YRMODA(1970,1,1).
DEBUG EVALUATE/YRMODA(87,1,1) = YRMODA(1987,1,1).
DEBUG EVALUATE/YRMODA(99,1,1) = YRMODA(1999,1,1).
DEBUG EVALUATE/YRMODA(100,1,1).
DEBUG EVALUATE/DATE.DMY(1,1,0) = DATE.DMY(1,1,2000).
DEBUG EVALUATE/DATE.DMY(1,1,1) = DATE.DMY(1,1,2001).
DEBUG EVALUATE/DATE.DMY(1,1,12) = DATE.DMY(1,1,1912).
DEBUG EVALUATE/DATE.DMY(1,1,70) = DATE.DMY(1,1,1970).
DEBUG EVALUATE/DATE.DMY(1,1,87) = DATE.DMY(1,1,1987).
DEBUG EVALUATE/DATE.DMY(1,1,99) = DATE.DMY(1,1,1999).
DEBUG EVALUATE/DATE.DMY(1,1,100).
SET EPOCH 2012.
DEBUG EVALUATE/YRMODA(0,1,1) = YRMODA(1900,1,1).
DEBUG EVALUATE/YRMODA(1,1,1) = YRMODA(1901,1,1).
DEBUG EVALUATE/YRMODA(12,1,1) = YRMODA(1912,1,1).
DEBUG EVALUATE/YRMODA(70,1,1) = YRMODA(1970,1,1).
DEBUG EVALUATE/YRMODA(87,1,1) = YRMODA(1987,1,1).
DEBUG EVALUATE/YRMODA(99,1,1) = YRMODA(1999,1,1).
DEBUG EVALUATE/YRMODA(100,1,1).
DEBUG EVALUATE/DATE.DMY(1,1,0) = DATE.DMY(1,1,2100).
DEBUG EVALUATE/DATE.DMY(1,1,1) = DATE.DMY(1,1,2101).
DEBUG EVALUATE/DATE.DMY(1,1,12) = DATE.DMY(1,1,2012).
DEBUG EVALUATE/DATE.DMY(1,1,70) = DATE.DMY(1,1,2070).
DEBUG EVALUATE/DATE.DMY(1,1,87) = DATE.DMY(1,1,2087).
DEBUG EVALUATE/DATE.DMY(1,1,99) = DATE.DMY(1,1,2099).
DEBUG EVALUATE/DATE.DMY(1,1,100).
_ATEOF
{ set +x
$as_echo "$at_srcdir/calendar.at:89: pspp --testing-mode --error-file=- --no-output epoch.sps"
at_fn_check_prepare_trace "calendar.at:89"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output epoch.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "true
true
true
true
true
true
epoch.sps:11: error: DEBUG EVALUATE: Date 0100-1-1 is before the earliest acceptable date of 1582-10-15.
sysmis
true
true
true
true
true
true
epoch.sps:18: error: DEBUG EVALUATE: Date 0100-1-1 is before the earliest acceptable date of 1582-10-15.
sysmis
true
true
true
true
true
true
epoch.sps:27: error: DEBUG EVALUATE: Date 0100-1-1 is before the earliest acceptable date of 1582-10-15.
sysmis
true
true
true
true
true
true
epoch.sps:34: error: DEBUG EVALUATE: Date 0100-1-1 is before the earliest acceptable date of 1582-10-15.
sysmis
true
true
true
true
true
true
epoch.sps:43: error: DEBUG EVALUATE: Date 0100-1-1 is before the earliest acceptable date of 1582-10-15.
sysmis
true
true
true
true
true
true
epoch.sps:50: error: DEBUG EVALUATE: Date 0100-1-1 is before the earliest acceptable date of 1582-10-15.
sysmis
true
true
true
true
true
true
epoch.sps:59: error: DEBUG EVALUATE: Date 0100-1-1 is before the earliest acceptable date of 1582-10-15.
sysmis
true
true
true
true
true
true
epoch.sps:66: error: DEBUG EVALUATE: Date 0100-1-1 is before the earliest acceptable date of 1582-10-15.
sysmis
true
true
true
true
true
true
epoch.sps:75: error: DEBUG EVALUATE: Date 0100-1-1 is before the earliest acceptable date of 1582-10-15.
sysmis
true
true
true
true
true
true
epoch.sps:82: error: DEBUG EVALUATE: Date 0100-1-1 is before the earliest acceptable date of 1582-10-15.
sysmis
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/calendar.at:89"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1
#AT_START_2
at_fn_group_banner 2 'data-in.at:279' \
"numeric input formats" " " 2
at_xfail=no
(
$as_echo "2. $at_setup_line: testing $at_desc ..."
$at_traceon
data_in_prng
{ set +x
$as_echo "$at_srcdir/data-in.at:282: \$PERL test-my-rand.pl"
at_fn_check_prepare_dynamic "$PERL test-my-rand.pl" "data-in.at:282"
( $at_check_trace; $PERL test-my-rand.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:282"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >num-in.pl <<'_ATEOF'
#! /usr/bin/perl
use POSIX;
use strict;
use warnings;
do 'my-rand.pl';
for my $number (0, 1, .5, .015625, 123) {
my ($base_exp) = floor ($number ? log10 ($number) : 0);
for my $offset (-3...3) {
my ($exponent) = $base_exp + $offset;
my ($fraction) = $number / 10**$offset;
permute_zeros ($fraction, $exponent);
}
}
sub permute_zeros {
my ($fraction, $exponent) = @_;
my ($frac_rep) = sprintf ("%f", $fraction);
my ($leading_zeros) = length (($frac_rep =~ /^(0*)/)[0]);
my ($trailing_zeros) = length (($frac_rep =~ /(\.?0*)$/)[0]);
for my $i (0...$leading_zeros) {
for my $j (0...$trailing_zeros) {
my ($trimmed) = substr ($frac_rep, $i,
length ($frac_rep) - $i - $j);
next if $trimmed eq '.' || $trimmed eq '';
permute_commas ($trimmed, $exponent);
}
}
}
sub permute_commas {
my ($frac_rep, $exponent) = @_;
permute_dot_comma ($frac_rep, $exponent);
my ($pos) = int (my_rand (length ($frac_rep) + 1));
$frac_rep = substr ($frac_rep, 0, $pos) . "," . substr ($frac_rep, $pos);
permute_dot_comma ($frac_rep, $exponent);
}
sub permute_dot_comma {
my ($frac_rep, $exponent) = @_;
permute_exponent_syntax ($frac_rep, $exponent);
if ($frac_rep =~ /[,.]/) {
$frac_rep =~ tr/.,/,./;
permute_exponent_syntax ($frac_rep, $exponent);
}
}
sub permute_exponent_syntax {
my ($frac_rep, $exponent) = @_;
my (@exp_reps);
if ($exponent == 0) {
@exp_reps = pick ('', 'e0', 'e-0', 'e+0', '-0', '+0');
} elsif ($exponent > 0) {
@exp_reps = pick ("e$exponent", "e+$exponent", "+$exponent");
} else {
my ($abs_exp) = -$exponent;
@exp_reps = pick ("e-$abs_exp", , "e-$abs_exp", "-$abs_exp");
}
permute_sign_and_affix ($frac_rep, $_) foreach @exp_reps;
}
sub permute_sign_and_affix {
my ($frac_rep, $exp_rep) = @_;
for my $prefix (pick ('', '$'),
pick ('-', '-$', '$-', '$-$'),
pick ('+', '+$', '$+', '$+$')) {
for my $suffix ('', '%') {
permute_spaces ("$prefix$frac_rep$exp_rep$suffix");
}
}
}
sub permute_spaces {
my ($s) = @_;
$s =~ s/([-+\$e%])/ $1 /g;
my (@fields) = split (' ', $s);
print join ('', @fields), "\n";
if ($#fields > 0) {
my ($pos) = int (my_rand ($#fields)) + 1;
print join ('', @fields[0...$pos - 1]);
print " ";
print join ('', @fields[$pos...$#fields]);
print "\n";
}
}
sub pick {
return $_[int (my_rand ($#_ + 1))];
}
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-in.at:380: \$PERL num-in.pl > num-in.data"
at_fn_check_prepare_dynamic "$PERL num-in.pl > num-in.data" "data-in.at:380"
( $at_check_trace; $PERL num-in.pl > num-in.data
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:380"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >num-in.sps <<'_ATEOF'
SET ERRORS=NONE.
SET MXERRS=10000000.
SET MXWARNS=10000000.
DATA LIST FILE='num-in.data' NOTABLE/
f 1-40 (f)
comma 1-40 (comma)
dot 1-40 (dot)
dollar 1-40 (dollar)
pct 1-40 (pct)
e 1-40 (e).
PRINT OUTFILE='num-in.out'/all (6f10.4).
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-in.at:395: pspp -O format=csv num-in.sps"
at_fn_check_prepare_trace "data-in.at:395"
( $at_check_trace; pspp -O format=csv num-in.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:395"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:396: gzip -cd < \$top_srcdir/tests/data/num-in.expected.gz > expout"
at_fn_check_prepare_dynamic "gzip -cd < $top_srcdir/tests/data/num-in.expected.gz > expout" "data-in.at:396"
( $at_check_trace; gzip -cd < $top_srcdir/tests/data/num-in.expected.gz > expout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:396"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:397: cat num-in.out"
at_fn_check_prepare_trace "data-in.at:397"
( $at_check_trace; cat num-in.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:397"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_2
#AT_START_3
at_fn_group_banner 3 'data-in.at:402' \
"reading big numbers" " " 2
at_xfail=no
(
$as_echo "3. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >bignum.txt <<'_ATEOF'
0
0.1
0.5
0.8
0.9
0.999
1
2
3
4
5
12
123
1234
12345
123456
1234567
12345678
123456789
1234567890
19999999999
199999999999
1234567890123
19999999999999
199999999999999
1234567890123456
19999999999999999
123456789012345678
1999999999999999999
12345678901234567890
199999999999999999999
1234567890123456789012
19999999999999999999999
123456789012345678901234
1999999999999999999999999
12345678901234567890123456
199999999999999999999999999
1234567890123456789012345678
19999999999999999999999999999
123456789012345678901234567890
1999999999999999999999999999999
12345678901234567890123456789012
199999999999999999999999999999999
1234567890123456789012345678901234
19999999999999999999999999999999999
123456789012345678901234567890123456
1999999999999999999999999999999999999
12345678901234567890123456789012345678
199999999999999999999999999999999999999
1234567890123456789012345678901234567890
1999999999999999999999999999999999999999
1e40
1.1e40
1.5e40
1e41
1e50
1e100
1e150
1e200
1e250
1e300
1.79641e308
wizzah
_ATEOF
cat >bignum.sps <<'_ATEOF'
title 'Test use of big numbers'.
*** Do the portable output.
data list file='bignum.txt'/BIGNUM 1-40.
list.
*** Do the nonportable output for fun.
descriptives BIGNUM.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-in.at:479: pspp -o pspp.csv bignum.sps"
at_fn_check_prepare_trace "data-in.at:479"
( $at_check_trace; pspp -o pspp.csv bignum.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:479"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_3
#AT_START_4
at_fn_group_banner 4 'data-in.at:482' \
"DATE input format" " " 2
at_xfail=no
(
$as_echo "4. $at_setup_line: testing $at_desc ..."
$at_traceon
date_in
{ set +x
$as_echo "$at_srcdir/data-in.at:485: \$PERL test-my-rand.pl"
at_fn_check_prepare_dynamic "$PERL test-my-rand.pl" "data-in.at:485"
( $at_check_trace; $PERL test-my-rand.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:485"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:486: \$PERL date-in.pl date d-m-y"
at_fn_check_prepare_dynamic "$PERL date-in.pl date d-m-y" "data-in.at:486"
( $at_check_trace; $PERL date-in.pl date d-m-y
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:486"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:487: test -s date.sps"
at_fn_check_prepare_trace "data-in.at:487"
( $at_check_trace; test -s date.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:487"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:488: test -s date.in"
at_fn_check_prepare_trace "data-in.at:488"
( $at_check_trace; test -s date.in
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:488"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:489: pspp -O format=csv date.sps"
at_fn_check_prepare_trace "data-in.at:489"
( $at_check_trace; pspp -O format=csv date.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:489"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:490: cat date.out"
at_fn_check_prepare_trace "data-in.at:490"
( $at_check_trace; cat date.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:490"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_4
#AT_START_5
at_fn_group_banner 5 'data-in.at:694' \
"ADATE input format" " " 2
at_xfail=no
(
$as_echo "5. $at_setup_line: testing $at_desc ..."
$at_traceon
date_in
{ set +x
$as_echo "$at_srcdir/data-in.at:697: \$PERL test-my-rand.pl"
at_fn_check_prepare_dynamic "$PERL test-my-rand.pl" "data-in.at:697"
( $at_check_trace; $PERL test-my-rand.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:697"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:698: \$PERL date-in.pl adate m-d-y"
at_fn_check_prepare_dynamic "$PERL date-in.pl adate m-d-y" "data-in.at:698"
( $at_check_trace; $PERL date-in.pl adate m-d-y
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:698"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:699: test -s adate.sps"
at_fn_check_prepare_trace "data-in.at:699"
( $at_check_trace; test -s adate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:699"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:700: test -s adate.in"
at_fn_check_prepare_trace "data-in.at:700"
( $at_check_trace; test -s adate.in
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:700"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:701: pspp -O format=csv adate.sps"
at_fn_check_prepare_trace "data-in.at:701"
( $at_check_trace; pspp -O format=csv adate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:701"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:702: cat adate.out"
at_fn_check_prepare_trace "data-in.at:702"
( $at_check_trace; cat adate.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:702"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_5
#AT_START_6
at_fn_group_banner 6 'data-in.at:906' \
"EDATE input format" " " 2
at_xfail=no
(
$as_echo "6. $at_setup_line: testing $at_desc ..."
$at_traceon
date_in
{ set +x
$as_echo "$at_srcdir/data-in.at:909: \$PERL test-my-rand.pl"
at_fn_check_prepare_dynamic "$PERL test-my-rand.pl" "data-in.at:909"
( $at_check_trace; $PERL test-my-rand.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:909"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:910: \$PERL date-in.pl edate d-m-y"
at_fn_check_prepare_dynamic "$PERL date-in.pl edate d-m-y" "data-in.at:910"
( $at_check_trace; $PERL date-in.pl edate d-m-y
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:910"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:911: test -s edate.sps"
at_fn_check_prepare_trace "data-in.at:911"
( $at_check_trace; test -s edate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:911"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:912: test -s edate.in"
at_fn_check_prepare_trace "data-in.at:912"
( $at_check_trace; test -s edate.in
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:912"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:913: pspp -O format=csv edate.sps"
at_fn_check_prepare_trace "data-in.at:913"
( $at_check_trace; pspp -O format=csv edate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:913"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:914: cat edate.out"
at_fn_check_prepare_trace "data-in.at:914"
( $at_check_trace; cat edate.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:914"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_6
#AT_START_7
at_fn_group_banner 7 'data-in.at:1118' \
"JDATE input format" " " 2
at_xfail=no
(
$as_echo "7. $at_setup_line: testing $at_desc ..."
$at_traceon
date_in
{ set +x
$as_echo "$at_srcdir/data-in.at:1121: \$PERL test-my-rand.pl"
at_fn_check_prepare_dynamic "$PERL test-my-rand.pl" "data-in.at:1121"
( $at_check_trace; $PERL test-my-rand.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1121"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1122: \$PERL date-in.pl jdate j"
at_fn_check_prepare_dynamic "$PERL date-in.pl jdate j" "data-in.at:1122"
( $at_check_trace; $PERL date-in.pl jdate j
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1122"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1123: test -s jdate.sps"
at_fn_check_prepare_trace "data-in.at:1123"
( $at_check_trace; test -s jdate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1123"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1124: test -s jdate.in"
at_fn_check_prepare_trace "data-in.at:1124"
( $at_check_trace; test -s jdate.in
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1124"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1125: pspp -O format=csv jdate.sps"
at_fn_check_prepare_trace "data-in.at:1125"
( $at_check_trace; pspp -O format=csv jdate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1125"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1126: cat jdate.out"
at_fn_check_prepare_trace "data-in.at:1126"
( $at_check_trace; cat jdate.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1126"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_7
#AT_START_8
at_fn_group_banner 8 'data-in.at:1330' \
"SDATE input format" " " 2
at_xfail=no
(
$as_echo "8. $at_setup_line: testing $at_desc ..."
$at_traceon
date_in
{ set +x
$as_echo "$at_srcdir/data-in.at:1333: \$PERL test-my-rand.pl"
at_fn_check_prepare_dynamic "$PERL test-my-rand.pl" "data-in.at:1333"
( $at_check_trace; $PERL test-my-rand.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1333"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1334: \$PERL date-in.pl sdate y-m-d"
at_fn_check_prepare_dynamic "$PERL date-in.pl sdate y-m-d" "data-in.at:1334"
( $at_check_trace; $PERL date-in.pl sdate y-m-d
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1334"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1335: test -s sdate.sps"
at_fn_check_prepare_trace "data-in.at:1335"
( $at_check_trace; test -s sdate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1335"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1336: test -s sdate.in"
at_fn_check_prepare_trace "data-in.at:1336"
( $at_check_trace; test -s sdate.in
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1336"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1337: pspp -O format=csv sdate.sps"
at_fn_check_prepare_trace "data-in.at:1337"
( $at_check_trace; pspp -O format=csv sdate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1337"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1338: cat sdate.out"
at_fn_check_prepare_trace "data-in.at:1338"
( $at_check_trace; cat sdate.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
3083529600.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
4221590400.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
5859561600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
7472649600.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
8092742400.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10114329600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
10945929600.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11327644800.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11376633600.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
11391408000.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
12920169600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
13044585600.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
14392339200.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
16149628800.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1338"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_8
#AT_START_9
at_fn_group_banner 9 'data-in.at:1542' \
"QYR input format" " " 2
at_xfail=no
(
$as_echo "9. $at_setup_line: testing $at_desc ..."
$at_traceon
date_in
{ set +x
$as_echo "$at_srcdir/data-in.at:1545: \$PERL test-my-rand.pl"
at_fn_check_prepare_dynamic "$PERL test-my-rand.pl" "data-in.at:1545"
( $at_check_trace; $PERL test-my-rand.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1545"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1546: \$PERL date-in.pl qyr qQy"
at_fn_check_prepare_dynamic "$PERL date-in.pl qyr qQy" "data-in.at:1546"
( $at_check_trace; $PERL date-in.pl qyr qQy
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1546"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1547: test -s qyr.sps"
at_fn_check_prepare_trace "data-in.at:1547"
( $at_check_trace; test -s qyr.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1547"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1548: test -s qyr.in"
at_fn_check_prepare_trace "data-in.at:1548"
( $at_check_trace; test -s qyr.in
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1548"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1549: pspp -O format=csv qyr.sps"
at_fn_check_prepare_trace "data-in.at:1549"
( $at_check_trace; pspp -O format=csv qyr.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1549"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1550: cat qyr.out"
at_fn_check_prepare_trace "data-in.at:1550"
( $at_check_trace; cat qyr.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 2065910400.00
2065910400.00
2065910400.00
2065910400.00
2065910400.00
2065910400.00
2065910400.00
2065910400.00
2065910400.00
2065910400.00
3075753600.00
3075753600.00
3075753600.00
3075753600.00
3075753600.00
3075753600.00
3075753600.00
3075753600.00
3075753600.00
3075753600.00
4219603200.00
4219603200.00
4219603200.00
4219603200.00
4219603200.00
4219603200.00
4219603200.00
4219603200.00
4219603200.00
4219603200.00
5852736000.00
5852736000.00
5852736000.00
5852736000.00
5852736000.00
5852736000.00
5852736000.00
5852736000.00
5852736000.00
5852736000.00
7469884800.00
7469884800.00
7469884800.00
7469884800.00
7469884800.00
7469884800.00
7469884800.00
7469884800.00
7469884800.00
7469884800.00
8085398400.00
8085398400.00
8085398400.00
8085398400.00
8085398400.00
8085398400.00
8085398400.00
8085398400.00
8085398400.00
8085398400.00
10112774400.00
10112774400.00
10112774400.00
10112774400.00
10112774400.00
10112774400.00
10112774400.00
10112774400.00
10112774400.00
10112774400.00
10941177600.00
10941177600.00
10941177600.00
10941177600.00
10941177600.00
10941177600.00
10941177600.00
10941177600.00
10941177600.00
10941177600.00
11319868800.00
11319868800.00
11319868800.00
11319868800.00
11319868800.00
11319868800.00
11319868800.00
11319868800.00
11319868800.00
11319868800.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
12913603200.00
12913603200.00
12913603200.00
12913603200.00
12913603200.00
12913603200.00
12913603200.00
12913603200.00
12913603200.00
12913603200.00
13039833600.00
13039833600.00
13039833600.00
13039833600.00
13039833600.00
13039833600.00
13039833600.00
13039833600.00
13039833600.00
13039833600.00
11319868800.00
11319868800.00
11319868800.00
11319868800.00
11319868800.00
11319868800.00
11319868800.00
11319868800.00
11319868800.00
11319868800.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
12913603200.00
12913603200.00
12913603200.00
12913603200.00
12913603200.00
12913603200.00
12913603200.00
12913603200.00
12913603200.00
12913603200.00
13039833600.00
13039833600.00
13039833600.00
13039833600.00
13039833600.00
13039833600.00
13039833600.00
13039833600.00
13039833600.00
13039833600.00
14388883200.00
14388883200.00
14388883200.00
14388883200.00
14388883200.00
14388883200.00
14388883200.00
14388883200.00
14388883200.00
14388883200.00
16148160000.00
16148160000.00
16148160000.00
16148160000.00
16148160000.00
16148160000.00
16148160000.00
16148160000.00
16148160000.00
16148160000.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1550"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_9
#AT_START_10
at_fn_group_banner 10 'data-in.at:1754' \
"MOYR input format" " " 2
at_xfail=no
(
$as_echo "10. $at_setup_line: testing $at_desc ..."
$at_traceon
date_in
{ set +x
$as_echo "$at_srcdir/data-in.at:1757: \$PERL test-my-rand.pl"
at_fn_check_prepare_dynamic "$PERL test-my-rand.pl" "data-in.at:1757"
( $at_check_trace; $PERL test-my-rand.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1757"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1758: \$PERL date-in.pl moyr m-y"
at_fn_check_prepare_dynamic "$PERL date-in.pl moyr m-y" "data-in.at:1758"
( $at_check_trace; $PERL date-in.pl moyr m-y
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1758"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1759: test -s moyr.sps"
at_fn_check_prepare_trace "data-in.at:1759"
( $at_check_trace; test -s moyr.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1759"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1760: test -s moyr.in"
at_fn_check_prepare_trace "data-in.at:1760"
( $at_check_trace; test -s moyr.in
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1760"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1761: pspp -O format=csv moyr.sps"
at_fn_check_prepare_trace "data-in.at:1761"
( $at_check_trace; pspp -O format=csv moyr.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1761"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1762: cat moyr.out"
at_fn_check_prepare_trace "data-in.at:1762"
( $at_check_trace; cat moyr.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 2071180800.00
2071180800.00
2071180800.00
2071180800.00
2071180800.00
2071180800.00
2071180800.00
2071180800.00
2071180800.00
2071180800.00
3081024000.00
3081024000.00
3081024000.00
3081024000.00
3081024000.00
3081024000.00
3081024000.00
3081024000.00
3081024000.00
3081024000.00
4219603200.00
4219603200.00
4219603200.00
4219603200.00
4219603200.00
4219603200.00
4219603200.00
4219603200.00
4219603200.00
4219603200.00
5858006400.00
5858006400.00
5858006400.00
5858006400.00
5858006400.00
5858006400.00
5858006400.00
5858006400.00
5858006400.00
5858006400.00
7472563200.00
7472563200.00
7472563200.00
7472563200.00
7472563200.00
7472563200.00
7472563200.00
7472563200.00
7472563200.00
7472563200.00
8090496000.00
8090496000.00
8090496000.00
8090496000.00
8090496000.00
8090496000.00
8090496000.00
8090496000.00
8090496000.00
8090496000.00
10112774400.00
10112774400.00
10112774400.00
10112774400.00
10112774400.00
10112774400.00
10112774400.00
10112774400.00
10112774400.00
10112774400.00
10943856000.00
10943856000.00
10943856000.00
10943856000.00
10943856000.00
10943856000.00
10943856000.00
10943856000.00
10943856000.00
10943856000.00
11325225600.00
11325225600.00
11325225600.00
11325225600.00
11325225600.00
11325225600.00
11325225600.00
11325225600.00
11325225600.00
11325225600.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
12918787200.00
12918787200.00
12918787200.00
12918787200.00
12918787200.00
12918787200.00
12918787200.00
12918787200.00
12918787200.00
12918787200.00
13042512000.00
13042512000.00
13042512000.00
13042512000.00
13042512000.00
13042512000.00
13042512000.00
13042512000.00
13042512000.00
13042512000.00
11325225600.00
11325225600.00
11325225600.00
11325225600.00
11325225600.00
11325225600.00
11325225600.00
11325225600.00
11325225600.00
11325225600.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11375078400.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
12918787200.00
12918787200.00
12918787200.00
12918787200.00
12918787200.00
12918787200.00
12918787200.00
12918787200.00
12918787200.00
12918787200.00
13042512000.00
13042512000.00
13042512000.00
13042512000.00
13042512000.00
13042512000.00
13042512000.00
13042512000.00
13042512000.00
13042512000.00
14391561600.00
14391561600.00
14391561600.00
14391561600.00
14391561600.00
14391561600.00
14391561600.00
14391561600.00
14391561600.00
14391561600.00
16148160000.00
16148160000.00
16148160000.00
16148160000.00
16148160000.00
16148160000.00
16148160000.00
16148160000.00
16148160000.00
16148160000.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1762"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_10
#AT_START_11
at_fn_group_banner 11 'data-in.at:1966' \
"WKYR input format" " " 2
at_xfail=no
(
$as_echo "11. $at_setup_line: testing $at_desc ..."
$at_traceon
date_in
{ set +x
$as_echo "$at_srcdir/data-in.at:1969: \$PERL test-my-rand.pl"
at_fn_check_prepare_dynamic "$PERL test-my-rand.pl" "data-in.at:1969"
( $at_check_trace; $PERL test-my-rand.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1969"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1970: \$PERL date-in.pl wkyr wWy"
at_fn_check_prepare_dynamic "$PERL date-in.pl wkyr wWy" "data-in.at:1970"
( $at_check_trace; $PERL date-in.pl wkyr wWy
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1970"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1971: test -s wkyr.sps"
at_fn_check_prepare_trace "data-in.at:1971"
( $at_check_trace; test -s wkyr.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1971"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1972: test -s wkyr.in"
at_fn_check_prepare_trace "data-in.at:1972"
( $at_check_trace; test -s wkyr.in
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1972"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1973: pspp -O format=csv wkyr.sps"
at_fn_check_prepare_trace "data-in.at:1973"
( $at_check_trace; pspp -O format=csv wkyr.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1973"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:1974: cat wkyr.out"
at_fn_check_prepare_trace "data-in.at:1974"
( $at_check_trace; cat wkyr.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
3083011200.00
3083011200.00
3083011200.00
3083011200.00
3083011200.00
3083011200.00
3083011200.00
3083011200.00
3083011200.00
3083011200.00
4221417600.00
4221417600.00
4221417600.00
4221417600.00
4221417600.00
4221417600.00
4221417600.00
4221417600.00
4221417600.00
4221417600.00
5859388800.00
5859388800.00
5859388800.00
5859388800.00
5859388800.00
5859388800.00
5859388800.00
5859388800.00
5859388800.00
5859388800.00
7472390400.00
7472390400.00
7472390400.00
7472390400.00
7472390400.00
7472390400.00
7472390400.00
7472390400.00
7472390400.00
7472390400.00
8092656000.00
8092656000.00
8092656000.00
8092656000.00
8092656000.00
8092656000.00
8092656000.00
8092656000.00
8092656000.00
8092656000.00
10114070400.00
10114070400.00
10114070400.00
10114070400.00
10114070400.00
10114070400.00
10114070400.00
10114070400.00
10114070400.00
10114070400.00
10945497600.00
10945497600.00
10945497600.00
10945497600.00
10945497600.00
10945497600.00
10945497600.00
10945497600.00
10945497600.00
10945497600.00
11327212800.00
11327212800.00
11327212800.00
11327212800.00
11327212800.00
11327212800.00
11327212800.00
11327212800.00
11327212800.00
11327212800.00
11376374400.00
11376374400.00
11376374400.00
11376374400.00
11376374400.00
11376374400.00
11376374400.00
11376374400.00
11376374400.00
11376374400.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
12919651200.00
12919651200.00
12919651200.00
12919651200.00
12919651200.00
12919651200.00
12919651200.00
12919651200.00
12919651200.00
12919651200.00
13044067200.00
13044067200.00
13044067200.00
13044067200.00
13044067200.00
13044067200.00
13044067200.00
13044067200.00
13044067200.00
13044067200.00
11327212800.00
11327212800.00
11327212800.00
11327212800.00
11327212800.00
11327212800.00
11327212800.00
11327212800.00
11327212800.00
11327212800.00
11376374400.00
11376374400.00
11376374400.00
11376374400.00
11376374400.00
11376374400.00
11376374400.00
11376374400.00
11376374400.00
11376374400.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
11390889600.00
12919651200.00
12919651200.00
12919651200.00
12919651200.00
12919651200.00
12919651200.00
12919651200.00
12919651200.00
12919651200.00
12919651200.00
13044067200.00
13044067200.00
13044067200.00
13044067200.00
13044067200.00
13044067200.00
13044067200.00
13044067200.00
13044067200.00
13044067200.00
14391907200.00
14391907200.00
14391907200.00
14391907200.00
14391907200.00
14391907200.00
14391907200.00
14391907200.00
14391907200.00
14391907200.00
16149456000.00
16149456000.00
16149456000.00
16149456000.00
16149456000.00
16149456000.00
16149456000.00
16149456000.00
16149456000.00
16149456000.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:1974"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_11
#AT_START_12
at_fn_group_banner 12 'data-in.at:2178' \
"DATETIME input format" " " 2
at_xfail=no
(
$as_echo "12. $at_setup_line: testing $at_desc ..."
$at_traceon
date_in
{ set +x
$as_echo "$at_srcdir/data-in.at:2181: \$PERL test-my-rand.pl"
at_fn_check_prepare_dynamic "$PERL test-my-rand.pl" "data-in.at:2181"
( $at_check_trace; $PERL test-my-rand.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:2181"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:2182: \$PERL date-in.pl datetime \"d-m-y +H:M\" \"d-m-y +H:M:S\""
at_fn_check_prepare_dynamic "$PERL date-in.pl datetime \"d-m-y +H:M\" \"d-m-y +H:M:S\"" "data-in.at:2182"
( $at_check_trace; $PERL date-in.pl datetime "d-m-y +H:M" "d-m-y +H:M:S"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:2182"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:2183: test -s datetime.sps"
at_fn_check_prepare_trace "data-in.at:2183"
( $at_check_trace; test -s datetime.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:2183"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:2184: test -s datetime.in"
at_fn_check_prepare_trace "data-in.at:2184"
( $at_check_trace; test -s datetime.in
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:2184"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:2185: pspp -O format=csv datetime.sps"
at_fn_check_prepare_trace "data-in.at:2185"
( $at_check_trace; pspp -O format=csv datetime.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:2185"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:2186: cat datetime.out"
at_fn_check_prepare_trace "data-in.at:2186"
( $at_check_trace; cat datetime.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
3083512200.00
3083512200.00
3083547000.00
3083547000.00
3083547000.00
3083512200.00
3083547000.00
3083547000.00
3083512200.00
3083512200.00
4221545340.00
4221635460.00
4221545340.00
4221545340.00
4221635460.00
4221635460.00
4221545340.00
4221635460.00
4221545340.00
4221635460.00
5859607620.00
5859607620.00
5859515580.00
5859515580.00
5859607620.00
5859607620.00
5859607620.00
5859607620.00
5859515580.00
5859607620.00
7472644440.00
7472654760.00
7472654760.00
7472654760.00
7472654760.00
7472654760.00
7472654760.00
7472654760.00
7472644440.00
7472654760.00
8092817880.00
8092666920.00
8092817880.00
8092666920.00
8092817880.00
8092817880.00
8092666920.00
8092817880.00
8092666920.00
8092817880.00
10114302240.00
10114356960.00
10114302240.00
10114302240.00
10114302240.00
10114356960.00
10114302240.00
10114302240.00
10114302240.00
10114356960.00
10945873020.00
10945986180.00
10945986180.00
10945986180.00
10945873020.00
10945986180.00
10945986180.00
10945873020.00
10945986180.00
10945873020.00
11327628900.00
11327660700.00
11327660700.00
11327660700.00
11327660700.00
11327628900.00
11327628900.00
11327660700.00
11327660700.00
11327660700.00
11376658140.00
11376609060.00
11376658140.00
11376658140.00
11376609060.00
11376658140.00
11376609060.00
11376658140.00
11376658140.00
11376658140.00
11391418620.00
11391418620.00
11391397380.00
11391397380.00
11391418620.00
11391418620.00
11391397380.00
11391418620.00
11391418620.00
11391418620.00
12920229900.00
12920229900.00
12920229900.00
12920229900.00
12920229900.00
12920109300.00
12920229900.00
12920109300.00
12920229900.00
12920229900.00
13044508200.00
13044663000.00
13044508200.00
13044663000.00
13044508200.00
13044508200.00
13044663000.00
13044663000.00
13044663000.00
13044663000.00
11327660700.00
11327628900.00
11327628900.00
11327660700.00
11327628900.00
11327628900.00
11327628900.00
11327628900.00
11327628900.00
11327628900.00
11376609060.00
11376658140.00
11376658140.00
11376609060.00
11376658140.00
11376609060.00
11376658140.00
11376609060.00
11376658140.00
11376658140.00
11391397380.00
11391397380.00
11391418620.00
11391397380.00
11391418620.00
11391418620.00
11391418620.00
11391418620.00
11391418620.00
11391397380.00
12920229900.00
12920229900.00
12920229900.00
12920229900.00
12920229900.00
12920229900.00
12920109300.00
12920229900.00
12920229900.00
12920229900.00
13044508200.00
13044663000.00
13044508200.00
13044508200.00
13044508200.00
13044663000.00
13044663000.00
13044663000.00
13044508200.00
13044508200.00
14392420200.00
14392258200.00
14392420200.00
14392420200.00
14392420200.00
14392420200.00
14392258200.00
14392420200.00
14392420200.00
14392420200.00
16149635760.00
16149635760.00
16149635760.00
16149635760.00
16149635760.00
16149635760.00
16149635760.00
16149635760.00
16149621840.00
16149635760.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
2071958400.00
3083512162.00
3083512162.00
3083512162.00
3083547038.00
3083512162.00
3083512162.00
3083547038.00
3083512162.00
3083547038.00
3083547038.00
4221635495.00
4221545305.00
4221635495.00
4221635495.00
4221635495.00
4221545305.00
4221635495.00
4221635495.00
4221635495.00
4221635495.00
5859607673.00
5859515527.00
5859607673.00
5859607673.00
5859607673.00
5859607673.00
5859515527.00
5859607673.00
5859607673.00
5859607673.00
7472654760.00
7472644440.00
7472654760.00
7472654760.00
7472654760.00
7472644440.00
7472654760.00
7472654760.00
7472644440.00
7472654760.00
8092817891.00
8092817891.00
8092666909.00
8092817891.00
8092817891.00
8092817891.00
8092817891.00
8092817891.00
8092817891.00
8092817891.00
10114302235.00
10114302235.00
10114302235.00
10114356965.00
10114356965.00
10114356965.00
10114356965.00
10114356965.00
10114356965.00
10114302235.00
10945986229.00
10945986229.00
10945872971.00
10945872971.00
10945986229.00
10945986229.00
10945872971.00
10945986229.00
10945986229.00
10945986229.00
11327660709.00
11327660709.00
11327660709.00
11327660709.00
11327660709.00
11327660709.00
11327660709.00
11327660709.00
11327660709.00
11327660709.00
11376658167.00
11376658167.00
11376658167.00
11376658167.00
11376658167.00
11376658167.00
11376658167.00
11376658167.00
11376658167.00
11376658167.00
11391397328.00
11391418672.00
11391418672.00
11391418672.00
11391397328.00
11391418672.00
11391397328.00
11391418672.00
11391418672.00
11391418672.00
12920229944.00
12920229944.00
12920109256.00
12920229944.00
12920229944.00
12920109256.00
12920109256.00
12920109256.00
12920229944.00
12920109256.00
13044663057.00
13044663057.00
13044663057.00
13044508143.00
13044663057.00
13044663057.00
13044663057.00
13044508143.00
13044663057.00
13044663057.00
11327628891.00
11327628891.00
11327660709.00
11327660709.00
11327660709.00
11327628891.00
11327628891.00
11327660709.00
11327660709.00
11327628891.00
11376658167.00
11376658167.00
11376658167.00
11376658167.00
11376658167.00
11376609033.00
11376658167.00
11376609033.00
11376658167.00
11376658167.00
11391418672.00
11391397328.00
11391418672.00
11391397328.00
11391397328.00
11391397328.00
11391397328.00
11391397328.00
11391397328.00
11391397328.00
12920229944.00
12920229944.00
12920229944.00
12920109256.00
12920229944.00
12920229944.00
12920229944.00
12920229944.00
12920229944.00
12920229944.00
13044663057.00
13044663057.00
13044663057.00
13044663057.00
13044508143.00
13044663057.00
13044508143.00
13044508143.00
13044663057.00
13044663057.00
14392258196.00
14392420204.00
14392420204.00
14392420204.00
14392258196.00
14392420204.00
14392420204.00
14392258196.00
14392420204.00
14392420204.00
16149635811.00
16149635811.00
16149635811.00
16149635811.00
16149635811.00
16149621789.00
16149621789.00
16149621789.00
16149635811.00
16149635811.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:2186"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_12
#AT_START_13
at_fn_group_banner 13 'data-in.at:2590' \
"TIME input format" " " 2
at_xfail=no
(
$as_echo "13. $at_setup_line: testing $at_desc ..."
$at_traceon
time_in
{ set +x
$as_echo "$at_srcdir/data-in.at:2593: \$PERL test-my-rand.pl"
at_fn_check_prepare_dynamic "$PERL test-my-rand.pl" "data-in.at:2593"
( $at_check_trace; $PERL test-my-rand.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:2593"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:2594: \$PERL time-in.pl 0 time +H:M +H:M:S"
at_fn_check_prepare_dynamic "$PERL time-in.pl 0 time +H:M +H:M:S" "data-in.at:2594"
( $at_check_trace; $PERL time-in.pl 0 time +H:M +H:M:S
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:2594"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:2595: test -s time.sps"
at_fn_check_prepare_trace "data-in.at:2595"
( $at_check_trace; test -s time.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:2595"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:2596: test -s time.data"
at_fn_check_prepare_trace "data-in.at:2596"
( $at_check_trace; test -s time.data
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:2596"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:2597: pspp -O format=csv time.sps"
at_fn_check_prepare_trace "data-in.at:2597"
( $at_check_trace; pspp -O format=csv time.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:2597"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:2598: cat time.out"
at_fn_check_prepare_trace "data-in.at:2598"
( $at_check_trace; cat time.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " .00
.00
.00
.00
.00
.00
.00
.00
.00
.00
-103800.00
103800.00
103800.00
-103800.00
103800.00
-103800.00
103800.00
103800.00
-103800.00
103800.00
477060.00
477060.00
477060.00
477060.00
-477060.00
477060.00
477060.00
477060.00
477060.00
-477060.00
46020.00
-46020.00
-46020.00
-46020.00
46020.00
46020.00
-46020.00
46020.00
46020.00
-46020.00
264360.00
264360.00
-264360.00
-264360.00
264360.00
-264360.00
264360.00
-264360.00
-264360.00
-264360.00
161880.00
161880.00
161880.00
161880.00
161880.00
-161880.00
161880.00
161880.00
161880.00
-161880.00
1064160.00
1064160.00
1064160.00
1064160.00
1064160.00
1064160.00
-1064160.00
1064160.00
1064160.00
1064160.00
-4549380.00
4549380.00
4549380.00
4549380.00
4549380.00
4549380.00
4549380.00
-4549380.00
4549380.00
4549380.00
620700.00
-620700.00
620700.00
620700.00
-620700.00
620700.00
-620700.00
-620700.00
620700.00
620700.00
24540.00
-24540.00
24540.00
24540.00
24540.00
24540.00
24540.00
24540.00
24540.00
24540.00
-1738620.00
1738620.00
1738620.00
1738620.00
1738620.00
1738620.00
1738620.00
1738620.00
1738620.00
1738620.00
48012300.00
-48012300.00
-48012300.00
48012300.00
48012300.00
48012300.00
48012300.00
48012300.00
48012300.00
48012300.00
10445400.00
-10445400.00
-10445400.00
10445400.00
10445400.00
10445400.00
-10445400.00
10445400.00
10445400.00
-10445400.00
15900.00
15900.00
-15900.00
15900.00
-15900.00
-15900.00
15900.00
15900.00
15900.00
15900.00
283740.00
-283740.00
283740.00
283740.00
283740.00
-283740.00
283740.00
283740.00
-283740.00
283740.00
442620.00
442620.00
442620.00
442620.00
442620.00
442620.00
442620.00
442620.00
442620.00
-442620.00
60300.00
60300.00
60300.00
60300.00
60300.00
-60300.00
-60300.00
60300.00
-60300.00
-60300.00
163800.00
-163800.00
-163800.00
-163800.00
163800.00
163800.00
163800.00
163800.00
-163800.00
163800.00
945000.00
-945000.00
-945000.00
-945000.00
945000.00
945000.00
945000.00
-945000.00
945000.00
945000.00
-1907760.00
1907760.00
-1907760.00
1907760.00
-1907760.00
1907760.00
1907760.00
1907760.00
1907760.00
-1907760.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
103839.00
103838.68
-103838.70
-103838.68
103838.70
103838.68
-103839.00
103838.68
103838.70
-103839.00
477095.82
477096.00
477096.00
477095.82
477095.82
477095.82
477095.80
-477095.80
477095.82
-477095.82
-46073.00
-46073.40
46073.00
46073.40
46073.40
46073.00
-46073.00
46073.00
46073.00
46073.00
264360.69
-264360.70
264361.00
264360.70
264360.69
264360.70
264361.00
264360.70
-264361.00
264361.00
161891.00
-161891.20
-161891.00
161891.00
-161891.00
161891.20
-161891.20
-161891.20
161891.20
-161891.19
-1064166.00
1064165.98
-1064166.00
-1064166.00
-1064165.98
1064166.00
1064166.00
-1064166.00
-1064165.98
1064166.00
4549429.00
4549429.27
4549429.27
-4549429.30
4549429.00
-4549429.00
4549429.00
4549429.27
4549429.00
4549429.30
620709.00
-620709.24
620709.24
620709.24
620709.24
620709.20
-620709.24
620709.20
620709.24
620709.24
24567.90
24567.89
24567.90
24568.00
24567.90
24568.00
24568.00
-24567.90
24567.90
24568.00
1738672.56
1738673.00
-1738672.60
-1738672.56
1738673.00
1738673.00
1738673.00
1738672.60
-1738672.56
1738672.60
-48012344.10
48012344.12
-48012344.10
-48012344.00
-48012344.00
48012344.00
-48012344.00
-48012344.00
-48012344.00
48012344.00
10445457.27
10445457.00
10445457.30
10445457.00
10445457.27
10445457.00
10445457.27
10445457.00
10445457.00
-10445457.30
-15909.98
15910.00
-15910.00
15910.00
-15909.98
15910.00
-15909.98
15909.98
15910.00
15909.98
-283767.00
283767.20
283767.20
283767.00
-283767.00
283767.00
283767.24
283767.00
283767.24
283767.00
-442672.00
442672.13
442672.00
442672.13
442672.00
442672.00
442672.00
442672.00
-442672.00
442672.13
-60344.40
-60344.00
60344.00
60344.35
60344.00
60344.40
60344.40
-60344.00
60344.00
60344.40
163857.00
163857.00
163857.00
163857.00
163857.30
-163857.30
163857.30
-163857.00
-163857.00
163857.30
945004.30
945004.00
945004.27
945004.30
945004.30
945004.00
945004.30
945004.00
945004.00
945004.00
1907811.00
1907811.00
-1907811.00
1907811.18
1907811.20
1907811.00
-1907811.00
1907811.18
-1907811.00
-1907811.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:2598"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_13
#AT_START_14
at_fn_group_banner 14 'data-in.at:3002' \
"DTIME input format" " " 2
at_xfail=no
(
$as_echo "14. $at_setup_line: testing $at_desc ..."
$at_traceon
time_in
{ set +x
$as_echo "$at_srcdir/data-in.at:3005: \$PERL test-my-rand.pl"
at_fn_check_prepare_dynamic "$PERL test-my-rand.pl" "data-in.at:3005"
( $at_check_trace; $PERL test-my-rand.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3005"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:3006: \$PERL time-in.pl 2000 dtime '+D H:M' '+D H:M:S'"
at_fn_check_prepare_dynamic "$PERL time-in.pl 2000 dtime '+D H:M' '+D H:M:S'" "data-in.at:3006"
( $at_check_trace; $PERL time-in.pl 2000 dtime '+D H:M' '+D H:M:S'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3006"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:3007: test -s dtime.sps"
at_fn_check_prepare_trace "data-in.at:3007"
( $at_check_trace; test -s dtime.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3007"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:3008: test -s dtime.data"
at_fn_check_prepare_trace "data-in.at:3008"
( $at_check_trace; test -s dtime.data
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3008"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:3009: pspp -O format=csv dtime.sps"
at_fn_check_prepare_trace "data-in.at:3009"
( $at_check_trace; pspp -O format=csv dtime.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3009"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:3010: cat dtime.out"
at_fn_check_prepare_trace "data-in.at:3010"
( $at_check_trace; cat dtime.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " .00
.00
.00
.00
.00
.00
.00
.00
.00
.00
103800.00
103800.00
-103800.00
103800.00
103800.00
-103800.00
103800.00
-103800.00
103800.00
-103800.00
477060.00
477060.00
477060.00
477060.00
477060.00
477060.00
-477060.00
-477060.00
-477060.00
477060.00
46020.00
46020.00
46020.00
46020.00
-46020.00
-46020.00
-46020.00
46020.00
46020.00
46020.00
264360.00
264360.00
-264360.00
264360.00
264360.00
264360.00
264360.00
-264360.00
-264360.00
-264360.00
-161880.00
-161880.00
161880.00
161880.00
161880.00
-161880.00
161880.00
-161880.00
161880.00
-161880.00
1064160.00
1064160.00
1064160.00
1064160.00
1064160.00
1064160.00
-1064160.00
1064160.00
1064160.00
1064160.00
-4549380.00
4549380.00
-4549380.00
-4549380.00
-4549380.00
4549380.00
4549380.00
4549380.00
4549380.00
4549380.00
-620700.00
620700.00
620700.00
-620700.00
620700.00
620700.00
620700.00
-620700.00
620700.00
620700.00
-24540.00
24540.00
24540.00
24540.00
-24540.00
24540.00
24540.00
-24540.00
24540.00
-24540.00
1738620.00
1738620.00
1738620.00
-1738620.00
-1738620.00
-1738620.00
1738620.00
1738620.00
1738620.00
1738620.00
48012300.00
48012300.00
48012300.00
48012300.00
48012300.00
-48012300.00
-48012300.00
48012300.00
-48012300.00
-48012300.00
-10445400.00
10445400.00
-10445400.00
10445400.00
10445400.00
10445400.00
10445400.00
10445400.00
10445400.00
10445400.00
15900.00
15900.00
15900.00
15900.00
15900.00
-15900.00
15900.00
15900.00
15900.00
15900.00
-283740.00
283740.00
-283740.00
-283740.00
283740.00
283740.00
283740.00
283740.00
283740.00
-283740.00
442620.00
-442620.00
-442620.00
442620.00
442620.00
-442620.00
-442620.00
-442620.00
442620.00
442620.00
60300.00
-60300.00
60300.00
60300.00
60300.00
60300.00
60300.00
60300.00
60300.00
60300.00
163800.00
163800.00
-163800.00
163800.00
-163800.00
-163800.00
-163800.00
163800.00
163800.00
-163800.00
945000.00
945000.00
945000.00
945000.00
-945000.00
945000.00
945000.00
945000.00
945000.00
-945000.00
-1907760.00
1907760.00
1907760.00
1907760.00
-1907760.00
-1907760.00
-1907760.00
1907760.00
-1907760.00
-1907760.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
.00
103838.70
103838.70
103839.00
103838.68
103838.70
103839.00
103838.70
-103839.00
103839.00
103839.00
477095.80
477095.80
-477095.80
477095.82
477095.82
477095.82
-477095.82
477095.82
477096.00
-477096.00
-46073.00
46073.00
-46073.00
46073.41
46073.00
46073.40
46073.00
46073.41
46073.41
-46073.00
264360.70
264360.70
264360.69
264361.00
-264360.70
264360.69
-264360.70
264360.69
-264361.00
264360.69
161891.00
-161891.20
-161891.19
161891.19
161891.00
161891.20
161891.20
161891.00
161891.00
161891.20
-1064165.98
1064166.00
1064166.00
1064166.00
1064165.98
1064166.00
1064166.00
-1064165.98
1064165.98
-1064166.00
4549429.27
4549429.27
4549429.27
4549429.27
4549429.00
4549429.27
-4549429.27
4549429.00
4549429.27
4549429.27
-620709.00
620709.20
620709.00
-620709.20
-620709.24
-620709.00
620709.00
620709.24
-620709.24
620709.00
-24567.89
24567.90
24568.00
24567.89
24568.00
24568.00
24567.90
-24568.00
-24567.89
-24568.00
1738672.56
-1738672.56
1738672.56
-1738672.60
-1738673.00
1738672.56
1738673.00
-1738672.60
1738672.60
1738672.56
48012344.00
-48012344.12
-48012344.00
48012344.12
-48012344.12
-48012344.00
48012344.12
-48012344.00
-48012344.00
-48012344.00
-10445457.00
10445457.00
10445457.00
10445457.00
-10445457.00
-10445457.00
10445457.00
10445457.00
10445457.00
-10445457.30
-15909.98
15910.00
-15909.98
15910.00
15910.00
-15910.00
-15910.00
-15910.00
-15910.00
15909.98
-283767.24
283767.20
283767.24
283767.24
283767.00
283767.20
283767.20
283767.24
-283767.00
283767.24
442672.13
-442672.13
442672.00
442672.13
442672.10
442672.00
442672.00
-442672.10
442672.00
-442672.10
-60344.35
60344.00
60344.00
-60344.00
60344.00
60344.35
60344.00
60344.35
60344.00
60344.00
-163857.00
-163857.00
163857.32
163857.00
-163857.30
-163857.00
163857.30
163857.00
163857.00
-163857.00
-945004.00
-945004.30
945004.27
945004.27
-945004.27
-945004.27
-945004.00
-945004.27
-945004.00
945004.30
1907811.00
1907811.00
1907811.00
1907811.00
1907811.20
1907811.18
1907811.18
1907811.18
1907811.18
1907811.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3010"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_14
#AT_START_15
at_fn_group_banner 15 'data-in.at:3414' \
"binary and hexadecimal input (IB, PIB, and PIBHEX formats)" "" 2
at_xfail=no
(
$as_echo "15. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/data-in.at:3415: \$PERL -e 'print pack \"n\", \$_ foreach 0...65535' > binhex-in.data"
at_fn_check_prepare_dynamic "$PERL -e 'print pack \"n\", $_ foreach 0...65535' > binhex-in.data" "data-in.at:3415"
( $at_check_trace; $PERL -e 'print pack "n", $_ foreach 0...65535' > binhex-in.data
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3415"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:3416: wc -c < binhex-in.data | sed 's/[ ]//g'"
at_fn_check_prepare_notrace 'a shell pipeline' "data-in.at:3416"
( $at_check_trace; wc -c < binhex-in.data | sed 's/[ ]//g'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "131072
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3416"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >binhex-in.sps <<'_ATEOF'
SET RIB=MSBFIRST.
SET ERRORS=NONE.
SET MXWARNS=10000000.
SET MXERRS=10000000.
FILE HANDLE data/NAME='binhex-in.data'/MODE=IMAGE/LRECL=2.
DATA LIST FILE=data NOTABLE/ib 1-2 (IB) pib 1-2 (PIB) pibhex 1-2 (PIBHEX).
COMPUTE x=$CASENUM - 1.
PRINT OUTFILE='binhex-in.out'/x (PIBHEX4) ' ' ib pib pibhex.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-in.at:3429: gzip -cd < \$top_srcdir/tests/data/binhex-in.expected.cmp.gz | \\
\$PERL -pe \"printf ' %04X ', \$.-1\" > expout"
at_fn_check_prepare_notrace 'an embedded newline' "data-in.at:3429"
( $at_check_trace; gzip -cd < $top_srcdir/tests/data/binhex-in.expected.cmp.gz | \
$PERL -pe "printf ' %04X ', $.-1" > expout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3429"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:3431: pspp -O format=csv binhex-in.sps"
at_fn_check_prepare_trace "data-in.at:3431"
( $at_check_trace; pspp -O format=csv binhex-in.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3431"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:3432: cat binhex-in.out"
at_fn_check_prepare_trace "data-in.at:3432"
( $at_check_trace; cat binhex-in.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3432"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_15
#AT_START_16
at_fn_group_banner 16 'data-in.at:3435' \
"BCD input (P and PK formats)" " " 2
at_xfail=no
(
$as_echo "16. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/data-in.at:3436: \$PERL -e 'print pack \"n\", \$_ foreach 0...65535' > bcd-in.data"
at_fn_check_prepare_dynamic "$PERL -e 'print pack \"n\", $_ foreach 0...65535' > bcd-in.data" "data-in.at:3436"
( $at_check_trace; $PERL -e 'print pack "n", $_ foreach 0...65535' > bcd-in.data
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3436"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:3437: wc -c < bcd-in.data | sed 's/[ ]//g'"
at_fn_check_prepare_notrace 'a shell pipeline' "data-in.at:3437"
( $at_check_trace; wc -c < bcd-in.data | sed 's/[ ]//g'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "131072
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3437"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >bcd-in.sps <<'_ATEOF'
SET ERRORS=NONE.
SET MXWARNS=10000000.
SET MXERRS=10000000.
FILE HANDLE data/NAME='bcd-in.data'/MODE=IMAGE/LRECL=2.
DATA LIST FILE=data NOTABLE/p 1-2 (P) pk 1-2 (PK).
COMPUTE x=$CASENUM - 1.
PRINT OUTFILE='bcd-in.out'/x (PIBHEX4) ' ' P PK.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-in.at:3449: gzip -cd < \$top_srcdir/tests/data/bcd-in.expected.cmp.gz | \\
\$PERL -pe \"printf ' %04X ', \$.-1\" > expout"
at_fn_check_prepare_notrace 'an embedded newline' "data-in.at:3449"
( $at_check_trace; gzip -cd < $top_srcdir/tests/data/bcd-in.expected.cmp.gz | \
$PERL -pe "printf ' %04X ', $.-1" > expout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3449"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:3451: pspp -O format=csv bcd-in.sps"
at_fn_check_prepare_trace "data-in.at:3451"
( $at_check_trace; pspp -O format=csv bcd-in.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3451"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:3452: cat bcd-in.out"
at_fn_check_prepare_trace "data-in.at:3452"
( $at_check_trace; cat bcd-in.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3452"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_16
#AT_START_17
at_fn_group_banner 17 'data-in.at:3455' \
"legacy input (N and Z formats)" " " 2
at_xfail=no
(
$as_echo "17. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/data-in.at:3456: \$PERL -e 'print pack \"n\", \$_ foreach 0...65535' > legacy-in.data"
at_fn_check_prepare_dynamic "$PERL -e 'print pack \"n\", $_ foreach 0...65535' > legacy-in.data" "data-in.at:3456"
( $at_check_trace; $PERL -e 'print pack "n", $_ foreach 0...65535' > legacy-in.data
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3456"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:3457: wc -c < legacy-in.data | sed 's/[ ]//g'"
at_fn_check_prepare_notrace 'a shell pipeline' "data-in.at:3457"
( $at_check_trace; wc -c < legacy-in.data | sed 's/[ ]//g'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "131072
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3457"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >legacy-in.sps <<'_ATEOF'
SET ERRORS=NONE.
SET MXWARNS=10000000.
SET MXERRS=10000000.
FILE HANDLE data/NAME='legacy-in.data'/MODE=IMAGE/LRECL=2.
DATA LIST NOTABLE FILE=data/n 1-2 (N) z 1-2 (z).
COMPUTE x=$CASENUM - 1.
PRINT OUTFILE='legacy-in.out'/x (PIBHEX4) ' ' N Z.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-in.at:3469: gzip -cd < \$top_srcdir/tests/data/legacy-in.expected.cmp.gz | \\
\$PERL -pe \"printf ' %04X ', \$.-1\" > expout"
at_fn_check_prepare_notrace 'an embedded newline' "data-in.at:3469"
( $at_check_trace; gzip -cd < $top_srcdir/tests/data/legacy-in.expected.cmp.gz | \
$PERL -pe "printf ' %04X ', $.-1" > expout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3469"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:3471: pspp -O format=csv legacy-in.sps"
at_fn_check_prepare_trace "data-in.at:3471"
( $at_check_trace; pspp -O format=csv legacy-in.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3471"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:3472: cat legacy-in.out"
at_fn_check_prepare_trace "data-in.at:3472"
( $at_check_trace; cat legacy-in.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3472"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_17
#AT_START_18
at_fn_group_banner 18 'data-in.at:3475' \
"WKDAY input format" " " 2
at_xfail=no
(
$as_echo "18. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >wkday.sps <<'_ATEOF'
DATA LIST NOTABLE /wkday2 1-2 (wkday)
wkday3 1-3 (wkday)
wkday4 1-4 (wkday)
wkday5 1-5 (wkday)
wkday6 1-6 (wkday)
wkday7 1-7 (wkday)
wkday8 1-8 (wkday)
wkday9 1-9 (wkday)
wkday10 1-10 (wkday).
BEGIN DATA.
.
monady
tuseday
WEDENSDAY
Thurdsay
fRidya
SAturady
sudnay
sturday
END DATA.
FORMATS ALL (WKDAY2).
PRINT OUTFILE='wkday.out'/ALL.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-in.at:3502: pspp -O format=csv wkday.sps"
at_fn_check_prepare_trace "data-in.at:3502"
( $at_check_trace; pspp -O format=csv wkday.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "wkday.sps:20.1-20.2: warning: Data for variable wkday2 is not valid as format WKDAY: Unrecognized weekday name. At least the first two letters of an English weekday name must be specified.
wkday.sps:20.1-20.3: warning: Data for variable wkday3 is not valid as format WKDAY: Unrecognized weekday name. At least the first two letters of an English weekday name must be specified.
wkday.sps:20.1-20.4: warning: Data for variable wkday4 is not valid as format WKDAY: Unrecognized weekday name. At least the first two letters of an English weekday name must be specified.
wkday.sps:20.1-20.5: warning: Data for variable wkday5 is not valid as format WKDAY: Unrecognized weekday name. At least the first two letters of an English weekday name must be specified.
wkday.sps:20.1-20.6: warning: Data for variable wkday6 is not valid as format WKDAY: Unrecognized weekday name. At least the first two letters of an English weekday name must be specified.
wkday.sps:20.1-20.7: warning: Data for variable wkday7 is not valid as format WKDAY: Unrecognized weekday name. At least the first two letters of an English weekday name must be specified.
wkday.sps:20.1-20.8: warning: Data for variable wkday8 is not valid as format WKDAY: Unrecognized weekday name. At least the first two letters of an English weekday name must be specified.
wkday.sps:20.1-20.9: warning: Data for variable wkday9 is not valid as format WKDAY: Unrecognized weekday name. At least the first two letters of an English weekday name must be specified.
wkday.sps:20.1-20.10: warning: Data for variable wkday10 is not valid as format WKDAY: Unrecognized weekday name. At least the first two letters of an English weekday name must be specified.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3502"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:3521: cat wkday.out"
at_fn_check_prepare_trace "data-in.at:3521"
( $at_check_trace; cat wkday.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " . . . . . . . . .
. . . . . . . . .
MO MO MO MO MO MO MO MO MO
TU TU TU TU TU TU TU TU TU
WE WE WE WE WE WE WE WE WE
TH TH TH TH TH TH TH TH TH
FR FR FR FR FR FR FR FR FR
SA SA SA SA SA SA SA SA SA
SU SU SU SU SU SU SU SU SU
. . . . . . . . .
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3521"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_18
#AT_START_19
at_fn_group_banner 19 'data-in.at:3535' \
"MONTH input format" " " 2
at_xfail=no
(
$as_echo "19. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >month.sps <<'_ATEOF'
DATA LIST NOTABLE /month3 1-3 (MONTH)
month4 1-4 (MONTH)
month5 1-5 (MONTH)
month6 1-6 (MONTH)
month7 1-7 (MONTH)
month8 1-8 (MONTH)
month9 1-9 (MONTH)
month10 1-10 (MONTH).
BEGIN DATA.
.
i
ii
iii
iiii
iv
v
vi
vii
viii
ix
viiii
x
xi
xii
0
1
2
3
4
5
6
7
8
9
10
11
12
13
january
JANAURY
February
fEbraury
MArch
marhc
apRIL
may
june
july
august
september
october
november
decmeber
december
END DATA.
FORMATS ALL (MONTH3).
PRINT OUTFILE='month.out'/ALL.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-in.at:3597: pspp -O format=csv month.sps"
at_fn_check_prepare_trace "data-in.at:3597"
( $at_check_trace; pspp -O format=csv month.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "month.sps:15.1-15.4: warning: Data for variable month4 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:15.1-15.5: warning: Data for variable month5 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:15.1-15.6: warning: Data for variable month6 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:15.1-15.7: warning: Data for variable month7 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:15.1-15.8: warning: Data for variable month8 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:15.1-15.9: warning: Data for variable month9 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:15.1-15.10: warning: Data for variable month10 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:26.1-26.3: warning: Data for variable month3 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:26.1-26.4: warning: Data for variable month4 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:26.1-26.5: warning: Data for variable month5 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:26.1-26.6: warning: Data for variable month6 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:26.1-26.7: warning: Data for variable month7 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:26.1-26.8: warning: Data for variable month8 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:26.1-26.9: warning: Data for variable month9 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:26.1-26.10: warning: Data for variable month10 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:39.1-39.3: warning: Data for variable month3 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:39.1-39.4: warning: Data for variable month4 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:39.1-39.5: warning: Data for variable month5 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:39.1-39.6: warning: Data for variable month6 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:39.1-39.7: warning: Data for variable month7 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:39.1-39.8: warning: Data for variable month8 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:39.1-39.9: warning: Data for variable month9 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
month.sps:39.1-39.10: warning: Data for variable month10 is not valid as format MONTH: Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3597"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-in.at:3644: cat month.out"
at_fn_check_prepare_trace "data-in.at:3644"
( $at_check_trace; cat month.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " . . . . . . . .
. . . . . . . .
JAN JAN JAN JAN JAN JAN JAN JAN
FEB FEB FEB FEB FEB FEB FEB FEB
MAR MAR MAR MAR MAR MAR MAR MAR
MAR . . . . . . .
APR APR APR APR APR APR APR APR
MAY MAY MAY MAY MAY MAY MAY MAY
JUN JUN JUN JUN JUN JUN JUN JUN
JUL JUL JUL JUL JUL JUL JUL JUL
JUL AUG AUG AUG AUG AUG AUG AUG
SEP SEP SEP SEP SEP SEP SEP SEP
JUL AUG AUG AUG AUG AUG AUG AUG
OCT OCT OCT OCT OCT OCT OCT OCT
NOV NOV NOV NOV NOV NOV NOV NOV
DEC DEC DEC DEC DEC DEC DEC DEC
. . . . . . . .
JAN JAN JAN JAN JAN JAN JAN JAN
FEB FEB FEB FEB FEB FEB FEB FEB
MAR MAR MAR MAR MAR MAR MAR MAR
APR APR APR APR APR APR APR APR
MAY MAY MAY MAY MAY MAY MAY MAY
JUN JUN JUN JUN JUN JUN JUN JUN
JUL JUL JUL JUL JUL JUL JUL JUL
AUG AUG AUG AUG AUG AUG AUG AUG
SEP SEP SEP SEP SEP SEP SEP SEP
OCT OCT OCT OCT OCT OCT OCT OCT
NOV NOV NOV NOV NOV NOV NOV NOV
DEC DEC DEC DEC DEC DEC DEC DEC
. . . . . . . .
JAN JAN JAN JAN JAN JAN JAN JAN
JAN JAN JAN JAN JAN JAN JAN JAN
FEB FEB FEB FEB FEB FEB FEB FEB
FEB FEB FEB FEB FEB FEB FEB FEB
MAR MAR MAR MAR MAR MAR MAR MAR
MAR MAR MAR MAR MAR MAR MAR MAR
APR APR APR APR APR APR APR APR
MAY MAY MAY MAY MAY MAY MAY MAY
JUN JUN JUN JUN JUN JUN JUN JUN
JUL JUL JUL JUL JUL JUL JUL JUL
AUG AUG AUG AUG AUG AUG AUG AUG
SEP SEP SEP SEP SEP SEP SEP SEP
OCT OCT OCT OCT OCT OCT OCT OCT
NOV NOV NOV NOV NOV NOV NOV NOV
DEC DEC DEC DEC DEC DEC DEC DEC
DEC DEC DEC DEC DEC DEC DEC DEC
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-in.at:3644"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_19
#AT_START_20
at_fn_group_banner 20 'data-out.at:3' \
"numeric format output" " " 3
at_xfail=no
(
$as_echo "20. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >num-out.pl <<'_ATEOF'
use strict;
use warnings 'all';
my @values = qw(0 2 9.5 27 271 999.95 2718 9999.995 27182 271828
2718281 2**39 2**333 2**-21 -2 -9.5 -27 -271 -999.95 -2718 -9999.995
-27182 -271828 -2718281 -2**39 -2**333 -2**-21 -0 3.125 31.25 314.125
3141.5 31415.875 314159.25 3141592.625 31415926.5 271828182.25
3214567890.5 31415926535.875 -3.125 -31.375 -314.125 -3141.5
-31415.875 -314159.25 -3141592.625 -31415926.5 -271828182.25
-3214567890.5 -31415926535.875);
print "SET CCA=',,,'.\n";
print "SET CCB='-,[[[,]]],-'.\n";
print "SET CCC='((,[,],))'.\n";
print "SET CCD=',XXX,,-'.\n";
print "SET CCE=',,YYY,-'.\n";
print "INPUT PROGRAM.\n";
print "STRING EXPR(A16).\n";
print map ("COMPUTE NUM=$_.\nCOMPUTE EXPR='$_'.\nEND CASE.\n", @values);
print "END FILE.\n";
print "END INPUT PROGRAM.\n";
print "PRINT OUTFILE='output.txt'/EXPR.\n";
for my $format (qw (F COMMA DOT DOLLAR PCT E CCA CCB CCC CCD CCE N Z)) {
for my $d (0...16) {
my ($min_w);
if ($format ne 'E') {
$min_w = $d + 1;
$min_w++ if $format eq 'DOLLAR' || $format eq 'PCT';
$min_w = 2 if $min_w == 1 && ($format =~ /^CC/);
} else {
$min_w = $d + 7;
}
for my $w ($min_w...40) {
my ($f) = "$format$w.$d";
print "PRINT OUTFILE='output.txt'/'$f: \"' NUM($f) '\"'.\n";
}
}
print "PRINT SPACE OUTFILE='output.txt'.\n";
}
print "EXECUTE.\n";
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-out.at:47: \$PERL num-out.pl > num-out.sps"
at_fn_check_prepare_dynamic "$PERL num-out.pl > num-out.sps" "data-out.at:47"
( $at_check_trace; $PERL num-out.pl > num-out.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:47"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-out.at:48: pspp -O format=csv num-out.sps"
at_fn_check_prepare_trace "data-out.at:48"
( $at_check_trace; pspp -O format=csv num-out.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:48"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-out.at:49: inexactify\$EXEEXT < output.txt > output.inexact"
at_fn_check_prepare_dynamic "inexactify$EXEEXT < output.txt > output.inexact" "data-out.at:49"
( $at_check_trace; inexactify$EXEEXT < output.txt > output.inexact
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:49"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-out.at:50: gzip -cd < \$top_srcdir/tests/data/num-out.expected.cmp.gz > expout.cmp"
at_fn_check_prepare_dynamic "gzip -cd < $top_srcdir/tests/data/num-out.expected.cmp.gz > expout.cmp" "data-out.at:50"
( $at_check_trace; gzip -cd < $top_srcdir/tests/data/num-out.expected.cmp.gz > expout.cmp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:50"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >num-out-decmp.pl <<'_ATEOF'
use strict;
use warnings 'all';
my (@line);
while (<>) {
if (my ($n) = /^\*(\d+)$/) {
for (1...$n) {
$line[1]++;
$line[3] = " $line[3]";
print ' ', join ('', @line), "\n";
}
} elsif (my ($suffix) = /^\$(.*)$/) {
for my $c (split ('', $suffix)) {
$line[1]++;
$line[4] .= $c;
print ' ', join ('', @line), "\n";
}
} elsif (my ($prefix) = /^\^(.*)$/) {
for my $c (split ('', $prefix)) {
$line[1]++;
$line[4] = "$c$line[4]";
print ' ', join ('', @line), "\n";
}
} else {
@line = /^([A-Z]+)(\d+)([^"]+")( *)([^%"]*)(%?")$/;
print " $_";
}
}
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-out.at:81: \$PERL num-out-decmp.pl < expout.cmp > expout.exact"
at_fn_check_prepare_dynamic "$PERL num-out-decmp.pl < expout.cmp > expout.exact" "data-out.at:81"
( $at_check_trace; $PERL num-out-decmp.pl < expout.cmp > expout.exact
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:81"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-out.at:82: inexactify < expout.exact > expout.inexact"
at_fn_check_prepare_trace "data-out.at:82"
( $at_check_trace; inexactify < expout.exact > expout.inexact
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:82"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >num-out-compare.pl <<'_ATEOF'
#! /usr/bin/perl -w
use strict;
use warnings 'all';
use Getopt::Long;
my $exact = 0;
my $spss = 0;
my $verbose = 0;
Getopt::Long::Configure ("bundling");
GetOptions ("e|exact!" => \$exact,
"s|spss!" => \$spss,
"v|verbose+" => \$verbose,
"h|help" => sub { usage (0) })
or usage (1);
sub usage {
print "$0: compare expected and actual numeric formatting output\n";
print "usage: $0 [OPTION...] EXPECTED ACTUAL\n";
print "where EXPECTED is the file containing expected output\n";
print "and ACTUAL is the file containing actual output.\n";
print "Options:\n";
print " -e, --exact: Require numbers to be exactly equal.\n";
print " (By default, small differences are permitted.)\n";
print " -s, --spss: Ignore most SPSS formatting bugs in EXPECTED.\n";
print " (A few differences are not compensated)\n";
print " -v, --verbose: Use once to summarize errors and differences.\n";
print " Use twice for details of differences.\n";
exit (@_);
}
open (EXPECTED, '<', $ARGV[0]) or die "$ARGV[0]: open: $!\n";
open (ACTUAL, '<', $ARGV[1]) or die "$ARGV[1]: open: $!\n";
my ($expr);
my ($bad_round) = 0;
my ($approximate) = 0;
my ($spss_wtf1) = 0;
my ($spss_wtf2) = 0;
my ($lost_sign) = 0;
my ($errors) = 0;
while (defined (my $a = ) && defined (my $b = )) {
chomp $a;
chomp $b;
if ($a eq $b) {
if ($a !~ /^\s*$/ && $a !~ /:/) {
$expr = $a;
$expr =~ s/\s*$//;
$expr =~ s/^\s*//;
}
} else {
my ($fmt, $a_out) = $a =~ /^ (.*): "(.*)"$/ or die;
my ($b_fmt, $b_out) = $b =~ /^ (.*): "(.*)"$/ or die;
die if $fmt ne $b_fmt;
die if $a_out eq $b_out;
if (!$exact) {
if (increment ($a_out) eq $b_out || increment ($b_out) eq $a_out) {
$approximate++;
next;
}
}
if ($spss) {
if ($a_out =~ /0.*0/ && $a_out !~ /[1-9]/) {
$bad_round++;
next;
} elsif ($a_out =~ /\*/ && $a_out !~ /^\*+$/) {
$spss_wtf1++;
next;
} elsif ($expr =~ /^-/
&& $a_out =~ /^\*+$/
&& $b_out =~ /-\d(\.\d*#*)?E[-+]\d\d\d/
&& $fmt =~ /^E/) {
$spss_wtf2++;
next;
} elsif ($expr =~ /^-/
&& (($a_out !~ /-/ && $a_out =~ /[1-9]/ && $b_out =~ /-/)
|| ($a_out =~ /^[0-9]+$/ && $b_out =~ /^\*+$/))) {
$lost_sign++;
next;
}
}
print "$.: $expr in $fmt: expected \"$a_out\", got \"$b_out\"\n"
if $verbose > 1;
$errors++;
}
}
while () {
print "Extra lines in $ARGV[0]\n";
$errors++;
last;
}
while () {
print "Extra lines in $ARGV[1]\n";
$errors++;
last;
}
if ($verbose) {
print "$errors errors\n";
if (!$exact) {
print "$approximate approximate matches\n";
}
if ($spss) {
print "$bad_round bad rounds\n";
print "$spss_wtf1 SPSS WTF 1\n";
print "$spss_wtf2 SPSS WTF 2\n";
print "$lost_sign lost signs\n";
}
}
exit ($errors > 0);
# Returns the argument value incremented by one unit in its final
# decimal place.
sub increment {
local ($_) = @_;
my ($last_digit, $i);
for ($i = 0; $i < length $_; $i++) {
my ($c) = substr ($_, $i, 1);
last if ($c eq 'E');
$last_digit = $i if $c =~ /[0-9]/;
}
return $_ if !defined $last_digit;
for ($i = $last_digit; $i >= 0; $i--) {
my ($c) = substr ($_, $i, 1);
if ($c eq '9') {
substr ($_, $i, 1) = '0';
} elsif ($c =~ /[0-8]/) {
substr ($_, $i, 1) = chr (ord ($c) + 1);
last;
}
}
$_ = "1$_" if $i < 0;
return $_;
}
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-out.at:218: \$PERL num-out-compare.pl \$PSPP_NUM_OUT_COMPARE_FLAGS expout.inexact output.inexact"
at_fn_check_prepare_dynamic "$PERL num-out-compare.pl $PSPP_NUM_OUT_COMPARE_FLAGS expout.inexact output.inexact" "data-out.at:218"
( $at_check_trace; $PERL num-out-compare.pl $PSPP_NUM_OUT_COMPARE_FLAGS expout.inexact output.inexact
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:218"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_20
#AT_START_21
at_fn_group_banner 21 'data-out.at:221' \
"non-ASCII custom currency formats" " " 3
at_xfail=no
(
$as_echo "21. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data-out.sps <<'_ATEOF'
SET CCA='«,¥,€,»'.
SHOW CCA.
DATA LIST LIST NOTABLE/x.
PRINT/x (F8.2) x (CCA10.2).
EXECUTE.
BEGIN DATA.
1
-1
1.5
-1.5
.75
1.5e10
-1.5e10
END DATA.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-out.at:238: pspp -O format=csv data-out.sps"
at_fn_check_prepare_trace "data-out.at:238"
( $at_check_trace; pspp -O format=csv data-out.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"data-out.sps:2: note: SHOW: CCA is «,¥,€,».\"
1.00 ¥1.00€
-1.00 «¥1.00€»
1.50 ¥1.50€
-1.50 «¥1.50€»
.75 ¥.75€
1.5E+010 ¥2E+010€
-2E+010«¥2E+010€»
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:238"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_21
#AT_START_22
at_fn_group_banner 22 'data-out.at:257' \
"binary and hexadecimal output" " " 3
at_xfail=no
(
$as_echo "22. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >binhex-out.sps <<'_ATEOF'
SET ERRORS=NONE.
SET MXWARNS=10000000.
SET WIB=MSBFIRST.
DATA LIST NOTABLE/x 1-10.
BEGIN DATA.
2
11
123
1234
913
3.14159
777
82
690
-2
-11
-123
-1234
-913
-3.14159
-777
-82
-690
-.1
-.5
-.9
9999.1
9999.5
9999.9
10000
18231237
-9999.1
-9999.5
-9999.9
-10000
-8231237
999.1
999.5
999.9
1000
8231237
-999.1
-999.5
-999.9
-1000
-8231237
99.1
99.5
99.9
100
821237
-99.1
-99.5
-99.9
-100
-831237
9.1
9.5
9.9
10
81237
-9.1
-9.5
-9.9
-10
-81237
1.1
-1.1
1.5
-1.5
1.9
-1.9
END DATA.
FILE HANDLE output/NAME='binhex.out'/MODE=IMAGE/LRECL=256.
WRITE OUTFILE=output/
x(p1.0) x(p2.0) x(p3.0) x(p4.0) /* 000
x(p2.1) x(p3.1) x(p4.1) /* 00a
x(p3.2) x(p4.2) /* 013
x(p4.3) /* 01a
x(pk1.0) x(pk2.0) x(pk3.0) x(pk4.0) /* 01e
x(pk2.1) x(pk3.1) x(pk4.1) /* 028
x(pk3.2) x(pk4.2) /* 031
x(pk4.3) /* 038
x(ib1.0) x(ib2.0) x(ib3.0) x(ib4.0) /* 03c
x(ib1.1) x(ib2.1) x(ib3.1) x(ib4.1) /* 046
x(ib1.2) x(ib2.2) x(ib3.2) x(ib4.2) /* 050
x(ib1.3) x(ib2.3) x(ib3.3) x(ib4.3) /* 05a
x(ib2.4) x(ib3.4) x(ib4.4) /* 064
x(ib2.5) x(ib3.5) x(ib4.5) /* 06d
x(ib3.6) x(ib4.6) /* 076
x(ib3.7) x(ib4.7) /* 07d
x(ib3.8) x(ib4.8) /* 084
x(ib4.9) /* 08b
x(ib4.10) /* 08f
x(pib1.0) x(pib2.0) x(pib3.0) x(pib4.0) /* 093
x(pib1.1) x(pib2.1) x(pib3.1) x(pib4.1) /* 09d
x(pib1.2) x(pib2.2) x(pib3.2) x(pib4.2) /* 0a7
x(pib1.3) x(pib2.3) x(pib3.3) x(pib4.3) /* 0b1
x(pib2.4) x(pib3.4) x(pib4.4) /* 0bb
x(pib2.5) x(pib3.5) x(pib4.5) /* 0c4
x(pib3.6) x(pib4.6) /* 0cd
x(pib3.7) x(pib4.7) /* 0d4
x(pib3.8) x(pib4.8) /* 0db
x(pib4.9) /* 0e2
x(pib4.10) /* 0e6
x(pibhex2) x(pibhex4) /* 0ea
x(pibhex6) x(pibhex8). /* 0f0
/* 0fe
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-out.at:370: pspp -O format=csv binhex-out.sps"
at_fn_check_prepare_trace "data-out.at:370"
( $at_check_trace; pspp -O format=csv binhex-out.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:370"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-out.at:371: gzip -cd < \$top_srcdir/tests/data/binhex-out.expected.gz > expout"
at_fn_check_prepare_dynamic "gzip -cd < $top_srcdir/tests/data/binhex-out.expected.gz > expout" "data-out.at:371"
( $at_check_trace; gzip -cd < $top_srcdir/tests/data/binhex-out.expected.gz > expout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:371"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-out.at:372: cat binhex.out"
at_fn_check_prepare_trace "data-out.at:372"
( $at_check_trace; cat binhex.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:372"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_22
#AT_START_23
at_fn_group_banner 23 'data-out.at:375' \
"output valid dates" " " 3
at_xfail=no
(
$as_echo "23. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >date-out.sps <<'_ATEOF'
set epoch=1930.
data list notable /x 1-30 (datetime).
begin data.
10-6-1648 0:0:0
30-6-1680 4:50:38.12301
24-7-1716 12:31:35.23453
19-6-1768 12:47:53.34505
2-8-1819 1:26:0.45615
27-3-1839 20:58:11.56677
19-4-1903 7:36:5.18964
25-8-1929 15:43:49.83132
29-9-1941 4:25:9.01293
19-4-1943 6:49:27.52375
7-10-1943 2:57:52.01565
17-3-1992 16:45:44.86529
25-2-1996 21:30:57.82047
29-9-41 4:25:9.15395
19-4-43 6:49:27.10533
7-10-43 2:57:52.48229
17-3-92 16:45:44.65827
25-2-96 21:30:57.58219
10-11-2038 22:30:4.18347
18-7-2094 1:56:51.59319
end data.
print outfile='date-out.out'/x(date9) ' | ' x(date11).
print outfile='date-out.out'/x(adate8) ' | ' x(adate10).
print outfile='date-out.out'/x(edate8) ' | ' x(edate10).
print outfile='date-out.out'/x(jdate5) ' | ' x(jdate7).
print outfile='date-out.out'/x(sdate8) ' | ' x(sdate10).
print outfile='date-out.out'/x(qyr6) ' | ' x(qyr8).
print outfile='date-out.out'/x(moyr6) ' | ' x(moyr8).
print outfile='date-out.out'/x(wkyr8) ' | ' x(wkyr10).
print outfile='date-out.out'/x(datetime17).
print outfile='date-out.out'/x(datetime18).
print outfile='date-out.out'/x(datetime19).
print outfile='date-out.out'/x(datetime20).
print outfile='date-out.out'/x(datetime21).
print outfile='date-out.out'/x(datetime22).
print outfile='date-out.out'/x(datetime22.1).
print outfile='date-out.out'/x(datetime23.2).
print outfile='date-out.out'/x(datetime24.3).
print outfile='date-out.out'/x(datetime25.4).
print outfile='date-out.out'/x(datetime26.5).
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-out.at:422: pspp -O format=csv date-out.sps"
at_fn_check_prepare_trace "data-out.at:422"
( $at_check_trace; pspp -O format=csv date-out.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:422"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-out.at:423: cat date-out.out"
at_fn_check_prepare_trace "data-out.at:423"
( $at_check_trace; cat date-out.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " ********* | 10-JUN-1648
******** | 06/10/1648
******** | 10.06.1648
***** | 1648162
******** | 1648/06/10
****** | 2 Q 1648
****** | JUN 1648
******** | 24 WK 1648
10-JUN-1648 00:00
10-JUN-1648 00:00
10-JUN-1648 00:00
10-JUN-1648 00:00:00
10-JUN-1648 00:00:00
10-JUN-1648 00:00:00
10-JUN-1648 00:00:00.0
10-JUN-1648 00:00:00.00
10-JUN-1648 00:00:00.000
10-JUN-1648 00:00:00.0000
10-JUN-1648 00:00:00.00000
********* | 30-JUN-1680
******** | 06/30/1680
******** | 30.06.1680
***** | 1680182
******** | 1680/06/30
****** | 2 Q 1680
****** | JUN 1680
******** | 26 WK 1680
30-JUN-1680 04:50
30-JUN-1680 04:50
30-JUN-1680 04:50
30-JUN-1680 04:50:38
30-JUN-1680 04:50:38
30-JUN-1680 04:50:38
30-JUN-1680 04:50:38.1
30-JUN-1680 04:50:38.12
30-JUN-1680 04:50:38.123
30-JUN-1680 04:50:38.1230
30-JUN-1680 04:50:38.12301
********* | 24-JUL-1716
******** | 07/24/1716
******** | 24.07.1716
***** | 1716206
******** | 1716/07/24
****** | 3 Q 1716
****** | JUL 1716
******** | 30 WK 1716
24-JUL-1716 12:31
24-JUL-1716 12:31
24-JUL-1716 12:31
24-JUL-1716 12:31:35
24-JUL-1716 12:31:35
24-JUL-1716 12:31:35
24-JUL-1716 12:31:35.2
24-JUL-1716 12:31:35.23
24-JUL-1716 12:31:35.235
24-JUL-1716 12:31:35.2345
24-JUL-1716 12:31:35.23453
********* | 19-JUN-1768
******** | 06/19/1768
******** | 19.06.1768
***** | 1768171
******** | 1768/06/19
****** | 2 Q 1768
****** | JUN 1768
******** | 25 WK 1768
19-JUN-1768 12:47
19-JUN-1768 12:47
19-JUN-1768 12:47
19-JUN-1768 12:47:53
19-JUN-1768 12:47:53
19-JUN-1768 12:47:53
19-JUN-1768 12:47:53.3
19-JUN-1768 12:47:53.35
19-JUN-1768 12:47:53.345
19-JUN-1768 12:47:53.3450
19-JUN-1768 12:47:53.34505
********* | 02-AUG-1819
******** | 08/02/1819
******** | 02.08.1819
***** | 1819214
******** | 1819/08/02
****** | 3 Q 1819
****** | AUG 1819
******** | 31 WK 1819
02-AUG-1819 01:26
02-AUG-1819 01:26
02-AUG-1819 01:26
02-AUG-1819 01:26:00
02-AUG-1819 01:26:00
02-AUG-1819 01:26:00
02-AUG-1819 01:26:00.5
02-AUG-1819 01:26:00.46
02-AUG-1819 01:26:00.456
02-AUG-1819 01:26:00.4562
02-AUG-1819 01:26:00.45615
********* | 27-MAR-1839
******** | 03/27/1839
******** | 27.03.1839
***** | 1839086
******** | 1839/03/27
****** | 1 Q 1839
****** | MAR 1839
******** | 13 WK 1839
27-MAR-1839 20:58
27-MAR-1839 20:58
27-MAR-1839 20:58
27-MAR-1839 20:58:11
27-MAR-1839 20:58:11
27-MAR-1839 20:58:11
27-MAR-1839 20:58:11.6
27-MAR-1839 20:58:11.57
27-MAR-1839 20:58:11.567
27-MAR-1839 20:58:11.5668
27-MAR-1839 20:58:11.56677
********* | 19-APR-1903
******** | 04/19/1903
******** | 19.04.1903
***** | 1903109
******** | 1903/04/19
****** | 2 Q 1903
****** | APR 1903
******** | 16 WK 1903
19-APR-1903 07:36
19-APR-1903 07:36
19-APR-1903 07:36
19-APR-1903 07:36:05
19-APR-1903 07:36:05
19-APR-1903 07:36:05
19-APR-1903 07:36:05.2
19-APR-1903 07:36:05.19
19-APR-1903 07:36:05.190
19-APR-1903 07:36:05.1896
19-APR-1903 07:36:05.18964
********* | 25-AUG-1929
******** | 08/25/1929
******** | 25.08.1929
***** | 1929237
******** | 1929/08/25
****** | 3 Q 1929
****** | AUG 1929
******** | 34 WK 1929
25-AUG-1929 15:43
25-AUG-1929 15:43
25-AUG-1929 15:43
25-AUG-1929 15:43:49
25-AUG-1929 15:43:49
25-AUG-1929 15:43:49
25-AUG-1929 15:43:49.8
25-AUG-1929 15:43:49.83
25-AUG-1929 15:43:49.831
25-AUG-1929 15:43:49.8313
25-AUG-1929 15:43:49.83132
29-SEP-41 | 29-SEP-1941
09/29/41 | 09/29/1941
29.09.41 | 29.09.1941
41272 | 1941272
41/09/29 | 1941/09/29
3 Q 41 | 3 Q 1941
SEP 41 | SEP 1941
39 WK 41 | 39 WK 1941
29-SEP-1941 04:25
29-SEP-1941 04:25
29-SEP-1941 04:25
29-SEP-1941 04:25:09
29-SEP-1941 04:25:09
29-SEP-1941 04:25:09
29-SEP-1941 04:25:09.0
29-SEP-1941 04:25:09.01
29-SEP-1941 04:25:09.013
29-SEP-1941 04:25:09.0129
29-SEP-1941 04:25:09.01293
19-APR-43 | 19-APR-1943
04/19/43 | 04/19/1943
19.04.43 | 19.04.1943
43109 | 1943109
43/04/19 | 1943/04/19
2 Q 43 | 2 Q 1943
APR 43 | APR 1943
16 WK 43 | 16 WK 1943
19-APR-1943 06:49
19-APR-1943 06:49
19-APR-1943 06:49
19-APR-1943 06:49:27
19-APR-1943 06:49:27
19-APR-1943 06:49:27
19-APR-1943 06:49:27.5
19-APR-1943 06:49:27.52
19-APR-1943 06:49:27.524
19-APR-1943 06:49:27.5238
19-APR-1943 06:49:27.52375
07-OCT-43 | 07-OCT-1943
10/07/43 | 10/07/1943
07.10.43 | 07.10.1943
43280 | 1943280
43/10/07 | 1943/10/07
4 Q 43 | 4 Q 1943
OCT 43 | OCT 1943
40 WK 43 | 40 WK 1943
07-OCT-1943 02:57
07-OCT-1943 02:57
07-OCT-1943 02:57
07-OCT-1943 02:57:52
07-OCT-1943 02:57:52
07-OCT-1943 02:57:52
07-OCT-1943 02:57:52.0
07-OCT-1943 02:57:52.02
07-OCT-1943 02:57:52.016
07-OCT-1943 02:57:52.0156
07-OCT-1943 02:57:52.01565
17-MAR-92 | 17-MAR-1992
03/17/92 | 03/17/1992
17.03.92 | 17.03.1992
92077 | 1992077
92/03/17 | 1992/03/17
1 Q 92 | 1 Q 1992
MAR 92 | MAR 1992
11 WK 92 | 11 WK 1992
17-MAR-1992 16:45
17-MAR-1992 16:45
17-MAR-1992 16:45
17-MAR-1992 16:45:44
17-MAR-1992 16:45:44
17-MAR-1992 16:45:44
17-MAR-1992 16:45:44.9
17-MAR-1992 16:45:44.87
17-MAR-1992 16:45:44.865
17-MAR-1992 16:45:44.8653
17-MAR-1992 16:45:44.86529
25-FEB-96 | 25-FEB-1996
02/25/96 | 02/25/1996
25.02.96 | 25.02.1996
96056 | 1996056
96/02/25 | 1996/02/25
1 Q 96 | 1 Q 1996
FEB 96 | FEB 1996
8 WK 96 | 8 WK 1996
25-FEB-1996 21:30
25-FEB-1996 21:30
25-FEB-1996 21:30
25-FEB-1996 21:30:57
25-FEB-1996 21:30:57
25-FEB-1996 21:30:57
25-FEB-1996 21:30:57.8
25-FEB-1996 21:30:57.82
25-FEB-1996 21:30:57.820
25-FEB-1996 21:30:57.8205
25-FEB-1996 21:30:57.82047
29-SEP-41 | 29-SEP-1941
09/29/41 | 09/29/1941
29.09.41 | 29.09.1941
41272 | 1941272
41/09/29 | 1941/09/29
3 Q 41 | 3 Q 1941
SEP 41 | SEP 1941
39 WK 41 | 39 WK 1941
29-SEP-1941 04:25
29-SEP-1941 04:25
29-SEP-1941 04:25
29-SEP-1941 04:25:09
29-SEP-1941 04:25:09
29-SEP-1941 04:25:09
29-SEP-1941 04:25:09.2
29-SEP-1941 04:25:09.15
29-SEP-1941 04:25:09.154
29-SEP-1941 04:25:09.1539
29-SEP-1941 04:25:09.15395
19-APR-43 | 19-APR-1943
04/19/43 | 04/19/1943
19.04.43 | 19.04.1943
43109 | 1943109
43/04/19 | 1943/04/19
2 Q 43 | 2 Q 1943
APR 43 | APR 1943
16 WK 43 | 16 WK 1943
19-APR-1943 06:49
19-APR-1943 06:49
19-APR-1943 06:49
19-APR-1943 06:49:27
19-APR-1943 06:49:27
19-APR-1943 06:49:27
19-APR-1943 06:49:27.1
19-APR-1943 06:49:27.11
19-APR-1943 06:49:27.105
19-APR-1943 06:49:27.1053
19-APR-1943 06:49:27.10533
07-OCT-43 | 07-OCT-1943
10/07/43 | 10/07/1943
07.10.43 | 07.10.1943
43280 | 1943280
43/10/07 | 1943/10/07
4 Q 43 | 4 Q 1943
OCT 43 | OCT 1943
40 WK 43 | 40 WK 1943
07-OCT-1943 02:57
07-OCT-1943 02:57
07-OCT-1943 02:57
07-OCT-1943 02:57:52
07-OCT-1943 02:57:52
07-OCT-1943 02:57:52
07-OCT-1943 02:57:52.5
07-OCT-1943 02:57:52.48
07-OCT-1943 02:57:52.482
07-OCT-1943 02:57:52.4823
07-OCT-1943 02:57:52.48229
17-MAR-92 | 17-MAR-1992
03/17/92 | 03/17/1992
17.03.92 | 17.03.1992
92077 | 1992077
92/03/17 | 1992/03/17
1 Q 92 | 1 Q 1992
MAR 92 | MAR 1992
11 WK 92 | 11 WK 1992
17-MAR-1992 16:45
17-MAR-1992 16:45
17-MAR-1992 16:45
17-MAR-1992 16:45:44
17-MAR-1992 16:45:44
17-MAR-1992 16:45:44
17-MAR-1992 16:45:44.7
17-MAR-1992 16:45:44.66
17-MAR-1992 16:45:44.658
17-MAR-1992 16:45:44.6583
17-MAR-1992 16:45:44.65827
25-FEB-96 | 25-FEB-1996
02/25/96 | 02/25/1996
25.02.96 | 25.02.1996
96056 | 1996056
96/02/25 | 1996/02/25
1 Q 96 | 1 Q 1996
FEB 96 | FEB 1996
8 WK 96 | 8 WK 1996
25-FEB-1996 21:30
25-FEB-1996 21:30
25-FEB-1996 21:30
25-FEB-1996 21:30:57
25-FEB-1996 21:30:57
25-FEB-1996 21:30:57
25-FEB-1996 21:30:57.6
25-FEB-1996 21:30:57.58
25-FEB-1996 21:30:57.582
25-FEB-1996 21:30:57.5822
25-FEB-1996 21:30:57.58219
********* | 10-NOV-2038
******** | 11/10/2038
******** | 10.11.2038
***** | 2038314
******** | 2038/11/10
****** | 4 Q 2038
****** | NOV 2038
******** | 45 WK 2038
10-NOV-2038 22:30
10-NOV-2038 22:30
10-NOV-2038 22:30
10-NOV-2038 22:30:04
10-NOV-2038 22:30:04
10-NOV-2038 22:30:04
10-NOV-2038 22:30:04.2
10-NOV-2038 22:30:04.18
10-NOV-2038 22:30:04.183
10-NOV-2038 22:30:04.1835
10-NOV-2038 22:30:04.18347
********* | 18-JUL-2094
******** | 07/18/2094
******** | 18.07.2094
***** | 2094199
******** | 2094/07/18
****** | 3 Q 2094
****** | JUL 2094
******** | 29 WK 2094
18-JUL-2094 01:56
18-JUL-2094 01:56
18-JUL-2094 01:56
18-JUL-2094 01:56:51
18-JUL-2094 01:56:51
18-JUL-2094 01:56:51
18-JUL-2094 01:56:51.6
18-JUL-2094 01:56:51.59
18-JUL-2094 01:56:51.593
18-JUL-2094 01:56:51.5932
18-JUL-2094 01:56:51.59319
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:423"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_23
#AT_START_24
at_fn_group_banner 24 'data-out.at:807' \
"output invalid dates" " " 3
at_xfail=no
(
$as_echo "24. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >bad-date.sps <<'_ATEOF'
set epoch=1930.
set errors=none.
data list list notable/x.
begin data.
0
-1
3e11
end data.
print outfile='bad-date.out'/x(date9) ' | ' x(date11).
print outfile='bad-date.out'/x(adate8) ' | ' x(adate10).
print outfile='bad-date.out'/x(edate8) ' | ' x(edate10).
print outfile='bad-date.out'/x(jdate5) ' | ' x(jdate7).
print outfile='bad-date.out'/x(sdate8) ' | ' x(sdate10).
print outfile='bad-date.out'/x(qyr6) ' | ' x(qyr8).
print outfile='bad-date.out'/x(moyr6) ' | ' x(moyr8).
print outfile='bad-date.out'/x(wkyr8) ' | ' x(wkyr10).
print outfile='bad-date.out'/x(datetime17).
print outfile='bad-date.out'/x(datetime18).
print outfile='bad-date.out'/x(datetime19).
print outfile='bad-date.out'/x(datetime20).
print outfile='bad-date.out'/x(datetime21).
print outfile='bad-date.out'/x(datetime22).
print outfile='bad-date.out'/x(datetime22.1).
print outfile='bad-date.out'/x(datetime23.2).
print outfile='bad-date.out'/x(datetime24.3).
print outfile='bad-date.out'/x(datetime25.4).
print outfile='bad-date.out'/x(datetime26.5).
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-out.at:838: pspp -O format=csv bad-date.sps"
at_fn_check_prepare_trace "data-out.at:838"
( $at_check_trace; pspp -O format=csv bad-date.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:838"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-out.at:839: cat bad-date.out"
at_fn_check_prepare_trace "data-out.at:839"
( $at_check_trace; cat bad-date.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " . | .
. | .
. | .
. | .
. | .
. | .
. | .
. | .
.
.
.
.
.
.
.
.
.
.
.
. | .
. | .
. | .
. | .
. | .
. | .
. | .
. | .
.
.
.
.
.
.
.
.
.
.
.
********* | ***********
******** | **********
******** | **********
***** | *******
******** | **********
****** | ********
****** | ********
******** | **********
28-MAY-**** 05:20
28-MAY-**** 05:20
28-MAY-**** 05:20
28-MAY-**** 05:20:00
28-MAY-**** 05:20:00
28-MAY-**** 05:20:00
28-MAY-**** 05:20:00.0
28-MAY-**** 05:20:00.00
28-MAY-**** 05:20:00.000
28-MAY-**** 05:20:00.0000
28-MAY-**** 05:20:00.00000
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:839"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_24
#AT_START_25
at_fn_group_banner 25 'data-out.at:900' \
"time output" " " 3
at_xfail=no
(
$as_echo "25. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >time-out.sps <<'_ATEOF'
set epoch=1930.
data list notable /x 1-30 (dtime).
begin data.
0 0:0:0
0 4:50:38.12301
0 12:31:35.23453
0 12:47:53.34505
0 1:26:0.45615
0 20:58:11.56677
0 7:36:5.18964
0 15:43:49.83132
0 4:25:9.01293
0 6:49:27.52375
0 2:57:52.01565
0 16:45:44.86529
0 21:30:57.82047
0 4:25:9.15395
0 6:49:27.10533
0 2:57:52.48229
0 16:45:44.65827
0 21:30:57.58219
0 22:30:4.18347
0 1:56:51.59319
1 0:0:0
1 4:50:38.12301
1 12:31:35.23453
1 12:47:53.34505
1 1:26:0.45615
1 20:58:11.56677
1 7:36:5.18964
1 15:43:49.83132
1 4:25:9.01293
1 6:49:27.52375
1 2:57:52.01565
1 16:45:44.86529
1 21:30:57.82047
1 4:25:9.15395
1 6:49:27.10533
1 2:57:52.48229
1 16:45:44.65827
1 21:30:57.58219
1 22:30:4.18347
1 1:56:51.59319
2 0:0:0
2 4:50:38.12301
2 12:31:35.23453
2 12:47:53.34505
2 1:26:0.45615
2 20:58:11.56677
2 7:36:5.18964
2 15:43:49.83132
2 4:25:9.01293
2 6:49:27.52375
2 2:57:52.01565
2 16:45:44.86529
2 21:30:57.82047
2 4:25:9.15395
2 6:49:27.10533
2 2:57:52.48229
2 16:45:44.65827
2 21:30:57.58219
2 22:30:4.18347
2 1:56:51.59319
54 0:0:0
54 4:50:38.12301
54 12:31:35.23453
54 12:47:53.34505
54 1:26:0.45615
54 20:58:11.56677
54 7:36:5.18964
54 15:43:49.83132
54 4:25:9.01293
54 6:49:27.52375
54 2:57:52.01565
54 16:45:44.86529
54 21:30:57.82047
54 4:25:9.15395
54 6:49:27.10533
54 2:57:52.48229
54 16:45:44.65827
54 21:30:57.58219
54 22:30:4.18347
54 1:56:51.59319
681 0:0:0
681 4:50:38.12301
681 12:31:35.23453
681 12:47:53.34505
681 1:26:0.45615
681 20:58:11.56677
681 7:36:5.18964
681 15:43:49.83132
681 4:25:9.01293
681 6:49:27.52375
681 2:57:52.01565
681 16:45:44.86529
681 21:30:57.82047
681 4:25:9.15395
681 6:49:27.10533
681 2:57:52.48229
681 16:45:44.65827
681 21:30:57.58219
681 22:30:4.18347
681 1:56:51.59319
-0 0:0:0
-0 4:50:38.12301
-0 12:31:35.23453
-0 12:47:53.34505
-0 1:26:0.45615
-0 20:58:11.56677
-0 7:36:5.18964
-0 15:43:49.83132
-0 4:25:9.01293
-0 6:49:27.52375
-0 2:57:52.01565
-0 16:45:44.86529
-0 21:30:57.82047
-0 4:25:9.15395
-0 6:49:27.10533
-0 2:57:52.48229
-0 16:45:44.65827
-0 21:30:57.58219
-0 22:30:4.18347
-0 1:56:51.59319
-1 0:0:0
-1 4:50:38.12301
-1 12:31:35.23453
-1 12:47:53.34505
-1 1:26:0.45615
-1 20:58:11.56677
-1 7:36:5.18964
-1 15:43:49.83132
-1 4:25:9.01293
-1 6:49:27.52375
-1 2:57:52.01565
-1 16:45:44.86529
-1 21:30:57.82047
-1 4:25:9.15395
-1 6:49:27.10533
-1 2:57:52.48229
-1 16:45:44.65827
-1 21:30:57.58219
-1 22:30:4.18347
-1 1:56:51.59319
-2 0:0:0
-2 4:50:38.12301
-2 12:31:35.23453
-2 12:47:53.34505
-2 1:26:0.45615
-2 20:58:11.56677
-2 7:36:5.18964
-2 15:43:49.83132
-2 4:25:9.01293
-2 6:49:27.52375
-2 2:57:52.01565
-2 16:45:44.86529
-2 21:30:57.82047
-2 4:25:9.15395
-2 6:49:27.10533
-2 2:57:52.48229
-2 16:45:44.65827
-2 21:30:57.58219
-2 22:30:4.18347
-2 1:56:51.59319
-54 0:0:0
-54 4:50:38.12301
-54 12:31:35.23453
-54 12:47:53.34505
-54 1:26:0.45615
-54 20:58:11.56677
-54 7:36:5.18964
-54 15:43:49.83132
-54 4:25:9.01293
-54 6:49:27.52375
-54 2:57:52.01565
-54 16:45:44.86529
-54 21:30:57.82047
-54 4:25:9.15395
-54 6:49:27.10533
-54 2:57:52.48229
-54 16:45:44.65827
-54 21:30:57.58219
-54 22:30:4.18347
-54 1:56:51.59319
-681 0:0:0
-681 4:50:38.12301
-681 12:31:35.23453
-681 12:47:53.34505
-681 1:26:0.45615
-681 20:58:11.56677
-681 7:36:5.18964
-681 15:43:49.83132
-681 4:25:9.01293
-681 6:49:27.52375
-681 2:57:52.01565
-681 16:45:44.86529
-681 21:30:57.82047
-681 4:25:9.15395
-681 6:49:27.10533
-681 2:57:52.48229
-681 16:45:44.65827
-681 21:30:57.58219
-681 22:30:4.18347
-681 1:56:51.59319
end data.
print outfile='time-out.out'/x(time5).
print outfile='time-out.out'/x(time6).
print outfile='time-out.out'/x(time7).
print outfile='time-out.out'/x(time8).
print outfile='time-out.out'/x(time9).
print outfile='time-out.out'/x(time10).
print outfile='time-out.out'/x(time10.1).
print outfile='time-out.out'/x(time11).
print outfile='time-out.out'/x(time11.1).
print outfile='time-out.out'/x(time11.2).
print outfile='time-out.out'/x(time12).
print outfile='time-out.out'/x(time12.1).
print outfile='time-out.out'/x(time12.2).
print outfile='time-out.out'/x(time12.3).
print outfile='time-out.out'/x(time13).
print outfile='time-out.out'/x(time13.1).
print outfile='time-out.out'/x(time13.2).
print outfile='time-out.out'/x(time13.3).
print outfile='time-out.out'/x(time13.4).
print outfile='time-out.out'/x(time14).
print outfile='time-out.out'/x(time14.1).
print outfile='time-out.out'/x(time14.2).
print outfile='time-out.out'/x(time14.3).
print outfile='time-out.out'/x(time14.4).
print outfile='time-out.out'/x(time14.5).
print outfile='time-out.out'/x(time15).
print outfile='time-out.out'/x(time15.1).
print outfile='time-out.out'/x(time15.2).
print outfile='time-out.out'/x(time15.3).
print outfile='time-out.out'/x(time15.4).
print outfile='time-out.out'/x(time15.5).
print outfile='time-out.out'/x(time15.6).
print outfile='time-out.out'/x(dtime8).
print outfile='time-out.out'/x(dtime9).
print outfile='time-out.out'/x(dtime10).
print outfile='time-out.out'/x(dtime11).
print outfile='time-out.out'/x(dtime12).
print outfile='time-out.out'/x(dtime13).
print outfile='time-out.out'/x(dtime13.1).
print outfile='time-out.out'/x(dtime14).
print outfile='time-out.out'/x(dtime14.1).
print outfile='time-out.out'/x(dtime14.2).
print outfile='time-out.out'/x(dtime15).
print outfile='time-out.out'/x(dtime15.1).
print outfile='time-out.out'/x(dtime15.2).
print outfile='time-out.out'/x(dtime15.3).
print outfile='time-out.out'/x(dtime16).
print outfile='time-out.out'/x(dtime16.1).
print outfile='time-out.out'/x(dtime16.2).
print outfile='time-out.out'/x(dtime16.3).
print outfile='time-out.out'/x(dtime16.4).
print outfile='time-out.out'/x(dtime17).
print outfile='time-out.out'/x(dtime17.1).
print outfile='time-out.out'/x(dtime17.2).
print outfile='time-out.out'/x(dtime17.3).
print outfile='time-out.out'/x(dtime17.4).
print outfile='time-out.out'/x(dtime17.5).
print outfile='time-out.out'/x(dtime18).
print outfile='time-out.out'/x(dtime18.1).
print outfile='time-out.out'/x(dtime18.2).
print outfile='time-out.out'/x(dtime18.3).
print outfile='time-out.out'/x(dtime18.4).
print outfile='time-out.out'/x(dtime18.5).
print outfile='time-out.out'/x(dtime18.6).
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-out.at:1172: pspp -O format=csv time-out.sps"
at_fn_check_prepare_trace "data-out.at:1172"
( $at_check_trace; pspp -O format=csv time-out.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:1172"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-out.at:1173: cat time-out.out"
at_fn_check_prepare_trace "data-out.at:1173"
( $at_check_trace; cat time-out.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 0:00
0:00
0:00:00
0:00:00
0:00:00
0:00:00
0:00:00.0
0:00:00
0:00:00.0
0:00:00.00
0:00:00
0:00:00.0
0:00:00.00
0:00:00.000
0:00:00
0:00:00.0
0:00:00.00
0:00:00.000
0:00:00.0000
0:00:00
0:00:00.0
0:00:00.00
0:00:00.000
0:00:00.0000
0:00:00.00000
0:00:00
0:00:00.0
0:00:00.00
0:00:00.000
0:00:00.0000
0:00:00.00000
0:00:00.000000
0 00:00
0 00:00
0 00:00:00
0 00:00:00
0 00:00:00
0 00:00:00
0 00:00:00.0
0 00:00:00
0 00:00:00.0
0 00:00:00.00
0 00:00:00
0 00:00:00.0
0 00:00:00.00
0 00:00:00.000
0 00:00:00
0 00:00:00.0
0 00:00:00.00
0 00:00:00.000
0 00:00:00.0000
0 00:00:00
0 00:00:00.0
0 00:00:00.00
0 00:00:00.000
0 00:00:00.0000
0 00:00:00.00000
0 00:00:00
0 00:00:00.0
0 00:00:00.00
0 00:00:00.000
0 00:00:00.0000
0 00:00:00.00000
0 00:00:00.000000
4:50
4:50
4:50:38
4:50:38
4:50:38
4:50:38
4:50:38.1
4:50:38
4:50:38.1
4:50:38.12
4:50:38
4:50:38.1
4:50:38.12
4:50:38.123
4:50:38
4:50:38.1
4:50:38.12
4:50:38.123
4:50:38.1230
4:50:38
4:50:38.1
4:50:38.12
4:50:38.123
4:50:38.1230
4:50:38.12301
4:50:38
4:50:38.1
4:50:38.12
4:50:38.123
4:50:38.1230
4:50:38.12301
4:50:38.123010
0 04:50
0 04:50
0 04:50:38
0 04:50:38
0 04:50:38
0 04:50:38
0 04:50:38.1
0 04:50:38
0 04:50:38.1
0 04:50:38.12
0 04:50:38
0 04:50:38.1
0 04:50:38.12
0 04:50:38.123
0 04:50:38
0 04:50:38.1
0 04:50:38.12
0 04:50:38.123
0 04:50:38.1230
0 04:50:38
0 04:50:38.1
0 04:50:38.12
0 04:50:38.123
0 04:50:38.1230
0 04:50:38.12301
0 04:50:38
0 04:50:38.1
0 04:50:38.12
0 04:50:38.123
0 04:50:38.1230
0 04:50:38.12301
0 04:50:38.123010
12:31
12:31
12:31
12:31:35
12:31:35
12:31:35
12:31:35.2
12:31:35
12:31:35.2
12:31:35.23
12:31:35
12:31:35.2
12:31:35.23
12:31:35.235
12:31:35
12:31:35.2
12:31:35.23
12:31:35.235
12:31:35.2345
12:31:35
12:31:35.2
12:31:35.23
12:31:35.235
12:31:35.2345
12:31:35.23453
12:31:35
12:31:35.2
12:31:35.23
12:31:35.235
12:31:35.2345
12:31:35.23453
12:31:35.234530
0 12:31
0 12:31
0 12:31:35
0 12:31:35
0 12:31:35
0 12:31:35
0 12:31:35.2
0 12:31:35
0 12:31:35.2
0 12:31:35.23
0 12:31:35
0 12:31:35.2
0 12:31:35.23
0 12:31:35.235
0 12:31:35
0 12:31:35.2
0 12:31:35.23
0 12:31:35.235
0 12:31:35.2345
0 12:31:35
0 12:31:35.2
0 12:31:35.23
0 12:31:35.235
0 12:31:35.2345
0 12:31:35.23453
0 12:31:35
0 12:31:35.2
0 12:31:35.23
0 12:31:35.235
0 12:31:35.2345
0 12:31:35.23453
0 12:31:35.234530
12:47
12:47
12:47
12:47:53
12:47:53
12:47:53
12:47:53.3
12:47:53
12:47:53.3
12:47:53.35
12:47:53
12:47:53.3
12:47:53.35
12:47:53.345
12:47:53
12:47:53.3
12:47:53.35
12:47:53.345
12:47:53.3451
12:47:53
12:47:53.3
12:47:53.35
12:47:53.345
12:47:53.3451
12:47:53.34505
12:47:53
12:47:53.3
12:47:53.35
12:47:53.345
12:47:53.3451
12:47:53.34505
12:47:53.345050
0 12:47
0 12:47
0 12:47:53
0 12:47:53
0 12:47:53
0 12:47:53
0 12:47:53.3
0 12:47:53
0 12:47:53.3
0 12:47:53.35
0 12:47:53
0 12:47:53.3
0 12:47:53.35
0 12:47:53.345
0 12:47:53
0 12:47:53.3
0 12:47:53.35
0 12:47:53.345
0 12:47:53.3451
0 12:47:53
0 12:47:53.3
0 12:47:53.35
0 12:47:53.345
0 12:47:53.3451
0 12:47:53.34505
0 12:47:53
0 12:47:53.3
0 12:47:53.35
0 12:47:53.345
0 12:47:53.3451
0 12:47:53.34505
0 12:47:53.345050
1:26
1:26
1:26:00
1:26:00
1:26:00
1:26:00
1:26:00.5
1:26:00
1:26:00.5
1:26:00.46
1:26:00
1:26:00.5
1:26:00.46
1:26:00.456
1:26:00
1:26:00.5
1:26:00.46
1:26:00.456
1:26:00.4561
1:26:00
1:26:00.5
1:26:00.46
1:26:00.456
1:26:00.4561
1:26:00.45615
1:26:00
1:26:00.5
1:26:00.46
1:26:00.456
1:26:00.4561
1:26:00.45615
1:26:00.456150
0 01:26
0 01:26
0 01:26:00
0 01:26:00
0 01:26:00
0 01:26:00
0 01:26:00.5
0 01:26:00
0 01:26:00.5
0 01:26:00.46
0 01:26:00
0 01:26:00.5
0 01:26:00.46
0 01:26:00.456
0 01:26:00
0 01:26:00.5
0 01:26:00.46
0 01:26:00.456
0 01:26:00.4561
0 01:26:00
0 01:26:00.5
0 01:26:00.46
0 01:26:00.456
0 01:26:00.4561
0 01:26:00.45615
0 01:26:00
0 01:26:00.5
0 01:26:00.46
0 01:26:00.456
0 01:26:00.4561
0 01:26:00.45615
0 01:26:00.456150
20:58
20:58
20:58
20:58:11
20:58:11
20:58:11
20:58:11.6
20:58:11
20:58:11.6
20:58:11.57
20:58:11
20:58:11.6
20:58:11.57
20:58:11.567
20:58:11
20:58:11.6
20:58:11.57
20:58:11.567
20:58:11.5668
20:58:11
20:58:11.6
20:58:11.57
20:58:11.567
20:58:11.5668
20:58:11.56677
20:58:11
20:58:11.6
20:58:11.57
20:58:11.567
20:58:11.5668
20:58:11.56677
20:58:11.566770
0 20:58
0 20:58
0 20:58:11
0 20:58:11
0 20:58:11
0 20:58:11
0 20:58:11.6
0 20:58:11
0 20:58:11.6
0 20:58:11.57
0 20:58:11
0 20:58:11.6
0 20:58:11.57
0 20:58:11.567
0 20:58:11
0 20:58:11.6
0 20:58:11.57
0 20:58:11.567
0 20:58:11.5668
0 20:58:11
0 20:58:11.6
0 20:58:11.57
0 20:58:11.567
0 20:58:11.5668
0 20:58:11.56677
0 20:58:11
0 20:58:11.6
0 20:58:11.57
0 20:58:11.567
0 20:58:11.5668
0 20:58:11.56677
0 20:58:11.566770
7:36
7:36
7:36:05
7:36:05
7:36:05
7:36:05
7:36:05.2
7:36:05
7:36:05.2
7:36:05.19
7:36:05
7:36:05.2
7:36:05.19
7:36:05.190
7:36:05
7:36:05.2
7:36:05.19
7:36:05.190
7:36:05.1896
7:36:05
7:36:05.2
7:36:05.19
7:36:05.190
7:36:05.1896
7:36:05.18964
7:36:05
7:36:05.2
7:36:05.19
7:36:05.190
7:36:05.1896
7:36:05.18964
7:36:05.189640
0 07:36
0 07:36
0 07:36:05
0 07:36:05
0 07:36:05
0 07:36:05
0 07:36:05.2
0 07:36:05
0 07:36:05.2
0 07:36:05.19
0 07:36:05
0 07:36:05.2
0 07:36:05.19
0 07:36:05.190
0 07:36:05
0 07:36:05.2
0 07:36:05.19
0 07:36:05.190
0 07:36:05.1896
0 07:36:05
0 07:36:05.2
0 07:36:05.19
0 07:36:05.190
0 07:36:05.1896
0 07:36:05.18964
0 07:36:05
0 07:36:05.2
0 07:36:05.19
0 07:36:05.190
0 07:36:05.1896
0 07:36:05.18964
0 07:36:05.189640
15:43
15:43
15:43
15:43:49
15:43:49
15:43:49
15:43:49.8
15:43:49
15:43:49.8
15:43:49.83
15:43:49
15:43:49.8
15:43:49.83
15:43:49.831
15:43:49
15:43:49.8
15:43:49.83
15:43:49.831
15:43:49.8313
15:43:49
15:43:49.8
15:43:49.83
15:43:49.831
15:43:49.8313
15:43:49.83132
15:43:49
15:43:49.8
15:43:49.83
15:43:49.831
15:43:49.8313
15:43:49.83132
15:43:49.831320
0 15:43
0 15:43
0 15:43:49
0 15:43:49
0 15:43:49
0 15:43:49
0 15:43:49.8
0 15:43:49
0 15:43:49.8
0 15:43:49.83
0 15:43:49
0 15:43:49.8
0 15:43:49.83
0 15:43:49.831
0 15:43:49
0 15:43:49.8
0 15:43:49.83
0 15:43:49.831
0 15:43:49.8313
0 15:43:49
0 15:43:49.8
0 15:43:49.83
0 15:43:49.831
0 15:43:49.8313
0 15:43:49.83132
0 15:43:49
0 15:43:49.8
0 15:43:49.83
0 15:43:49.831
0 15:43:49.8313
0 15:43:49.83132
0 15:43:49.831320
4:25
4:25
4:25:09
4:25:09
4:25:09
4:25:09
4:25:09.0
4:25:09
4:25:09.0
4:25:09.01
4:25:09
4:25:09.0
4:25:09.01
4:25:09.013
4:25:09
4:25:09.0
4:25:09.01
4:25:09.013
4:25:09.0129
4:25:09
4:25:09.0
4:25:09.01
4:25:09.013
4:25:09.0129
4:25:09.01293
4:25:09
4:25:09.0
4:25:09.01
4:25:09.013
4:25:09.0129
4:25:09.01293
4:25:09.012930
0 04:25
0 04:25
0 04:25:09
0 04:25:09
0 04:25:09
0 04:25:09
0 04:25:09.0
0 04:25:09
0 04:25:09.0
0 04:25:09.01
0 04:25:09
0 04:25:09.0
0 04:25:09.01
0 04:25:09.013
0 04:25:09
0 04:25:09.0
0 04:25:09.01
0 04:25:09.013
0 04:25:09.0129
0 04:25:09
0 04:25:09.0
0 04:25:09.01
0 04:25:09.013
0 04:25:09.0129
0 04:25:09.01293
0 04:25:09
0 04:25:09.0
0 04:25:09.01
0 04:25:09.013
0 04:25:09.0129
0 04:25:09.01293
0 04:25:09.012930
6:49
6:49
6:49:27
6:49:27
6:49:27
6:49:27
6:49:27.5
6:49:27
6:49:27.5
6:49:27.52
6:49:27
6:49:27.5
6:49:27.52
6:49:27.524
6:49:27
6:49:27.5
6:49:27.52
6:49:27.524
6:49:27.5238
6:49:27
6:49:27.5
6:49:27.52
6:49:27.524
6:49:27.5238
6:49:27.52375
6:49:27
6:49:27.5
6:49:27.52
6:49:27.524
6:49:27.5238
6:49:27.52375
6:49:27.523750
0 06:49
0 06:49
0 06:49:27
0 06:49:27
0 06:49:27
0 06:49:27
0 06:49:27.5
0 06:49:27
0 06:49:27.5
0 06:49:27.52
0 06:49:27
0 06:49:27.5
0 06:49:27.52
0 06:49:27.524
0 06:49:27
0 06:49:27.5
0 06:49:27.52
0 06:49:27.524
0 06:49:27.5238
0 06:49:27
0 06:49:27.5
0 06:49:27.52
0 06:49:27.524
0 06:49:27.5238
0 06:49:27.52375
0 06:49:27
0 06:49:27.5
0 06:49:27.52
0 06:49:27.524
0 06:49:27.5238
0 06:49:27.52375
0 06:49:27.523750
2:57
2:57
2:57:52
2:57:52
2:57:52
2:57:52
2:57:52.0
2:57:52
2:57:52.0
2:57:52.02
2:57:52
2:57:52.0
2:57:52.02
2:57:52.016
2:57:52
2:57:52.0
2:57:52.02
2:57:52.016
2:57:52.0156
2:57:52
2:57:52.0
2:57:52.02
2:57:52.016
2:57:52.0156
2:57:52.01565
2:57:52
2:57:52.0
2:57:52.02
2:57:52.016
2:57:52.0156
2:57:52.01565
2:57:52.015650
0 02:57
0 02:57
0 02:57:52
0 02:57:52
0 02:57:52
0 02:57:52
0 02:57:52.0
0 02:57:52
0 02:57:52.0
0 02:57:52.02
0 02:57:52
0 02:57:52.0
0 02:57:52.02
0 02:57:52.016
0 02:57:52
0 02:57:52.0
0 02:57:52.02
0 02:57:52.016
0 02:57:52.0156
0 02:57:52
0 02:57:52.0
0 02:57:52.02
0 02:57:52.016
0 02:57:52.0156
0 02:57:52.01565
0 02:57:52
0 02:57:52.0
0 02:57:52.02
0 02:57:52.016
0 02:57:52.0156
0 02:57:52.01565
0 02:57:52.015650
16:45
16:45
16:45
16:45:44
16:45:44
16:45:44
16:45:44.9
16:45:44
16:45:44.9
16:45:44.87
16:45:44
16:45:44.9
16:45:44.87
16:45:44.865
16:45:44
16:45:44.9
16:45:44.87
16:45:44.865
16:45:44.8653
16:45:44
16:45:44.9
16:45:44.87
16:45:44.865
16:45:44.8653
16:45:44.86529
16:45:44
16:45:44.9
16:45:44.87
16:45:44.865
16:45:44.8653
16:45:44.86529
16:45:44.865290
0 16:45
0 16:45
0 16:45:44
0 16:45:44
0 16:45:44
0 16:45:44
0 16:45:44.9
0 16:45:44
0 16:45:44.9
0 16:45:44.87
0 16:45:44
0 16:45:44.9
0 16:45:44.87
0 16:45:44.865
0 16:45:44
0 16:45:44.9
0 16:45:44.87
0 16:45:44.865
0 16:45:44.8653
0 16:45:44
0 16:45:44.9
0 16:45:44.87
0 16:45:44.865
0 16:45:44.8653
0 16:45:44.86529
0 16:45:44
0 16:45:44.9
0 16:45:44.87
0 16:45:44.865
0 16:45:44.8653
0 16:45:44.86529
0 16:45:44.865290
21:30
21:30
21:30
21:30:57
21:30:57
21:30:57
21:30:57.8
21:30:57
21:30:57.8
21:30:57.82
21:30:57
21:30:57.8
21:30:57.82
21:30:57.820
21:30:57
21:30:57.8
21:30:57.82
21:30:57.820
21:30:57.8205
21:30:57
21:30:57.8
21:30:57.82
21:30:57.820
21:30:57.8205
21:30:57.82047
21:30:57
21:30:57.8
21:30:57.82
21:30:57.820
21:30:57.8205
21:30:57.82047
21:30:57.820470
0 21:30
0 21:30
0 21:30:57
0 21:30:57
0 21:30:57
0 21:30:57
0 21:30:57.8
0 21:30:57
0 21:30:57.8
0 21:30:57.82
0 21:30:57
0 21:30:57.8
0 21:30:57.82
0 21:30:57.820
0 21:30:57
0 21:30:57.8
0 21:30:57.82
0 21:30:57.820
0 21:30:57.8205
0 21:30:57
0 21:30:57.8
0 21:30:57.82
0 21:30:57.820
0 21:30:57.8205
0 21:30:57.82047
0 21:30:57
0 21:30:57.8
0 21:30:57.82
0 21:30:57.820
0 21:30:57.8205
0 21:30:57.82047
0 21:30:57.820470
4:25
4:25
4:25:09
4:25:09
4:25:09
4:25:09
4:25:09.2
4:25:09
4:25:09.2
4:25:09.15
4:25:09
4:25:09.2
4:25:09.15
4:25:09.154
4:25:09
4:25:09.2
4:25:09.15
4:25:09.154
4:25:09.1539
4:25:09
4:25:09.2
4:25:09.15
4:25:09.154
4:25:09.1539
4:25:09.15395
4:25:09
4:25:09.2
4:25:09.15
4:25:09.154
4:25:09.1539
4:25:09.15395
4:25:09.153950
0 04:25
0 04:25
0 04:25:09
0 04:25:09
0 04:25:09
0 04:25:09
0 04:25:09.2
0 04:25:09
0 04:25:09.2
0 04:25:09.15
0 04:25:09
0 04:25:09.2
0 04:25:09.15
0 04:25:09.154
0 04:25:09
0 04:25:09.2
0 04:25:09.15
0 04:25:09.154
0 04:25:09.1539
0 04:25:09
0 04:25:09.2
0 04:25:09.15
0 04:25:09.154
0 04:25:09.1539
0 04:25:09.15395
0 04:25:09
0 04:25:09.2
0 04:25:09.15
0 04:25:09.154
0 04:25:09.1539
0 04:25:09.15395
0 04:25:09.153950
6:49
6:49
6:49:27
6:49:27
6:49:27
6:49:27
6:49:27.1
6:49:27
6:49:27.1
6:49:27.11
6:49:27
6:49:27.1
6:49:27.11
6:49:27.105
6:49:27
6:49:27.1
6:49:27.11
6:49:27.105
6:49:27.1053
6:49:27
6:49:27.1
6:49:27.11
6:49:27.105
6:49:27.1053
6:49:27.10533
6:49:27
6:49:27.1
6:49:27.11
6:49:27.105
6:49:27.1053
6:49:27.10533
6:49:27.105330
0 06:49
0 06:49
0 06:49:27
0 06:49:27
0 06:49:27
0 06:49:27
0 06:49:27.1
0 06:49:27
0 06:49:27.1
0 06:49:27.11
0 06:49:27
0 06:49:27.1
0 06:49:27.11
0 06:49:27.105
0 06:49:27
0 06:49:27.1
0 06:49:27.11
0 06:49:27.105
0 06:49:27.1053
0 06:49:27
0 06:49:27.1
0 06:49:27.11
0 06:49:27.105
0 06:49:27.1053
0 06:49:27.10533
0 06:49:27
0 06:49:27.1
0 06:49:27.11
0 06:49:27.105
0 06:49:27.1053
0 06:49:27.10533
0 06:49:27.105330
2:57
2:57
2:57:52
2:57:52
2:57:52
2:57:52
2:57:52.5
2:57:52
2:57:52.5
2:57:52.48
2:57:52
2:57:52.5
2:57:52.48
2:57:52.482
2:57:52
2:57:52.5
2:57:52.48
2:57:52.482
2:57:52.4823
2:57:52
2:57:52.5
2:57:52.48
2:57:52.482
2:57:52.4823
2:57:52.48229
2:57:52
2:57:52.5
2:57:52.48
2:57:52.482
2:57:52.4823
2:57:52.48229
2:57:52.482290
0 02:57
0 02:57
0 02:57:52
0 02:57:52
0 02:57:52
0 02:57:52
0 02:57:52.5
0 02:57:52
0 02:57:52.5
0 02:57:52.48
0 02:57:52
0 02:57:52.5
0 02:57:52.48
0 02:57:52.482
0 02:57:52
0 02:57:52.5
0 02:57:52.48
0 02:57:52.482
0 02:57:52.4823
0 02:57:52
0 02:57:52.5
0 02:57:52.48
0 02:57:52.482
0 02:57:52.4823
0 02:57:52.48229
0 02:57:52
0 02:57:52.5
0 02:57:52.48
0 02:57:52.482
0 02:57:52.4823
0 02:57:52.48229
0 02:57:52.482290
16:45
16:45
16:45
16:45:44
16:45:44
16:45:44
16:45:44.7
16:45:44
16:45:44.7
16:45:44.66
16:45:44
16:45:44.7
16:45:44.66
16:45:44.658
16:45:44
16:45:44.7
16:45:44.66
16:45:44.658
16:45:44.6583
16:45:44
16:45:44.7
16:45:44.66
16:45:44.658
16:45:44.6583
16:45:44.65827
16:45:44
16:45:44.7
16:45:44.66
16:45:44.658
16:45:44.6583
16:45:44.65827
16:45:44.658270
0 16:45
0 16:45
0 16:45:44
0 16:45:44
0 16:45:44
0 16:45:44
0 16:45:44.7
0 16:45:44
0 16:45:44.7
0 16:45:44.66
0 16:45:44
0 16:45:44.7
0 16:45:44.66
0 16:45:44.658
0 16:45:44
0 16:45:44.7
0 16:45:44.66
0 16:45:44.658
0 16:45:44.6583
0 16:45:44
0 16:45:44.7
0 16:45:44.66
0 16:45:44.658
0 16:45:44.6583
0 16:45:44.65827
0 16:45:44
0 16:45:44.7
0 16:45:44.66
0 16:45:44.658
0 16:45:44.6583
0 16:45:44.65827
0 16:45:44.658270
21:30
21:30
21:30
21:30:57
21:30:57
21:30:57
21:30:57.6
21:30:57
21:30:57.6
21:30:57.58
21:30:57
21:30:57.6
21:30:57.58
21:30:57.582
21:30:57
21:30:57.6
21:30:57.58
21:30:57.582
21:30:57.5822
21:30:57
21:30:57.6
21:30:57.58
21:30:57.582
21:30:57.5822
21:30:57.58219
21:30:57
21:30:57.6
21:30:57.58
21:30:57.582
21:30:57.5822
21:30:57.58219
21:30:57.582190
0 21:30
0 21:30
0 21:30:57
0 21:30:57
0 21:30:57
0 21:30:57
0 21:30:57.6
0 21:30:57
0 21:30:57.6
0 21:30:57.58
0 21:30:57
0 21:30:57.6
0 21:30:57.58
0 21:30:57.582
0 21:30:57
0 21:30:57.6
0 21:30:57.58
0 21:30:57.582
0 21:30:57.5822
0 21:30:57
0 21:30:57.6
0 21:30:57.58
0 21:30:57.582
0 21:30:57.5822
0 21:30:57.58219
0 21:30:57
0 21:30:57.6
0 21:30:57.58
0 21:30:57.582
0 21:30:57.5822
0 21:30:57.58219
0 21:30:57.582190
22:30
22:30
22:30
22:30:04
22:30:04
22:30:04
22:30:04.2
22:30:04
22:30:04.2
22:30:04.18
22:30:04
22:30:04.2
22:30:04.18
22:30:04.183
22:30:04
22:30:04.2
22:30:04.18
22:30:04.183
22:30:04.1835
22:30:04
22:30:04.2
22:30:04.18
22:30:04.183
22:30:04.1835
22:30:04.18347
22:30:04
22:30:04.2
22:30:04.18
22:30:04.183
22:30:04.1835
22:30:04.18347
22:30:04.183470
0 22:30
0 22:30
0 22:30:04
0 22:30:04
0 22:30:04
0 22:30:04
0 22:30:04.2
0 22:30:04
0 22:30:04.2
0 22:30:04.18
0 22:30:04
0 22:30:04.2
0 22:30:04.18
0 22:30:04.183
0 22:30:04
0 22:30:04.2
0 22:30:04.18
0 22:30:04.183
0 22:30:04.1835
0 22:30:04
0 22:30:04.2
0 22:30:04.18
0 22:30:04.183
0 22:30:04.1835
0 22:30:04.18347
0 22:30:04
0 22:30:04.2
0 22:30:04.18
0 22:30:04.183
0 22:30:04.1835
0 22:30:04.18347
0 22:30:04.183470
1:56
1:56
1:56:51
1:56:51
1:56:51
1:56:51
1:56:51.6
1:56:51
1:56:51.6
1:56:51.59
1:56:51
1:56:51.6
1:56:51.59
1:56:51.593
1:56:51
1:56:51.6
1:56:51.59
1:56:51.593
1:56:51.5932
1:56:51
1:56:51.6
1:56:51.59
1:56:51.593
1:56:51.5932
1:56:51.59319
1:56:51
1:56:51.6
1:56:51.59
1:56:51.593
1:56:51.5932
1:56:51.59319
1:56:51.593190
0 01:56
0 01:56
0 01:56:51
0 01:56:51
0 01:56:51
0 01:56:51
0 01:56:51.6
0 01:56:51
0 01:56:51.6
0 01:56:51.59
0 01:56:51
0 01:56:51.6
0 01:56:51.59
0 01:56:51.593
0 01:56:51
0 01:56:51.6
0 01:56:51.59
0 01:56:51.593
0 01:56:51.5932
0 01:56:51
0 01:56:51.6
0 01:56:51.59
0 01:56:51.593
0 01:56:51.5932
0 01:56:51.59319
0 01:56:51
0 01:56:51.6
0 01:56:51.59
0 01:56:51.593
0 01:56:51.5932
0 01:56:51.59319
0 01:56:51.593190
24:00
24:00
24:00
24:00:00
24:00:00
24:00:00
24:00:00.0
24:00:00
24:00:00.0
24:00:00.00
24:00:00
24:00:00.0
24:00:00.00
24:00:00.000
24:00:00
24:00:00.0
24:00:00.00
24:00:00.000
24:00:00.0000
24:00:00
24:00:00.0
24:00:00.00
24:00:00.000
24:00:00.0000
24:00:00.00000
24:00:00
24:00:00.0
24:00:00.00
24:00:00.000
24:00:00.0000
24:00:00.00000
24:00:00.000000
1 00:00
1 00:00
1 00:00:00
1 00:00:00
1 00:00:00
1 00:00:00
1 00:00:00.0
1 00:00:00
1 00:00:00.0
1 00:00:00.00
1 00:00:00
1 00:00:00.0
1 00:00:00.00
1 00:00:00.000
1 00:00:00
1 00:00:00.0
1 00:00:00.00
1 00:00:00.000
1 00:00:00.0000
1 00:00:00
1 00:00:00.0
1 00:00:00.00
1 00:00:00.000
1 00:00:00.0000
1 00:00:00.00000
1 00:00:00
1 00:00:00.0
1 00:00:00.00
1 00:00:00.000
1 00:00:00.0000
1 00:00:00.00000
1 00:00:00.000000
28:50
28:50
28:50
28:50:38
28:50:38
28:50:38
28:50:38.1
28:50:38
28:50:38.1
28:50:38.12
28:50:38
28:50:38.1
28:50:38.12
28:50:38.123
28:50:38
28:50:38.1
28:50:38.12
28:50:38.123
28:50:38.1230
28:50:38
28:50:38.1
28:50:38.12
28:50:38.123
28:50:38.1230
28:50:38.12301
28:50:38
28:50:38.1
28:50:38.12
28:50:38.123
28:50:38.1230
28:50:38.12301
28:50:38.123010
1 04:50
1 04:50
1 04:50:38
1 04:50:38
1 04:50:38
1 04:50:38
1 04:50:38.1
1 04:50:38
1 04:50:38.1
1 04:50:38.12
1 04:50:38
1 04:50:38.1
1 04:50:38.12
1 04:50:38.123
1 04:50:38
1 04:50:38.1
1 04:50:38.12
1 04:50:38.123
1 04:50:38.1230
1 04:50:38
1 04:50:38.1
1 04:50:38.12
1 04:50:38.123
1 04:50:38.1230
1 04:50:38.12301
1 04:50:38
1 04:50:38.1
1 04:50:38.12
1 04:50:38.123
1 04:50:38.1230
1 04:50:38.12301
1 04:50:38.123010
36:31
36:31
36:31
36:31:35
36:31:35
36:31:35
36:31:35.2
36:31:35
36:31:35.2
36:31:35.23
36:31:35
36:31:35.2
36:31:35.23
36:31:35.235
36:31:35
36:31:35.2
36:31:35.23
36:31:35.235
36:31:35.2345
36:31:35
36:31:35.2
36:31:35.23
36:31:35.235
36:31:35.2345
36:31:35.23453
36:31:35
36:31:35.2
36:31:35.23
36:31:35.235
36:31:35.2345
36:31:35.23453
36:31:35.234530
1 12:31
1 12:31
1 12:31:35
1 12:31:35
1 12:31:35
1 12:31:35
1 12:31:35.2
1 12:31:35
1 12:31:35.2
1 12:31:35.23
1 12:31:35
1 12:31:35.2
1 12:31:35.23
1 12:31:35.235
1 12:31:35
1 12:31:35.2
1 12:31:35.23
1 12:31:35.235
1 12:31:35.2345
1 12:31:35
1 12:31:35.2
1 12:31:35.23
1 12:31:35.235
1 12:31:35.2345
1 12:31:35.23453
1 12:31:35
1 12:31:35.2
1 12:31:35.23
1 12:31:35.235
1 12:31:35.2345
1 12:31:35.23453
1 12:31:35.234530
36:47
36:47
36:47
36:47:53
36:47:53
36:47:53
36:47:53.3
36:47:53
36:47:53.3
36:47:53.35
36:47:53
36:47:53.3
36:47:53.35
36:47:53.345
36:47:53
36:47:53.3
36:47:53.35
36:47:53.345
36:47:53.3451
36:47:53
36:47:53.3
36:47:53.35
36:47:53.345
36:47:53.3451
36:47:53.34505
36:47:53
36:47:53.3
36:47:53.35
36:47:53.345
36:47:53.3451
36:47:53.34505
36:47:53.345050
1 12:47
1 12:47
1 12:47:53
1 12:47:53
1 12:47:53
1 12:47:53
1 12:47:53.3
1 12:47:53
1 12:47:53.3
1 12:47:53.35
1 12:47:53
1 12:47:53.3
1 12:47:53.35
1 12:47:53.345
1 12:47:53
1 12:47:53.3
1 12:47:53.35
1 12:47:53.345
1 12:47:53.3451
1 12:47:53
1 12:47:53.3
1 12:47:53.35
1 12:47:53.345
1 12:47:53.3451
1 12:47:53.34505
1 12:47:53
1 12:47:53.3
1 12:47:53.35
1 12:47:53.345
1 12:47:53.3451
1 12:47:53.34505
1 12:47:53.345050
25:26
25:26
25:26
25:26:00
25:26:00
25:26:00
25:26:00.5
25:26:00
25:26:00.5
25:26:00.46
25:26:00
25:26:00.5
25:26:00.46
25:26:00.456
25:26:00
25:26:00.5
25:26:00.46
25:26:00.456
25:26:00.4561
25:26:00
25:26:00.5
25:26:00.46
25:26:00.456
25:26:00.4561
25:26:00.45615
25:26:00
25:26:00.5
25:26:00.46
25:26:00.456
25:26:00.4561
25:26:00.45615
25:26:00.456150
1 01:26
1 01:26
1 01:26:00
1 01:26:00
1 01:26:00
1 01:26:00
1 01:26:00.5
1 01:26:00
1 01:26:00.5
1 01:26:00.46
1 01:26:00
1 01:26:00.5
1 01:26:00.46
1 01:26:00.456
1 01:26:00
1 01:26:00.5
1 01:26:00.46
1 01:26:00.456
1 01:26:00.4561
1 01:26:00
1 01:26:00.5
1 01:26:00.46
1 01:26:00.456
1 01:26:00.4561
1 01:26:00.45615
1 01:26:00
1 01:26:00.5
1 01:26:00.46
1 01:26:00.456
1 01:26:00.4561
1 01:26:00.45615
1 01:26:00.456150
44:58
44:58
44:58
44:58:11
44:58:11
44:58:11
44:58:11.6
44:58:11
44:58:11.6
44:58:11.57
44:58:11
44:58:11.6
44:58:11.57
44:58:11.567
44:58:11
44:58:11.6
44:58:11.57
44:58:11.567
44:58:11.5668
44:58:11
44:58:11.6
44:58:11.57
44:58:11.567
44:58:11.5668
44:58:11.56677
44:58:11
44:58:11.6
44:58:11.57
44:58:11.567
44:58:11.5668
44:58:11.56677
44:58:11.566770
1 20:58
1 20:58
1 20:58:11
1 20:58:11
1 20:58:11
1 20:58:11
1 20:58:11.6
1 20:58:11
1 20:58:11.6
1 20:58:11.57
1 20:58:11
1 20:58:11.6
1 20:58:11.57
1 20:58:11.567
1 20:58:11
1 20:58:11.6
1 20:58:11.57
1 20:58:11.567
1 20:58:11.5668
1 20:58:11
1 20:58:11.6
1 20:58:11.57
1 20:58:11.567
1 20:58:11.5668
1 20:58:11.56677
1 20:58:11
1 20:58:11.6
1 20:58:11.57
1 20:58:11.567
1 20:58:11.5668
1 20:58:11.56677
1 20:58:11.566770
31:36
31:36
31:36
31:36:05
31:36:05
31:36:05
31:36:05.2
31:36:05
31:36:05.2
31:36:05.19
31:36:05
31:36:05.2
31:36:05.19
31:36:05.190
31:36:05
31:36:05.2
31:36:05.19
31:36:05.190
31:36:05.1896
31:36:05
31:36:05.2
31:36:05.19
31:36:05.190
31:36:05.1896
31:36:05.18964
31:36:05
31:36:05.2
31:36:05.19
31:36:05.190
31:36:05.1896
31:36:05.18964
31:36:05.189640
1 07:36
1 07:36
1 07:36:05
1 07:36:05
1 07:36:05
1 07:36:05
1 07:36:05.2
1 07:36:05
1 07:36:05.2
1 07:36:05.19
1 07:36:05
1 07:36:05.2
1 07:36:05.19
1 07:36:05.190
1 07:36:05
1 07:36:05.2
1 07:36:05.19
1 07:36:05.190
1 07:36:05.1896
1 07:36:05
1 07:36:05.2
1 07:36:05.19
1 07:36:05.190
1 07:36:05.1896
1 07:36:05.18964
1 07:36:05
1 07:36:05.2
1 07:36:05.19
1 07:36:05.190
1 07:36:05.1896
1 07:36:05.18964
1 07:36:05.189640
39:43
39:43
39:43
39:43:49
39:43:49
39:43:49
39:43:49.8
39:43:49
39:43:49.8
39:43:49.83
39:43:49
39:43:49.8
39:43:49.83
39:43:49.831
39:43:49
39:43:49.8
39:43:49.83
39:43:49.831
39:43:49.8313
39:43:49
39:43:49.8
39:43:49.83
39:43:49.831
39:43:49.8313
39:43:49.83132
39:43:49
39:43:49.8
39:43:49.83
39:43:49.831
39:43:49.8313
39:43:49.83132
39:43:49.831320
1 15:43
1 15:43
1 15:43:49
1 15:43:49
1 15:43:49
1 15:43:49
1 15:43:49.8
1 15:43:49
1 15:43:49.8
1 15:43:49.83
1 15:43:49
1 15:43:49.8
1 15:43:49.83
1 15:43:49.831
1 15:43:49
1 15:43:49.8
1 15:43:49.83
1 15:43:49.831
1 15:43:49.8313
1 15:43:49
1 15:43:49.8
1 15:43:49.83
1 15:43:49.831
1 15:43:49.8313
1 15:43:49.83132
1 15:43:49
1 15:43:49.8
1 15:43:49.83
1 15:43:49.831
1 15:43:49.8313
1 15:43:49.83132
1 15:43:49.831320
28:25
28:25
28:25
28:25:09
28:25:09
28:25:09
28:25:09.0
28:25:09
28:25:09.0
28:25:09.01
28:25:09
28:25:09.0
28:25:09.01
28:25:09.013
28:25:09
28:25:09.0
28:25:09.01
28:25:09.013
28:25:09.0129
28:25:09
28:25:09.0
28:25:09.01
28:25:09.013
28:25:09.0129
28:25:09.01293
28:25:09
28:25:09.0
28:25:09.01
28:25:09.013
28:25:09.0129
28:25:09.01293
28:25:09.012930
1 04:25
1 04:25
1 04:25:09
1 04:25:09
1 04:25:09
1 04:25:09
1 04:25:09.0
1 04:25:09
1 04:25:09.0
1 04:25:09.01
1 04:25:09
1 04:25:09.0
1 04:25:09.01
1 04:25:09.013
1 04:25:09
1 04:25:09.0
1 04:25:09.01
1 04:25:09.013
1 04:25:09.0129
1 04:25:09
1 04:25:09.0
1 04:25:09.01
1 04:25:09.013
1 04:25:09.0129
1 04:25:09.01293
1 04:25:09
1 04:25:09.0
1 04:25:09.01
1 04:25:09.013
1 04:25:09.0129
1 04:25:09.01293
1 04:25:09.012930
30:49
30:49
30:49
30:49:27
30:49:27
30:49:27
30:49:27.5
30:49:27
30:49:27.5
30:49:27.52
30:49:27
30:49:27.5
30:49:27.52
30:49:27.524
30:49:27
30:49:27.5
30:49:27.52
30:49:27.524
30:49:27.5237
30:49:27
30:49:27.5
30:49:27.52
30:49:27.524
30:49:27.5237
30:49:27.52375
30:49:27
30:49:27.5
30:49:27.52
30:49:27.524
30:49:27.5237
30:49:27.52375
30:49:27.523750
1 06:49
1 06:49
1 06:49:27
1 06:49:27
1 06:49:27
1 06:49:27
1 06:49:27.5
1 06:49:27
1 06:49:27.5
1 06:49:27.52
1 06:49:27
1 06:49:27.5
1 06:49:27.52
1 06:49:27.524
1 06:49:27
1 06:49:27.5
1 06:49:27.52
1 06:49:27.524
1 06:49:27.5237
1 06:49:27
1 06:49:27.5
1 06:49:27.52
1 06:49:27.524
1 06:49:27.5237
1 06:49:27.52375
1 06:49:27
1 06:49:27.5
1 06:49:27.52
1 06:49:27.524
1 06:49:27.5237
1 06:49:27.52375
1 06:49:27.523750
26:57
26:57
26:57
26:57:52
26:57:52
26:57:52
26:57:52.0
26:57:52
26:57:52.0
26:57:52.02
26:57:52
26:57:52.0
26:57:52.02
26:57:52.016
26:57:52
26:57:52.0
26:57:52.02
26:57:52.016
26:57:52.0157
26:57:52
26:57:52.0
26:57:52.02
26:57:52.016
26:57:52.0157
26:57:52.01565
26:57:52
26:57:52.0
26:57:52.02
26:57:52.016
26:57:52.0157
26:57:52.01565
26:57:52.015650
1 02:57
1 02:57
1 02:57:52
1 02:57:52
1 02:57:52
1 02:57:52
1 02:57:52.0
1 02:57:52
1 02:57:52.0
1 02:57:52.02
1 02:57:52
1 02:57:52.0
1 02:57:52.02
1 02:57:52.016
1 02:57:52
1 02:57:52.0
1 02:57:52.02
1 02:57:52.016
1 02:57:52.0157
1 02:57:52
1 02:57:52.0
1 02:57:52.02
1 02:57:52.016
1 02:57:52.0157
1 02:57:52.01565
1 02:57:52
1 02:57:52.0
1 02:57:52.02
1 02:57:52.016
1 02:57:52.0157
1 02:57:52.01565
1 02:57:52.015650
40:45
40:45
40:45
40:45:44
40:45:44
40:45:44
40:45:44.9
40:45:44
40:45:44.9
40:45:44.87
40:45:44
40:45:44.9
40:45:44.87
40:45:44.865
40:45:44
40:45:44.9
40:45:44.87
40:45:44.865
40:45:44.8653
40:45:44
40:45:44.9
40:45:44.87
40:45:44.865
40:45:44.8653
40:45:44.86529
40:45:44
40:45:44.9
40:45:44.87
40:45:44.865
40:45:44.8653
40:45:44.86529
40:45:44.865290
1 16:45
1 16:45
1 16:45:44
1 16:45:44
1 16:45:44
1 16:45:44
1 16:45:44.9
1 16:45:44
1 16:45:44.9
1 16:45:44.87
1 16:45:44
1 16:45:44.9
1 16:45:44.87
1 16:45:44.865
1 16:45:44
1 16:45:44.9
1 16:45:44.87
1 16:45:44.865
1 16:45:44.8653
1 16:45:44
1 16:45:44.9
1 16:45:44.87
1 16:45:44.865
1 16:45:44.8653
1 16:45:44.86529
1 16:45:44
1 16:45:44.9
1 16:45:44.87
1 16:45:44.865
1 16:45:44.8653
1 16:45:44.86529
1 16:45:44.865290
45:30
45:30
45:30
45:30:57
45:30:57
45:30:57
45:30:57.8
45:30:57
45:30:57.8
45:30:57.82
45:30:57
45:30:57.8
45:30:57.82
45:30:57.820
45:30:57
45:30:57.8
45:30:57.82
45:30:57.820
45:30:57.8205
45:30:57
45:30:57.8
45:30:57.82
45:30:57.820
45:30:57.8205
45:30:57.82047
45:30:57
45:30:57.8
45:30:57.82
45:30:57.820
45:30:57.8205
45:30:57.82047
45:30:57.820470
1 21:30
1 21:30
1 21:30:57
1 21:30:57
1 21:30:57
1 21:30:57
1 21:30:57.8
1 21:30:57
1 21:30:57.8
1 21:30:57.82
1 21:30:57
1 21:30:57.8
1 21:30:57.82
1 21:30:57.820
1 21:30:57
1 21:30:57.8
1 21:30:57.82
1 21:30:57.820
1 21:30:57.8205
1 21:30:57
1 21:30:57.8
1 21:30:57.82
1 21:30:57.820
1 21:30:57.8205
1 21:30:57.82047
1 21:30:57
1 21:30:57.8
1 21:30:57.82
1 21:30:57.820
1 21:30:57.8205
1 21:30:57.82047
1 21:30:57.820470
28:25
28:25
28:25
28:25:09
28:25:09
28:25:09
28:25:09.2
28:25:09
28:25:09.2
28:25:09.15
28:25:09
28:25:09.2
28:25:09.15
28:25:09.154
28:25:09
28:25:09.2
28:25:09.15
28:25:09.154
28:25:09.1540
28:25:09
28:25:09.2
28:25:09.15
28:25:09.154
28:25:09.1540
28:25:09.15395
28:25:09
28:25:09.2
28:25:09.15
28:25:09.154
28:25:09.1540
28:25:09.15395
28:25:09.153950
1 04:25
1 04:25
1 04:25:09
1 04:25:09
1 04:25:09
1 04:25:09
1 04:25:09.2
1 04:25:09
1 04:25:09.2
1 04:25:09.15
1 04:25:09
1 04:25:09.2
1 04:25:09.15
1 04:25:09.154
1 04:25:09
1 04:25:09.2
1 04:25:09.15
1 04:25:09.154
1 04:25:09.1540
1 04:25:09
1 04:25:09.2
1 04:25:09.15
1 04:25:09.154
1 04:25:09.1540
1 04:25:09.15395
1 04:25:09
1 04:25:09.2
1 04:25:09.15
1 04:25:09.154
1 04:25:09.1540
1 04:25:09.15395
1 04:25:09.153950
30:49
30:49
30:49
30:49:27
30:49:27
30:49:27
30:49:27.1
30:49:27
30:49:27.1
30:49:27.11
30:49:27
30:49:27.1
30:49:27.11
30:49:27.105
30:49:27
30:49:27.1
30:49:27.11
30:49:27.105
30:49:27.1053
30:49:27
30:49:27.1
30:49:27.11
30:49:27.105
30:49:27.1053
30:49:27.10533
30:49:27
30:49:27.1
30:49:27.11
30:49:27.105
30:49:27.1053
30:49:27.10533
30:49:27.105330
1 06:49
1 06:49
1 06:49:27
1 06:49:27
1 06:49:27
1 06:49:27
1 06:49:27.1
1 06:49:27
1 06:49:27.1
1 06:49:27.11
1 06:49:27
1 06:49:27.1
1 06:49:27.11
1 06:49:27.105
1 06:49:27
1 06:49:27.1
1 06:49:27.11
1 06:49:27.105
1 06:49:27.1053
1 06:49:27
1 06:49:27.1
1 06:49:27.11
1 06:49:27.105
1 06:49:27.1053
1 06:49:27.10533
1 06:49:27
1 06:49:27.1
1 06:49:27.11
1 06:49:27.105
1 06:49:27.1053
1 06:49:27.10533
1 06:49:27.105330
26:57
26:57
26:57
26:57:52
26:57:52
26:57:52
26:57:52.5
26:57:52
26:57:52.5
26:57:52.48
26:57:52
26:57:52.5
26:57:52.48
26:57:52.482
26:57:52
26:57:52.5
26:57:52.48
26:57:52.482
26:57:52.4823
26:57:52
26:57:52.5
26:57:52.48
26:57:52.482
26:57:52.4823
26:57:52.48229
26:57:52
26:57:52.5
26:57:52.48
26:57:52.482
26:57:52.4823
26:57:52.48229
26:57:52.482290
1 02:57
1 02:57
1 02:57:52
1 02:57:52
1 02:57:52
1 02:57:52
1 02:57:52.5
1 02:57:52
1 02:57:52.5
1 02:57:52.48
1 02:57:52
1 02:57:52.5
1 02:57:52.48
1 02:57:52.482
1 02:57:52
1 02:57:52.5
1 02:57:52.48
1 02:57:52.482
1 02:57:52.4823
1 02:57:52
1 02:57:52.5
1 02:57:52.48
1 02:57:52.482
1 02:57:52.4823
1 02:57:52.48229
1 02:57:52
1 02:57:52.5
1 02:57:52.48
1 02:57:52.482
1 02:57:52.4823
1 02:57:52.48229
1 02:57:52.482290
40:45
40:45
40:45
40:45:44
40:45:44
40:45:44
40:45:44.7
40:45:44
40:45:44.7
40:45:44.66
40:45:44
40:45:44.7
40:45:44.66
40:45:44.658
40:45:44
40:45:44.7
40:45:44.66
40:45:44.658
40:45:44.6583
40:45:44
40:45:44.7
40:45:44.66
40:45:44.658
40:45:44.6583
40:45:44.65827
40:45:44
40:45:44.7
40:45:44.66
40:45:44.658
40:45:44.6583
40:45:44.65827
40:45:44.658270
1 16:45
1 16:45
1 16:45:44
1 16:45:44
1 16:45:44
1 16:45:44
1 16:45:44.7
1 16:45:44
1 16:45:44.7
1 16:45:44.66
1 16:45:44
1 16:45:44.7
1 16:45:44.66
1 16:45:44.658
1 16:45:44
1 16:45:44.7
1 16:45:44.66
1 16:45:44.658
1 16:45:44.6583
1 16:45:44
1 16:45:44.7
1 16:45:44.66
1 16:45:44.658
1 16:45:44.6583
1 16:45:44.65827
1 16:45:44
1 16:45:44.7
1 16:45:44.66
1 16:45:44.658
1 16:45:44.6583
1 16:45:44.65827
1 16:45:44.658270
45:30
45:30
45:30
45:30:57
45:30:57
45:30:57
45:30:57.6
45:30:57
45:30:57.6
45:30:57.58
45:30:57
45:30:57.6
45:30:57.58
45:30:57.582
45:30:57
45:30:57.6
45:30:57.58
45:30:57.582
45:30:57.5822
45:30:57
45:30:57.6
45:30:57.58
45:30:57.582
45:30:57.5822
45:30:57.58219
45:30:57
45:30:57.6
45:30:57.58
45:30:57.582
45:30:57.5822
45:30:57.58219
45:30:57.582190
1 21:30
1 21:30
1 21:30:57
1 21:30:57
1 21:30:57
1 21:30:57
1 21:30:57.6
1 21:30:57
1 21:30:57.6
1 21:30:57.58
1 21:30:57
1 21:30:57.6
1 21:30:57.58
1 21:30:57.582
1 21:30:57
1 21:30:57.6
1 21:30:57.58
1 21:30:57.582
1 21:30:57.5822
1 21:30:57
1 21:30:57.6
1 21:30:57.58
1 21:30:57.582
1 21:30:57.5822
1 21:30:57.58219
1 21:30:57
1 21:30:57.6
1 21:30:57.58
1 21:30:57.582
1 21:30:57.5822
1 21:30:57.58219
1 21:30:57.582190
46:30
46:30
46:30
46:30:04
46:30:04
46:30:04
46:30:04.2
46:30:04
46:30:04.2
46:30:04.18
46:30:04
46:30:04.2
46:30:04.18
46:30:04.183
46:30:04
46:30:04.2
46:30:04.18
46:30:04.183
46:30:04.1835
46:30:04
46:30:04.2
46:30:04.18
46:30:04.183
46:30:04.1835
46:30:04.18347
46:30:04
46:30:04.2
46:30:04.18
46:30:04.183
46:30:04.1835
46:30:04.18347
46:30:04.183470
1 22:30
1 22:30
1 22:30:04
1 22:30:04
1 22:30:04
1 22:30:04
1 22:30:04.2
1 22:30:04
1 22:30:04.2
1 22:30:04.18
1 22:30:04
1 22:30:04.2
1 22:30:04.18
1 22:30:04.183
1 22:30:04
1 22:30:04.2
1 22:30:04.18
1 22:30:04.183
1 22:30:04.1835
1 22:30:04
1 22:30:04.2
1 22:30:04.18
1 22:30:04.183
1 22:30:04.1835
1 22:30:04.18347
1 22:30:04
1 22:30:04.2
1 22:30:04.18
1 22:30:04.183
1 22:30:04.1835
1 22:30:04.18347
1 22:30:04.183470
25:56
25:56
25:56
25:56:51
25:56:51
25:56:51
25:56:51.6
25:56:51
25:56:51.6
25:56:51.59
25:56:51
25:56:51.6
25:56:51.59
25:56:51.593
25:56:51
25:56:51.6
25:56:51.59
25:56:51.593
25:56:51.5932
25:56:51
25:56:51.6
25:56:51.59
25:56:51.593
25:56:51.5932
25:56:51.59319
25:56:51
25:56:51.6
25:56:51.59
25:56:51.593
25:56:51.5932
25:56:51.59319
25:56:51.593190
1 01:56
1 01:56
1 01:56:51
1 01:56:51
1 01:56:51
1 01:56:51
1 01:56:51.6
1 01:56:51
1 01:56:51.6
1 01:56:51.59
1 01:56:51
1 01:56:51.6
1 01:56:51.59
1 01:56:51.593
1 01:56:51
1 01:56:51.6
1 01:56:51.59
1 01:56:51.593
1 01:56:51.5932
1 01:56:51
1 01:56:51.6
1 01:56:51.59
1 01:56:51.593
1 01:56:51.5932
1 01:56:51.59319
1 01:56:51
1 01:56:51.6
1 01:56:51.59
1 01:56:51.593
1 01:56:51.5932
1 01:56:51.59319
1 01:56:51.593190
48:00
48:00
48:00
48:00:00
48:00:00
48:00:00
48:00:00.0
48:00:00
48:00:00.0
48:00:00.00
48:00:00
48:00:00.0
48:00:00.00
48:00:00.000
48:00:00
48:00:00.0
48:00:00.00
48:00:00.000
48:00:00.0000
48:00:00
48:00:00.0
48:00:00.00
48:00:00.000
48:00:00.0000
48:00:00.00000
48:00:00
48:00:00.0
48:00:00.00
48:00:00.000
48:00:00.0000
48:00:00.00000
48:00:00.000000
2 00:00
2 00:00
2 00:00:00
2 00:00:00
2 00:00:00
2 00:00:00
2 00:00:00.0
2 00:00:00
2 00:00:00.0
2 00:00:00.00
2 00:00:00
2 00:00:00.0
2 00:00:00.00
2 00:00:00.000
2 00:00:00
2 00:00:00.0
2 00:00:00.00
2 00:00:00.000
2 00:00:00.0000
2 00:00:00
2 00:00:00.0
2 00:00:00.00
2 00:00:00.000
2 00:00:00.0000
2 00:00:00.00000
2 00:00:00
2 00:00:00.0
2 00:00:00.00
2 00:00:00.000
2 00:00:00.0000
2 00:00:00.00000
2 00:00:00.000000
52:50
52:50
52:50
52:50:38
52:50:38
52:50:38
52:50:38.1
52:50:38
52:50:38.1
52:50:38.12
52:50:38
52:50:38.1
52:50:38.12
52:50:38.123
52:50:38
52:50:38.1
52:50:38.12
52:50:38.123
52:50:38.1230
52:50:38
52:50:38.1
52:50:38.12
52:50:38.123
52:50:38.1230
52:50:38.12301
52:50:38
52:50:38.1
52:50:38.12
52:50:38.123
52:50:38.1230
52:50:38.12301
52:50:38.123010
2 04:50
2 04:50
2 04:50:38
2 04:50:38
2 04:50:38
2 04:50:38
2 04:50:38.1
2 04:50:38
2 04:50:38.1
2 04:50:38.12
2 04:50:38
2 04:50:38.1
2 04:50:38.12
2 04:50:38.123
2 04:50:38
2 04:50:38.1
2 04:50:38.12
2 04:50:38.123
2 04:50:38.1230
2 04:50:38
2 04:50:38.1
2 04:50:38.12
2 04:50:38.123
2 04:50:38.1230
2 04:50:38.12301
2 04:50:38
2 04:50:38.1
2 04:50:38.12
2 04:50:38.123
2 04:50:38.1230
2 04:50:38.12301
2 04:50:38.123010
60:31
60:31
60:31
60:31:35
60:31:35
60:31:35
60:31:35.2
60:31:35
60:31:35.2
60:31:35.23
60:31:35
60:31:35.2
60:31:35.23
60:31:35.235
60:31:35
60:31:35.2
60:31:35.23
60:31:35.235
60:31:35.2345
60:31:35
60:31:35.2
60:31:35.23
60:31:35.235
60:31:35.2345
60:31:35.23453
60:31:35
60:31:35.2
60:31:35.23
60:31:35.235
60:31:35.2345
60:31:35.23453
60:31:35.234530
2 12:31
2 12:31
2 12:31:35
2 12:31:35
2 12:31:35
2 12:31:35
2 12:31:35.2
2 12:31:35
2 12:31:35.2
2 12:31:35.23
2 12:31:35
2 12:31:35.2
2 12:31:35.23
2 12:31:35.235
2 12:31:35
2 12:31:35.2
2 12:31:35.23
2 12:31:35.235
2 12:31:35.2345
2 12:31:35
2 12:31:35.2
2 12:31:35.23
2 12:31:35.235
2 12:31:35.2345
2 12:31:35.23453
2 12:31:35
2 12:31:35.2
2 12:31:35.23
2 12:31:35.235
2 12:31:35.2345
2 12:31:35.23453
2 12:31:35.234530
60:47
60:47
60:47
60:47:53
60:47:53
60:47:53
60:47:53.3
60:47:53
60:47:53.3
60:47:53.35
60:47:53
60:47:53.3
60:47:53.35
60:47:53.345
60:47:53
60:47:53.3
60:47:53.35
60:47:53.345
60:47:53.3451
60:47:53
60:47:53.3
60:47:53.35
60:47:53.345
60:47:53.3451
60:47:53.34505
60:47:53
60:47:53.3
60:47:53.35
60:47:53.345
60:47:53.3451
60:47:53.34505
60:47:53.345050
2 12:47
2 12:47
2 12:47:53
2 12:47:53
2 12:47:53
2 12:47:53
2 12:47:53.3
2 12:47:53
2 12:47:53.3
2 12:47:53.35
2 12:47:53
2 12:47:53.3
2 12:47:53.35
2 12:47:53.345
2 12:47:53
2 12:47:53.3
2 12:47:53.35
2 12:47:53.345
2 12:47:53.3451
2 12:47:53
2 12:47:53.3
2 12:47:53.35
2 12:47:53.345
2 12:47:53.3451
2 12:47:53.34505
2 12:47:53
2 12:47:53.3
2 12:47:53.35
2 12:47:53.345
2 12:47:53.3451
2 12:47:53.34505
2 12:47:53.345050
49:26
49:26
49:26
49:26:00
49:26:00
49:26:00
49:26:00.5
49:26:00
49:26:00.5
49:26:00.46
49:26:00
49:26:00.5
49:26:00.46
49:26:00.456
49:26:00
49:26:00.5
49:26:00.46
49:26:00.456
49:26:00.4562
49:26:00
49:26:00.5
49:26:00.46
49:26:00.456
49:26:00.4562
49:26:00.45615
49:26:00
49:26:00.5
49:26:00.46
49:26:00.456
49:26:00.4562
49:26:00.45615
49:26:00.456150
2 01:26
2 01:26
2 01:26:00
2 01:26:00
2 01:26:00
2 01:26:00
2 01:26:00.5
2 01:26:00
2 01:26:00.5
2 01:26:00.46
2 01:26:00
2 01:26:00.5
2 01:26:00.46
2 01:26:00.456
2 01:26:00
2 01:26:00.5
2 01:26:00.46
2 01:26:00.456
2 01:26:00.4562
2 01:26:00
2 01:26:00.5
2 01:26:00.46
2 01:26:00.456
2 01:26:00.4562
2 01:26:00.45615
2 01:26:00
2 01:26:00.5
2 01:26:00.46
2 01:26:00.456
2 01:26:00.4562
2 01:26:00.45615
2 01:26:00.456150
68:58
68:58
68:58
68:58:11
68:58:11
68:58:11
68:58:11.6
68:58:11
68:58:11.6
68:58:11.57
68:58:11
68:58:11.6
68:58:11.57
68:58:11.567
68:58:11
68:58:11.6
68:58:11.57
68:58:11.567
68:58:11.5668
68:58:11
68:58:11.6
68:58:11.57
68:58:11.567
68:58:11.5668
68:58:11.56677
68:58:11
68:58:11.6
68:58:11.57
68:58:11.567
68:58:11.5668
68:58:11.56677
68:58:11.566770
2 20:58
2 20:58
2 20:58:11
2 20:58:11
2 20:58:11
2 20:58:11
2 20:58:11.6
2 20:58:11
2 20:58:11.6
2 20:58:11.57
2 20:58:11
2 20:58:11.6
2 20:58:11.57
2 20:58:11.567
2 20:58:11
2 20:58:11.6
2 20:58:11.57
2 20:58:11.567
2 20:58:11.5668
2 20:58:11
2 20:58:11.6
2 20:58:11.57
2 20:58:11.567
2 20:58:11.5668
2 20:58:11.56677
2 20:58:11
2 20:58:11.6
2 20:58:11.57
2 20:58:11.567
2 20:58:11.5668
2 20:58:11.56677
2 20:58:11.566770
55:36
55:36
55:36
55:36:05
55:36:05
55:36:05
55:36:05.2
55:36:05
55:36:05.2
55:36:05.19
55:36:05
55:36:05.2
55:36:05.19
55:36:05.190
55:36:05
55:36:05.2
55:36:05.19
55:36:05.190
55:36:05.1896
55:36:05
55:36:05.2
55:36:05.19
55:36:05.190
55:36:05.1896
55:36:05.18964
55:36:05
55:36:05.2
55:36:05.19
55:36:05.190
55:36:05.1896
55:36:05.18964
55:36:05.189640
2 07:36
2 07:36
2 07:36:05
2 07:36:05
2 07:36:05
2 07:36:05
2 07:36:05.2
2 07:36:05
2 07:36:05.2
2 07:36:05.19
2 07:36:05
2 07:36:05.2
2 07:36:05.19
2 07:36:05.190
2 07:36:05
2 07:36:05.2
2 07:36:05.19
2 07:36:05.190
2 07:36:05.1896
2 07:36:05
2 07:36:05.2
2 07:36:05.19
2 07:36:05.190
2 07:36:05.1896
2 07:36:05.18964
2 07:36:05
2 07:36:05.2
2 07:36:05.19
2 07:36:05.190
2 07:36:05.1896
2 07:36:05.18964
2 07:36:05.189640
63:43
63:43
63:43
63:43:49
63:43:49
63:43:49
63:43:49.8
63:43:49
63:43:49.8
63:43:49.83
63:43:49
63:43:49.8
63:43:49.83
63:43:49.831
63:43:49
63:43:49.8
63:43:49.83
63:43:49.831
63:43:49.8313
63:43:49
63:43:49.8
63:43:49.83
63:43:49.831
63:43:49.8313
63:43:49.83132
63:43:49
63:43:49.8
63:43:49.83
63:43:49.831
63:43:49.8313
63:43:49.83132
63:43:49.831320
2 15:43
2 15:43
2 15:43:49
2 15:43:49
2 15:43:49
2 15:43:49
2 15:43:49.8
2 15:43:49
2 15:43:49.8
2 15:43:49.83
2 15:43:49
2 15:43:49.8
2 15:43:49.83
2 15:43:49.831
2 15:43:49
2 15:43:49.8
2 15:43:49.83
2 15:43:49.831
2 15:43:49.8313
2 15:43:49
2 15:43:49.8
2 15:43:49.83
2 15:43:49.831
2 15:43:49.8313
2 15:43:49.83132
2 15:43:49
2 15:43:49.8
2 15:43:49.83
2 15:43:49.831
2 15:43:49.8313
2 15:43:49.83132
2 15:43:49.831320
52:25
52:25
52:25
52:25:09
52:25:09
52:25:09
52:25:09.0
52:25:09
52:25:09.0
52:25:09.01
52:25:09
52:25:09.0
52:25:09.01
52:25:09.013
52:25:09
52:25:09.0
52:25:09.01
52:25:09.013
52:25:09.0129
52:25:09
52:25:09.0
52:25:09.01
52:25:09.013
52:25:09.0129
52:25:09.01293
52:25:09
52:25:09.0
52:25:09.01
52:25:09.013
52:25:09.0129
52:25:09.01293
52:25:09.012930
2 04:25
2 04:25
2 04:25:09
2 04:25:09
2 04:25:09
2 04:25:09
2 04:25:09.0
2 04:25:09
2 04:25:09.0
2 04:25:09.01
2 04:25:09
2 04:25:09.0
2 04:25:09.01
2 04:25:09.013
2 04:25:09
2 04:25:09.0
2 04:25:09.01
2 04:25:09.013
2 04:25:09.0129
2 04:25:09
2 04:25:09.0
2 04:25:09.01
2 04:25:09.013
2 04:25:09.0129
2 04:25:09.01293
2 04:25:09
2 04:25:09.0
2 04:25:09.01
2 04:25:09.013
2 04:25:09.0129
2 04:25:09.01293
2 04:25:09.012930
54:49
54:49
54:49
54:49:27
54:49:27
54:49:27
54:49:27.5
54:49:27
54:49:27.5
54:49:27.52
54:49:27
54:49:27.5
54:49:27.52
54:49:27.524
54:49:27
54:49:27.5
54:49:27.52
54:49:27.524
54:49:27.5237
54:49:27
54:49:27.5
54:49:27.52
54:49:27.524
54:49:27.5237
54:49:27.52375
54:49:27
54:49:27.5
54:49:27.52
54:49:27.524
54:49:27.5237
54:49:27.52375
54:49:27.523750
2 06:49
2 06:49
2 06:49:27
2 06:49:27
2 06:49:27
2 06:49:27
2 06:49:27.5
2 06:49:27
2 06:49:27.5
2 06:49:27.52
2 06:49:27
2 06:49:27.5
2 06:49:27.52
2 06:49:27.524
2 06:49:27
2 06:49:27.5
2 06:49:27.52
2 06:49:27.524
2 06:49:27.5237
2 06:49:27
2 06:49:27.5
2 06:49:27.52
2 06:49:27.524
2 06:49:27.5237
2 06:49:27.52375
2 06:49:27
2 06:49:27.5
2 06:49:27.52
2 06:49:27.524
2 06:49:27.5237
2 06:49:27.52375
2 06:49:27.523750
50:57
50:57
50:57
50:57:52
50:57:52
50:57:52
50:57:52.0
50:57:52
50:57:52.0
50:57:52.02
50:57:52
50:57:52.0
50:57:52.02
50:57:52.016
50:57:52
50:57:52.0
50:57:52.02
50:57:52.016
50:57:52.0156
50:57:52
50:57:52.0
50:57:52.02
50:57:52.016
50:57:52.0156
50:57:52.01565
50:57:52
50:57:52.0
50:57:52.02
50:57:52.016
50:57:52.0156
50:57:52.01565
50:57:52.015650
2 02:57
2 02:57
2 02:57:52
2 02:57:52
2 02:57:52
2 02:57:52
2 02:57:52.0
2 02:57:52
2 02:57:52.0
2 02:57:52.02
2 02:57:52
2 02:57:52.0
2 02:57:52.02
2 02:57:52.016
2 02:57:52
2 02:57:52.0
2 02:57:52.02
2 02:57:52.016
2 02:57:52.0156
2 02:57:52
2 02:57:52.0
2 02:57:52.02
2 02:57:52.016
2 02:57:52.0156
2 02:57:52.01565
2 02:57:52
2 02:57:52.0
2 02:57:52.02
2 02:57:52.016
2 02:57:52.0156
2 02:57:52.01565
2 02:57:52.015650
64:45
64:45
64:45
64:45:44
64:45:44
64:45:44
64:45:44.9
64:45:44
64:45:44.9
64:45:44.87
64:45:44
64:45:44.9
64:45:44.87
64:45:44.865
64:45:44
64:45:44.9
64:45:44.87
64:45:44.865
64:45:44.8653
64:45:44
64:45:44.9
64:45:44.87
64:45:44.865
64:45:44.8653
64:45:44.86529
64:45:44
64:45:44.9
64:45:44.87
64:45:44.865
64:45:44.8653
64:45:44.86529
64:45:44.865290
2 16:45
2 16:45
2 16:45:44
2 16:45:44
2 16:45:44
2 16:45:44
2 16:45:44.9
2 16:45:44
2 16:45:44.9
2 16:45:44.87
2 16:45:44
2 16:45:44.9
2 16:45:44.87
2 16:45:44.865
2 16:45:44
2 16:45:44.9
2 16:45:44.87
2 16:45:44.865
2 16:45:44.8653
2 16:45:44
2 16:45:44.9
2 16:45:44.87
2 16:45:44.865
2 16:45:44.8653
2 16:45:44.86529
2 16:45:44
2 16:45:44.9
2 16:45:44.87
2 16:45:44.865
2 16:45:44.8653
2 16:45:44.86529
2 16:45:44.865290
69:30
69:30
69:30
69:30:57
69:30:57
69:30:57
69:30:57.8
69:30:57
69:30:57.8
69:30:57.82
69:30:57
69:30:57.8
69:30:57.82
69:30:57.820
69:30:57
69:30:57.8
69:30:57.82
69:30:57.820
69:30:57.8205
69:30:57
69:30:57.8
69:30:57.82
69:30:57.820
69:30:57.8205
69:30:57.82047
69:30:57
69:30:57.8
69:30:57.82
69:30:57.820
69:30:57.8205
69:30:57.82047
69:30:57.820470
2 21:30
2 21:30
2 21:30:57
2 21:30:57
2 21:30:57
2 21:30:57
2 21:30:57.8
2 21:30:57
2 21:30:57.8
2 21:30:57.82
2 21:30:57
2 21:30:57.8
2 21:30:57.82
2 21:30:57.820
2 21:30:57
2 21:30:57.8
2 21:30:57.82
2 21:30:57.820
2 21:30:57.8205
2 21:30:57
2 21:30:57.8
2 21:30:57.82
2 21:30:57.820
2 21:30:57.8205
2 21:30:57.82047
2 21:30:57
2 21:30:57.8
2 21:30:57.82
2 21:30:57.820
2 21:30:57.8205
2 21:30:57.82047
2 21:30:57.820470
52:25
52:25
52:25
52:25:09
52:25:09
52:25:09
52:25:09.2
52:25:09
52:25:09.2
52:25:09.15
52:25:09
52:25:09.2
52:25:09.15
52:25:09.154
52:25:09
52:25:09.2
52:25:09.15
52:25:09.154
52:25:09.1540
52:25:09
52:25:09.2
52:25:09.15
52:25:09.154
52:25:09.1540
52:25:09.15395
52:25:09
52:25:09.2
52:25:09.15
52:25:09.154
52:25:09.1540
52:25:09.15395
52:25:09.153950
2 04:25
2 04:25
2 04:25:09
2 04:25:09
2 04:25:09
2 04:25:09
2 04:25:09.2
2 04:25:09
2 04:25:09.2
2 04:25:09.15
2 04:25:09
2 04:25:09.2
2 04:25:09.15
2 04:25:09.154
2 04:25:09
2 04:25:09.2
2 04:25:09.15
2 04:25:09.154
2 04:25:09.1540
2 04:25:09
2 04:25:09.2
2 04:25:09.15
2 04:25:09.154
2 04:25:09.1540
2 04:25:09.15395
2 04:25:09
2 04:25:09.2
2 04:25:09.15
2 04:25:09.154
2 04:25:09.1540
2 04:25:09.15395
2 04:25:09.153950
54:49
54:49
54:49
54:49:27
54:49:27
54:49:27
54:49:27.1
54:49:27
54:49:27.1
54:49:27.11
54:49:27
54:49:27.1
54:49:27.11
54:49:27.105
54:49:27
54:49:27.1
54:49:27.11
54:49:27.105
54:49:27.1053
54:49:27
54:49:27.1
54:49:27.11
54:49:27.105
54:49:27.1053
54:49:27.10533
54:49:27
54:49:27.1
54:49:27.11
54:49:27.105
54:49:27.1053
54:49:27.10533
54:49:27.105330
2 06:49
2 06:49
2 06:49:27
2 06:49:27
2 06:49:27
2 06:49:27
2 06:49:27.1
2 06:49:27
2 06:49:27.1
2 06:49:27.11
2 06:49:27
2 06:49:27.1
2 06:49:27.11
2 06:49:27.105
2 06:49:27
2 06:49:27.1
2 06:49:27.11
2 06:49:27.105
2 06:49:27.1053
2 06:49:27
2 06:49:27.1
2 06:49:27.11
2 06:49:27.105
2 06:49:27.1053
2 06:49:27.10533
2 06:49:27
2 06:49:27.1
2 06:49:27.11
2 06:49:27.105
2 06:49:27.1053
2 06:49:27.10533
2 06:49:27.105330
50:57
50:57
50:57
50:57:52
50:57:52
50:57:52
50:57:52.5
50:57:52
50:57:52.5
50:57:52.48
50:57:52
50:57:52.5
50:57:52.48
50:57:52.482
50:57:52
50:57:52.5
50:57:52.48
50:57:52.482
50:57:52.4823
50:57:52
50:57:52.5
50:57:52.48
50:57:52.482
50:57:52.4823
50:57:52.48229
50:57:52
50:57:52.5
50:57:52.48
50:57:52.482
50:57:52.4823
50:57:52.48229
50:57:52.482290
2 02:57
2 02:57
2 02:57:52
2 02:57:52
2 02:57:52
2 02:57:52
2 02:57:52.5
2 02:57:52
2 02:57:52.5
2 02:57:52.48
2 02:57:52
2 02:57:52.5
2 02:57:52.48
2 02:57:52.482
2 02:57:52
2 02:57:52.5
2 02:57:52.48
2 02:57:52.482
2 02:57:52.4823
2 02:57:52
2 02:57:52.5
2 02:57:52.48
2 02:57:52.482
2 02:57:52.4823
2 02:57:52.48229
2 02:57:52
2 02:57:52.5
2 02:57:52.48
2 02:57:52.482
2 02:57:52.4823
2 02:57:52.48229
2 02:57:52.482290
64:45
64:45
64:45
64:45:44
64:45:44
64:45:44
64:45:44.7
64:45:44
64:45:44.7
64:45:44.66
64:45:44
64:45:44.7
64:45:44.66
64:45:44.658
64:45:44
64:45:44.7
64:45:44.66
64:45:44.658
64:45:44.6583
64:45:44
64:45:44.7
64:45:44.66
64:45:44.658
64:45:44.6583
64:45:44.65827
64:45:44
64:45:44.7
64:45:44.66
64:45:44.658
64:45:44.6583
64:45:44.65827
64:45:44.658270
2 16:45
2 16:45
2 16:45:44
2 16:45:44
2 16:45:44
2 16:45:44
2 16:45:44.7
2 16:45:44
2 16:45:44.7
2 16:45:44.66
2 16:45:44
2 16:45:44.7
2 16:45:44.66
2 16:45:44.658
2 16:45:44
2 16:45:44.7
2 16:45:44.66
2 16:45:44.658
2 16:45:44.6583
2 16:45:44
2 16:45:44.7
2 16:45:44.66
2 16:45:44.658
2 16:45:44.6583
2 16:45:44.65827
2 16:45:44
2 16:45:44.7
2 16:45:44.66
2 16:45:44.658
2 16:45:44.6583
2 16:45:44.65827
2 16:45:44.658270
69:30
69:30
69:30
69:30:57
69:30:57
69:30:57
69:30:57.6
69:30:57
69:30:57.6
69:30:57.58
69:30:57
69:30:57.6
69:30:57.58
69:30:57.582
69:30:57
69:30:57.6
69:30:57.58
69:30:57.582
69:30:57.5822
69:30:57
69:30:57.6
69:30:57.58
69:30:57.582
69:30:57.5822
69:30:57.58219
69:30:57
69:30:57.6
69:30:57.58
69:30:57.582
69:30:57.5822
69:30:57.58219
69:30:57.582190
2 21:30
2 21:30
2 21:30:57
2 21:30:57
2 21:30:57
2 21:30:57
2 21:30:57.6
2 21:30:57
2 21:30:57.6
2 21:30:57.58
2 21:30:57
2 21:30:57.6
2 21:30:57.58
2 21:30:57.582
2 21:30:57
2 21:30:57.6
2 21:30:57.58
2 21:30:57.582
2 21:30:57.5822
2 21:30:57
2 21:30:57.6
2 21:30:57.58
2 21:30:57.582
2 21:30:57.5822
2 21:30:57.58219
2 21:30:57
2 21:30:57.6
2 21:30:57.58
2 21:30:57.582
2 21:30:57.5822
2 21:30:57.58219
2 21:30:57.582190
70:30
70:30
70:30
70:30:04
70:30:04
70:30:04
70:30:04.2
70:30:04
70:30:04.2
70:30:04.18
70:30:04
70:30:04.2
70:30:04.18
70:30:04.183
70:30:04
70:30:04.2
70:30:04.18
70:30:04.183
70:30:04.1835
70:30:04
70:30:04.2
70:30:04.18
70:30:04.183
70:30:04.1835
70:30:04.18347
70:30:04
70:30:04.2
70:30:04.18
70:30:04.183
70:30:04.1835
70:30:04.18347
70:30:04.183470
2 22:30
2 22:30
2 22:30:04
2 22:30:04
2 22:30:04
2 22:30:04
2 22:30:04.2
2 22:30:04
2 22:30:04.2
2 22:30:04.18
2 22:30:04
2 22:30:04.2
2 22:30:04.18
2 22:30:04.183
2 22:30:04
2 22:30:04.2
2 22:30:04.18
2 22:30:04.183
2 22:30:04.1835
2 22:30:04
2 22:30:04.2
2 22:30:04.18
2 22:30:04.183
2 22:30:04.1835
2 22:30:04.18347
2 22:30:04
2 22:30:04.2
2 22:30:04.18
2 22:30:04.183
2 22:30:04.1835
2 22:30:04.18347
2 22:30:04.183470
49:56
49:56
49:56
49:56:51
49:56:51
49:56:51
49:56:51.6
49:56:51
49:56:51.6
49:56:51.59
49:56:51
49:56:51.6
49:56:51.59
49:56:51.593
49:56:51
49:56:51.6
49:56:51.59
49:56:51.593
49:56:51.5932
49:56:51
49:56:51.6
49:56:51.59
49:56:51.593
49:56:51.5932
49:56:51.59319
49:56:51
49:56:51.6
49:56:51.59
49:56:51.593
49:56:51.5932
49:56:51.59319
49:56:51.593190
2 01:56
2 01:56
2 01:56:51
2 01:56:51
2 01:56:51
2 01:56:51
2 01:56:51.6
2 01:56:51
2 01:56:51.6
2 01:56:51.59
2 01:56:51
2 01:56:51.6
2 01:56:51.59
2 01:56:51.593
2 01:56:51
2 01:56:51.6
2 01:56:51.59
2 01:56:51.593
2 01:56:51.5932
2 01:56:51
2 01:56:51.6
2 01:56:51.59
2 01:56:51.593
2 01:56:51.5932
2 01:56:51.59319
2 01:56:51
2 01:56:51.6
2 01:56:51.59
2 01:56:51.593
2 01:56:51.5932
2 01:56:51.59319
2 01:56:51.593190
*****
******
1296:00
1296:00
1296:00
1296:00:00
1296:00:00
1296:00:00
1296:00:00
1296:00:00
1296:00:00
1296:00:00.0
1296:00:00.0
1296:00:00.0
1296:00:00
1296:00:00.0
1296:00:00.00
1296:00:00.00
1296:00:00.00
1296:00:00
1296:00:00.0
1296:00:00.00
1296:00:00.000
1296:00:00.000
1296:00:00.000
1296:00:00
1296:00:00.0
1296:00:00.00
1296:00:00.000
1296:00:00.0000
1296:00:00.0000
1296:00:00.0000
54 00:00
54 00:00
54 00:00
54 00:00:00
54 00:00:00
54 00:00:00
54 00:00:00.0
54 00:00:00
54 00:00:00.0
54 00:00:00.00
54 00:00:00
54 00:00:00.0
54 00:00:00.00
54 00:00:00.000
54 00:00:00
54 00:00:00.0
54 00:00:00.00
54 00:00:00.000
54 00:00:00.0000
54 00:00:00
54 00:00:00.0
54 00:00:00.00
54 00:00:00.000
54 00:00:00.0000
54 00:00:00.00000
54 00:00:00
54 00:00:00.0
54 00:00:00.00
54 00:00:00.000
54 00:00:00.0000
54 00:00:00.00000
54 00:00:00.000000
*****
******
1300:50
1300:50
1300:50
1300:50:38
1300:50:38
1300:50:38
1300:50:38
1300:50:38
1300:50:38
1300:50:38.1
1300:50:38.1
1300:50:38.1
1300:50:38
1300:50:38.1
1300:50:38.12
1300:50:38.12
1300:50:38.12
1300:50:38
1300:50:38.1
1300:50:38.12
1300:50:38.123
1300:50:38.123
1300:50:38.123
1300:50:38
1300:50:38.1
1300:50:38.12
1300:50:38.123
1300:50:38.1230
1300:50:38.1230
1300:50:38.1230
54 04:50
54 04:50
54 04:50
54 04:50:38
54 04:50:38
54 04:50:38
54 04:50:38.1
54 04:50:38
54 04:50:38.1
54 04:50:38.12
54 04:50:38
54 04:50:38.1
54 04:50:38.12
54 04:50:38.123
54 04:50:38
54 04:50:38.1
54 04:50:38.12
54 04:50:38.123
54 04:50:38.1230
54 04:50:38
54 04:50:38.1
54 04:50:38.12
54 04:50:38.123
54 04:50:38.1230
54 04:50:38.12301
54 04:50:38
54 04:50:38.1
54 04:50:38.12
54 04:50:38.123
54 04:50:38.1230
54 04:50:38.12301
54 04:50:38.123010
*****
******
1308:31
1308:31
1308:31
1308:31:35
1308:31:35
1308:31:35
1308:31:35
1308:31:35
1308:31:35
1308:31:35.2
1308:31:35.2
1308:31:35.2
1308:31:35
1308:31:35.2
1308:31:35.23
1308:31:35.23
1308:31:35.23
1308:31:35
1308:31:35.2
1308:31:35.23
1308:31:35.235
1308:31:35.235
1308:31:35.235
1308:31:35
1308:31:35.2
1308:31:35.23
1308:31:35.235
1308:31:35.2345
1308:31:35.2345
1308:31:35.2345
54 12:31
54 12:31
54 12:31
54 12:31:35
54 12:31:35
54 12:31:35
54 12:31:35.2
54 12:31:35
54 12:31:35.2
54 12:31:35.23
54 12:31:35
54 12:31:35.2
54 12:31:35.23
54 12:31:35.235
54 12:31:35
54 12:31:35.2
54 12:31:35.23
54 12:31:35.235
54 12:31:35.2345
54 12:31:35
54 12:31:35.2
54 12:31:35.23
54 12:31:35.235
54 12:31:35.2345
54 12:31:35.23453
54 12:31:35
54 12:31:35.2
54 12:31:35.23
54 12:31:35.235
54 12:31:35.2345
54 12:31:35.23453
54 12:31:35.234530
*****
******
1308:47
1308:47
1308:47
1308:47:53
1308:47:53
1308:47:53
1308:47:53
1308:47:53
1308:47:53
1308:47:53.3
1308:47:53.3
1308:47:53.3
1308:47:53
1308:47:53.3
1308:47:53.35
1308:47:53.35
1308:47:53.35
1308:47:53
1308:47:53.3
1308:47:53.35
1308:47:53.345
1308:47:53.345
1308:47:53.345
1308:47:53
1308:47:53.3
1308:47:53.35
1308:47:53.345
1308:47:53.3450
1308:47:53.3450
1308:47:53.3450
54 12:47
54 12:47
54 12:47
54 12:47:53
54 12:47:53
54 12:47:53
54 12:47:53.3
54 12:47:53
54 12:47:53.3
54 12:47:53.35
54 12:47:53
54 12:47:53.3
54 12:47:53.35
54 12:47:53.345
54 12:47:53
54 12:47:53.3
54 12:47:53.35
54 12:47:53.345
54 12:47:53.3450
54 12:47:53
54 12:47:53.3
54 12:47:53.35
54 12:47:53.345
54 12:47:53.3450
54 12:47:53.34505
54 12:47:53
54 12:47:53.3
54 12:47:53.35
54 12:47:53.345
54 12:47:53.3450
54 12:47:53.34505
54 12:47:53.345050
*****
******
1297:26
1297:26
1297:26
1297:26:00
1297:26:00
1297:26:00
1297:26:00
1297:26:00
1297:26:00
1297:26:00.5
1297:26:00.5
1297:26:00.5
1297:26:00
1297:26:00.5
1297:26:00.46
1297:26:00.46
1297:26:00.46
1297:26:00
1297:26:00.5
1297:26:00.46
1297:26:00.456
1297:26:00.456
1297:26:00.456
1297:26:00
1297:26:00.5
1297:26:00.46
1297:26:00.456
1297:26:00.4561
1297:26:00.4561
1297:26:00.4561
54 01:26
54 01:26
54 01:26
54 01:26:00
54 01:26:00
54 01:26:00
54 01:26:00.5
54 01:26:00
54 01:26:00.5
54 01:26:00.46
54 01:26:00
54 01:26:00.5
54 01:26:00.46
54 01:26:00.456
54 01:26:00
54 01:26:00.5
54 01:26:00.46
54 01:26:00.456
54 01:26:00.4561
54 01:26:00
54 01:26:00.5
54 01:26:00.46
54 01:26:00.456
54 01:26:00.4561
54 01:26:00.45615
54 01:26:00
54 01:26:00.5
54 01:26:00.46
54 01:26:00.456
54 01:26:00.4561
54 01:26:00.45615
54 01:26:00.456150
*****
******
1316:58
1316:58
1316:58
1316:58:11
1316:58:11
1316:58:11
1316:58:11
1316:58:11
1316:58:11
1316:58:11.6
1316:58:11.6
1316:58:11.6
1316:58:11
1316:58:11.6
1316:58:11.57
1316:58:11.57
1316:58:11.57
1316:58:11
1316:58:11.6
1316:58:11.57
1316:58:11.567
1316:58:11.567
1316:58:11.567
1316:58:11
1316:58:11.6
1316:58:11.57
1316:58:11.567
1316:58:11.5668
1316:58:11.5668
1316:58:11.5668
54 20:58
54 20:58
54 20:58
54 20:58:11
54 20:58:11
54 20:58:11
54 20:58:11.6
54 20:58:11
54 20:58:11.6
54 20:58:11.57
54 20:58:11
54 20:58:11.6
54 20:58:11.57
54 20:58:11.567
54 20:58:11
54 20:58:11.6
54 20:58:11.57
54 20:58:11.567
54 20:58:11.5668
54 20:58:11
54 20:58:11.6
54 20:58:11.57
54 20:58:11.567
54 20:58:11.5668
54 20:58:11.56677
54 20:58:11
54 20:58:11.6
54 20:58:11.57
54 20:58:11.567
54 20:58:11.5668
54 20:58:11.56677
54 20:58:11.566770
*****
******
1303:36
1303:36
1303:36
1303:36:05
1303:36:05
1303:36:05
1303:36:05
1303:36:05
1303:36:05
1303:36:05.2
1303:36:05.2
1303:36:05.2
1303:36:05
1303:36:05.2
1303:36:05.19
1303:36:05.19
1303:36:05.19
1303:36:05
1303:36:05.2
1303:36:05.19
1303:36:05.190
1303:36:05.190
1303:36:05.190
1303:36:05
1303:36:05.2
1303:36:05.19
1303:36:05.190
1303:36:05.1896
1303:36:05.1896
1303:36:05.1896
54 07:36
54 07:36
54 07:36
54 07:36:05
54 07:36:05
54 07:36:05
54 07:36:05.2
54 07:36:05
54 07:36:05.2
54 07:36:05.19
54 07:36:05
54 07:36:05.2
54 07:36:05.19
54 07:36:05.190
54 07:36:05
54 07:36:05.2
54 07:36:05.19
54 07:36:05.190
54 07:36:05.1896
54 07:36:05
54 07:36:05.2
54 07:36:05.19
54 07:36:05.190
54 07:36:05.1896
54 07:36:05.18964
54 07:36:05
54 07:36:05.2
54 07:36:05.19
54 07:36:05.190
54 07:36:05.1896
54 07:36:05.18964
54 07:36:05.189640
*****
******
1311:43
1311:43
1311:43
1311:43:49
1311:43:49
1311:43:49
1311:43:49
1311:43:49
1311:43:49
1311:43:49.8
1311:43:49.8
1311:43:49.8
1311:43:49
1311:43:49.8
1311:43:49.83
1311:43:49.83
1311:43:49.83
1311:43:49
1311:43:49.8
1311:43:49.83
1311:43:49.831
1311:43:49.831
1311:43:49.831
1311:43:49
1311:43:49.8
1311:43:49.83
1311:43:49.831
1311:43:49.8313
1311:43:49.8313
1311:43:49.8313
54 15:43
54 15:43
54 15:43
54 15:43:49
54 15:43:49
54 15:43:49
54 15:43:49.8
54 15:43:49
54 15:43:49.8
54 15:43:49.83
54 15:43:49
54 15:43:49.8
54 15:43:49.83
54 15:43:49.831
54 15:43:49
54 15:43:49.8
54 15:43:49.83
54 15:43:49.831
54 15:43:49.8313
54 15:43:49
54 15:43:49.8
54 15:43:49.83
54 15:43:49.831
54 15:43:49.8313
54 15:43:49.83132
54 15:43:49
54 15:43:49.8
54 15:43:49.83
54 15:43:49.831
54 15:43:49.8313
54 15:43:49.83132
54 15:43:49.831320
*****
******
1300:25
1300:25
1300:25
1300:25:09
1300:25:09
1300:25:09
1300:25:09
1300:25:09
1300:25:09
1300:25:09.0
1300:25:09.0
1300:25:09.0
1300:25:09
1300:25:09.0
1300:25:09.01
1300:25:09.01
1300:25:09.01
1300:25:09
1300:25:09.0
1300:25:09.01
1300:25:09.013
1300:25:09.013
1300:25:09.013
1300:25:09
1300:25:09.0
1300:25:09.01
1300:25:09.013
1300:25:09.0129
1300:25:09.0129
1300:25:09.0129
54 04:25
54 04:25
54 04:25
54 04:25:09
54 04:25:09
54 04:25:09
54 04:25:09.0
54 04:25:09
54 04:25:09.0
54 04:25:09.01
54 04:25:09
54 04:25:09.0
54 04:25:09.01
54 04:25:09.013
54 04:25:09
54 04:25:09.0
54 04:25:09.01
54 04:25:09.013
54 04:25:09.0129
54 04:25:09
54 04:25:09.0
54 04:25:09.01
54 04:25:09.013
54 04:25:09.0129
54 04:25:09.01293
54 04:25:09
54 04:25:09.0
54 04:25:09.01
54 04:25:09.013
54 04:25:09.0129
54 04:25:09.01293
54 04:25:09.012930
*****
******
1302:49
1302:49
1302:49
1302:49:27
1302:49:27
1302:49:27
1302:49:27
1302:49:27
1302:49:27
1302:49:27.5
1302:49:27.5
1302:49:27.5
1302:49:27
1302:49:27.5
1302:49:27.52
1302:49:27.52
1302:49:27.52
1302:49:27
1302:49:27.5
1302:49:27.52
1302:49:27.524
1302:49:27.524
1302:49:27.524
1302:49:27
1302:49:27.5
1302:49:27.52
1302:49:27.524
1302:49:27.5237
1302:49:27.5237
1302:49:27.5237
54 06:49
54 06:49
54 06:49
54 06:49:27
54 06:49:27
54 06:49:27
54 06:49:27.5
54 06:49:27
54 06:49:27.5
54 06:49:27.52
54 06:49:27
54 06:49:27.5
54 06:49:27.52
54 06:49:27.524
54 06:49:27
54 06:49:27.5
54 06:49:27.52
54 06:49:27.524
54 06:49:27.5237
54 06:49:27
54 06:49:27.5
54 06:49:27.52
54 06:49:27.524
54 06:49:27.5237
54 06:49:27.52375
54 06:49:27
54 06:49:27.5
54 06:49:27.52
54 06:49:27.524
54 06:49:27.5237
54 06:49:27.52375
54 06:49:27.523750
*****
******
1298:57
1298:57
1298:57
1298:57:52
1298:57:52
1298:57:52
1298:57:52
1298:57:52
1298:57:52
1298:57:52.0
1298:57:52.0
1298:57:52.0
1298:57:52
1298:57:52.0
1298:57:52.02
1298:57:52.02
1298:57:52.02
1298:57:52
1298:57:52.0
1298:57:52.02
1298:57:52.016
1298:57:52.016
1298:57:52.016
1298:57:52
1298:57:52.0
1298:57:52.02
1298:57:52.016
1298:57:52.0157
1298:57:52.0157
1298:57:52.0157
54 02:57
54 02:57
54 02:57
54 02:57:52
54 02:57:52
54 02:57:52
54 02:57:52.0
54 02:57:52
54 02:57:52.0
54 02:57:52.02
54 02:57:52
54 02:57:52.0
54 02:57:52.02
54 02:57:52.016
54 02:57:52
54 02:57:52.0
54 02:57:52.02
54 02:57:52.016
54 02:57:52.0157
54 02:57:52
54 02:57:52.0
54 02:57:52.02
54 02:57:52.016
54 02:57:52.0157
54 02:57:52.01565
54 02:57:52
54 02:57:52.0
54 02:57:52.02
54 02:57:52.016
54 02:57:52.0157
54 02:57:52.01565
54 02:57:52.015650
*****
******
1312:45
1312:45
1312:45
1312:45:44
1312:45:44
1312:45:44
1312:45:44
1312:45:44
1312:45:44
1312:45:44.9
1312:45:44.9
1312:45:44.9
1312:45:44
1312:45:44.9
1312:45:44.87
1312:45:44.87
1312:45:44.87
1312:45:44
1312:45:44.9
1312:45:44.87
1312:45:44.865
1312:45:44.865
1312:45:44.865
1312:45:44
1312:45:44.9
1312:45:44.87
1312:45:44.865
1312:45:44.8653
1312:45:44.8653
1312:45:44.8653
54 16:45
54 16:45
54 16:45
54 16:45:44
54 16:45:44
54 16:45:44
54 16:45:44.9
54 16:45:44
54 16:45:44.9
54 16:45:44.87
54 16:45:44
54 16:45:44.9
54 16:45:44.87
54 16:45:44.865
54 16:45:44
54 16:45:44.9
54 16:45:44.87
54 16:45:44.865
54 16:45:44.8653
54 16:45:44
54 16:45:44.9
54 16:45:44.87
54 16:45:44.865
54 16:45:44.8653
54 16:45:44.86529
54 16:45:44
54 16:45:44.9
54 16:45:44.87
54 16:45:44.865
54 16:45:44.8653
54 16:45:44.86529
54 16:45:44.865290
*****
******
1317:30
1317:30
1317:30
1317:30:57
1317:30:57
1317:30:57
1317:30:57
1317:30:57
1317:30:57
1317:30:57.8
1317:30:57.8
1317:30:57.8
1317:30:57
1317:30:57.8
1317:30:57.82
1317:30:57.82
1317:30:57.82
1317:30:57
1317:30:57.8
1317:30:57.82
1317:30:57.820
1317:30:57.820
1317:30:57.820
1317:30:57
1317:30:57.8
1317:30:57.82
1317:30:57.820
1317:30:57.8205
1317:30:57.8205
1317:30:57.8205
54 21:30
54 21:30
54 21:30
54 21:30:57
54 21:30:57
54 21:30:57
54 21:30:57.8
54 21:30:57
54 21:30:57.8
54 21:30:57.82
54 21:30:57
54 21:30:57.8
54 21:30:57.82
54 21:30:57.820
54 21:30:57
54 21:30:57.8
54 21:30:57.82
54 21:30:57.820
54 21:30:57.8205
54 21:30:57
54 21:30:57.8
54 21:30:57.82
54 21:30:57.820
54 21:30:57.8205
54 21:30:57.82047
54 21:30:57
54 21:30:57.8
54 21:30:57.82
54 21:30:57.820
54 21:30:57.8205
54 21:30:57.82047
54 21:30:57.820470
*****
******
1300:25
1300:25
1300:25
1300:25:09
1300:25:09
1300:25:09
1300:25:09
1300:25:09
1300:25:09
1300:25:09.2
1300:25:09.2
1300:25:09.2
1300:25:09
1300:25:09.2
1300:25:09.15
1300:25:09.15
1300:25:09.15
1300:25:09
1300:25:09.2
1300:25:09.15
1300:25:09.154
1300:25:09.154
1300:25:09.154
1300:25:09
1300:25:09.2
1300:25:09.15
1300:25:09.154
1300:25:09.1540
1300:25:09.1540
1300:25:09.1540
54 04:25
54 04:25
54 04:25
54 04:25:09
54 04:25:09
54 04:25:09
54 04:25:09.2
54 04:25:09
54 04:25:09.2
54 04:25:09.15
54 04:25:09
54 04:25:09.2
54 04:25:09.15
54 04:25:09.154
54 04:25:09
54 04:25:09.2
54 04:25:09.15
54 04:25:09.154
54 04:25:09.1540
54 04:25:09
54 04:25:09.2
54 04:25:09.15
54 04:25:09.154
54 04:25:09.1540
54 04:25:09.15395
54 04:25:09
54 04:25:09.2
54 04:25:09.15
54 04:25:09.154
54 04:25:09.1540
54 04:25:09.15395
54 04:25:09.153950
*****
******
1302:49
1302:49
1302:49
1302:49:27
1302:49:27
1302:49:27
1302:49:27
1302:49:27
1302:49:27
1302:49:27.1
1302:49:27.1
1302:49:27.1
1302:49:27
1302:49:27.1
1302:49:27.11
1302:49:27.11
1302:49:27.11
1302:49:27
1302:49:27.1
1302:49:27.11
1302:49:27.105
1302:49:27.105
1302:49:27.105
1302:49:27
1302:49:27.1
1302:49:27.11
1302:49:27.105
1302:49:27.1053
1302:49:27.1053
1302:49:27.1053
54 06:49
54 06:49
54 06:49
54 06:49:27
54 06:49:27
54 06:49:27
54 06:49:27.1
54 06:49:27
54 06:49:27.1
54 06:49:27.11
54 06:49:27
54 06:49:27.1
54 06:49:27.11
54 06:49:27.105
54 06:49:27
54 06:49:27.1
54 06:49:27.11
54 06:49:27.105
54 06:49:27.1053
54 06:49:27
54 06:49:27.1
54 06:49:27.11
54 06:49:27.105
54 06:49:27.1053
54 06:49:27.10533
54 06:49:27
54 06:49:27.1
54 06:49:27.11
54 06:49:27.105
54 06:49:27.1053
54 06:49:27.10533
54 06:49:27.105330
*****
******
1298:57
1298:57
1298:57
1298:57:52
1298:57:52
1298:57:52
1298:57:52
1298:57:52
1298:57:52
1298:57:52.5
1298:57:52.5
1298:57:52.5
1298:57:52
1298:57:52.5
1298:57:52.48
1298:57:52.48
1298:57:52.48
1298:57:52
1298:57:52.5
1298:57:52.48
1298:57:52.482
1298:57:52.482
1298:57:52.482
1298:57:52
1298:57:52.5
1298:57:52.48
1298:57:52.482
1298:57:52.4823
1298:57:52.4823
1298:57:52.4823
54 02:57
54 02:57
54 02:57
54 02:57:52
54 02:57:52
54 02:57:52
54 02:57:52.5
54 02:57:52
54 02:57:52.5
54 02:57:52.48
54 02:57:52
54 02:57:52.5
54 02:57:52.48
54 02:57:52.482
54 02:57:52
54 02:57:52.5
54 02:57:52.48
54 02:57:52.482
54 02:57:52.4823
54 02:57:52
54 02:57:52.5
54 02:57:52.48
54 02:57:52.482
54 02:57:52.4823
54 02:57:52.48229
54 02:57:52
54 02:57:52.5
54 02:57:52.48
54 02:57:52.482
54 02:57:52.4823
54 02:57:52.48229
54 02:57:52.482290
*****
******
1312:45
1312:45
1312:45
1312:45:44
1312:45:44
1312:45:44
1312:45:44
1312:45:44
1312:45:44
1312:45:44.7
1312:45:44.7
1312:45:44.7
1312:45:44
1312:45:44.7
1312:45:44.66
1312:45:44.66
1312:45:44.66
1312:45:44
1312:45:44.7
1312:45:44.66
1312:45:44.658
1312:45:44.658
1312:45:44.658
1312:45:44
1312:45:44.7
1312:45:44.66
1312:45:44.658
1312:45:44.6583
1312:45:44.6583
1312:45:44.6583
54 16:45
54 16:45
54 16:45
54 16:45:44
54 16:45:44
54 16:45:44
54 16:45:44.7
54 16:45:44
54 16:45:44.7
54 16:45:44.66
54 16:45:44
54 16:45:44.7
54 16:45:44.66
54 16:45:44.658
54 16:45:44
54 16:45:44.7
54 16:45:44.66
54 16:45:44.658
54 16:45:44.6583
54 16:45:44
54 16:45:44.7
54 16:45:44.66
54 16:45:44.658
54 16:45:44.6583
54 16:45:44.65827
54 16:45:44
54 16:45:44.7
54 16:45:44.66
54 16:45:44.658
54 16:45:44.6583
54 16:45:44.65827
54 16:45:44.658270
*****
******
1317:30
1317:30
1317:30
1317:30:57
1317:30:57
1317:30:57
1317:30:57
1317:30:57
1317:30:57
1317:30:57.6
1317:30:57.6
1317:30:57.6
1317:30:57
1317:30:57.6
1317:30:57.58
1317:30:57.58
1317:30:57.58
1317:30:57
1317:30:57.6
1317:30:57.58
1317:30:57.582
1317:30:57.582
1317:30:57.582
1317:30:57
1317:30:57.6
1317:30:57.58
1317:30:57.582
1317:30:57.5822
1317:30:57.5822
1317:30:57.5822
54 21:30
54 21:30
54 21:30
54 21:30:57
54 21:30:57
54 21:30:57
54 21:30:57.6
54 21:30:57
54 21:30:57.6
54 21:30:57.58
54 21:30:57
54 21:30:57.6
54 21:30:57.58
54 21:30:57.582
54 21:30:57
54 21:30:57.6
54 21:30:57.58
54 21:30:57.582
54 21:30:57.5822
54 21:30:57
54 21:30:57.6
54 21:30:57.58
54 21:30:57.582
54 21:30:57.5822
54 21:30:57.58219
54 21:30:57
54 21:30:57.6
54 21:30:57.58
54 21:30:57.582
54 21:30:57.5822
54 21:30:57.58219
54 21:30:57.582190
*****
******
1318:30
1318:30
1318:30
1318:30:04
1318:30:04
1318:30:04
1318:30:04
1318:30:04
1318:30:04
1318:30:04.2
1318:30:04.2
1318:30:04.2
1318:30:04
1318:30:04.2
1318:30:04.18
1318:30:04.18
1318:30:04.18
1318:30:04
1318:30:04.2
1318:30:04.18
1318:30:04.183
1318:30:04.183
1318:30:04.183
1318:30:04
1318:30:04.2
1318:30:04.18
1318:30:04.183
1318:30:04.1835
1318:30:04.1835
1318:30:04.1835
54 22:30
54 22:30
54 22:30
54 22:30:04
54 22:30:04
54 22:30:04
54 22:30:04.2
54 22:30:04
54 22:30:04.2
54 22:30:04.18
54 22:30:04
54 22:30:04.2
54 22:30:04.18
54 22:30:04.183
54 22:30:04
54 22:30:04.2
54 22:30:04.18
54 22:30:04.183
54 22:30:04.1835
54 22:30:04
54 22:30:04.2
54 22:30:04.18
54 22:30:04.183
54 22:30:04.1835
54 22:30:04.18347
54 22:30:04
54 22:30:04.2
54 22:30:04.18
54 22:30:04.183
54 22:30:04.1835
54 22:30:04.18347
54 22:30:04.183470
*****
******
1297:56
1297:56
1297:56
1297:56:51
1297:56:51
1297:56:51
1297:56:51
1297:56:51
1297:56:51
1297:56:51.6
1297:56:51.6
1297:56:51.6
1297:56:51
1297:56:51.6
1297:56:51.59
1297:56:51.59
1297:56:51.59
1297:56:51
1297:56:51.6
1297:56:51.59
1297:56:51.593
1297:56:51.593
1297:56:51.593
1297:56:51
1297:56:51.6
1297:56:51.59
1297:56:51.593
1297:56:51.5932
1297:56:51.5932
1297:56:51.5932
54 01:56
54 01:56
54 01:56
54 01:56:51
54 01:56:51
54 01:56:51
54 01:56:51.6
54 01:56:51
54 01:56:51.6
54 01:56:51.59
54 01:56:51
54 01:56:51.6
54 01:56:51.59
54 01:56:51.593
54 01:56:51
54 01:56:51.6
54 01:56:51.59
54 01:56:51.593
54 01:56:51.5932
54 01:56:51
54 01:56:51.6
54 01:56:51.59
54 01:56:51.593
54 01:56:51.5932
54 01:56:51.59319
54 01:56:51
54 01:56:51.6
54 01:56:51.59
54 01:56:51.593
54 01:56:51.5932
54 01:56:51.59319
54 01:56:51.593190
*****
******
*******
16344:00
16344:00
16344:00
16344:00
16344:00:00
16344:00:00
16344:00:00
16344:00:00
16344:00:00
16344:00:00
16344:00:00
16344:00:00
16344:00:00.0
16344:00:00.0
16344:00:00.0
16344:00:00.0
16344:00:00
16344:00:00.0
16344:00:00.00
16344:00:00.00
16344:00:00.00
16344:00:00.00
16344:00:00
16344:00:00.0
16344:00:00.00
16344:00:00.000
16344:00:00.000
16344:00:00.000
16344:00:00.000
********
681 00:00
681 00:00
681 00:00
681 00:00:00
681 00:00:00
681 00:00:00
681 00:00:00
681 00:00:00.0
681 00:00:00.0
681 00:00:00
681 00:00:00.0
681 00:00:00.00
681 00:00:00.00
681 00:00:00
681 00:00:00.0
681 00:00:00.00
681 00:00:00.000
681 00:00:00.000
681 00:00:00
681 00:00:00.0
681 00:00:00.00
681 00:00:00.000
681 00:00:00.0000
681 00:00:00.0000
681 00:00:00
681 00:00:00.0
681 00:00:00.00
681 00:00:00.000
681 00:00:00.0000
681 00:00:00.00000
681 00:00:00.00000
*****
******
*******
16348:50
16348:50
16348:50
16348:50
16348:50:38
16348:50:38
16348:50:38
16348:50:38
16348:50:38
16348:50:38
16348:50:38
16348:50:38
16348:50:38.1
16348:50:38.1
16348:50:38.1
16348:50:38.1
16348:50:38
16348:50:38.1
16348:50:38.12
16348:50:38.12
16348:50:38.12
16348:50:38.12
16348:50:38
16348:50:38.1
16348:50:38.12
16348:50:38.123
16348:50:38.123
16348:50:38.123
16348:50:38.123
********
681 04:50
681 04:50
681 04:50
681 04:50:38
681 04:50:38
681 04:50:38
681 04:50:38
681 04:50:38.1
681 04:50:38.1
681 04:50:38
681 04:50:38.1
681 04:50:38.12
681 04:50:38.12
681 04:50:38
681 04:50:38.1
681 04:50:38.12
681 04:50:38.123
681 04:50:38.123
681 04:50:38
681 04:50:38.1
681 04:50:38.12
681 04:50:38.123
681 04:50:38.1230
681 04:50:38.1230
681 04:50:38
681 04:50:38.1
681 04:50:38.12
681 04:50:38.123
681 04:50:38.1230
681 04:50:38.12301
681 04:50:38.12301
*****
******
*******
16356:31
16356:31
16356:31
16356:31
16356:31:35
16356:31:35
16356:31:35
16356:31:35
16356:31:35
16356:31:35
16356:31:35
16356:31:35
16356:31:35.2
16356:31:35.2
16356:31:35.2
16356:31:35.2
16356:31:35
16356:31:35.2
16356:31:35.23
16356:31:35.23
16356:31:35.23
16356:31:35.23
16356:31:35
16356:31:35.2
16356:31:35.23
16356:31:35.235
16356:31:35.235
16356:31:35.235
16356:31:35.235
********
681 12:31
681 12:31
681 12:31
681 12:31:35
681 12:31:35
681 12:31:35
681 12:31:35
681 12:31:35.2
681 12:31:35.2
681 12:31:35
681 12:31:35.2
681 12:31:35.23
681 12:31:35.23
681 12:31:35
681 12:31:35.2
681 12:31:35.23
681 12:31:35.235
681 12:31:35.235
681 12:31:35
681 12:31:35.2
681 12:31:35.23
681 12:31:35.235
681 12:31:35.2345
681 12:31:35.2345
681 12:31:35
681 12:31:35.2
681 12:31:35.23
681 12:31:35.235
681 12:31:35.2345
681 12:31:35.23453
681 12:31:35.23453
*****
******
*******
16356:47
16356:47
16356:47
16356:47
16356:47:53
16356:47:53
16356:47:53
16356:47:53
16356:47:53
16356:47:53
16356:47:53
16356:47:53
16356:47:53.3
16356:47:53.3
16356:47:53.3
16356:47:53.3
16356:47:53
16356:47:53.3
16356:47:53.35
16356:47:53.35
16356:47:53.35
16356:47:53.35
16356:47:53
16356:47:53.3
16356:47:53.35
16356:47:53.345
16356:47:53.345
16356:47:53.345
16356:47:53.345
********
681 12:47
681 12:47
681 12:47
681 12:47:53
681 12:47:53
681 12:47:53
681 12:47:53
681 12:47:53.3
681 12:47:53.3
681 12:47:53
681 12:47:53.3
681 12:47:53.35
681 12:47:53.35
681 12:47:53
681 12:47:53.3
681 12:47:53.35
681 12:47:53.345
681 12:47:53.345
681 12:47:53
681 12:47:53.3
681 12:47:53.35
681 12:47:53.345
681 12:47:53.3450
681 12:47:53.3450
681 12:47:53
681 12:47:53.3
681 12:47:53.35
681 12:47:53.345
681 12:47:53.3450
681 12:47:53.34505
681 12:47:53.34505
*****
******
*******
16345:26
16345:26
16345:26
16345:26
16345:26:00
16345:26:00
16345:26:00
16345:26:00
16345:26:00
16345:26:00
16345:26:00
16345:26:00
16345:26:00.5
16345:26:00.5
16345:26:00.5
16345:26:00.5
16345:26:00
16345:26:00.5
16345:26:00.46
16345:26:00.46
16345:26:00.46
16345:26:00.46
16345:26:00
16345:26:00.5
16345:26:00.46
16345:26:00.456
16345:26:00.456
16345:26:00.456
16345:26:00.456
********
681 01:26
681 01:26
681 01:26
681 01:26:00
681 01:26:00
681 01:26:00
681 01:26:00
681 01:26:00.5
681 01:26:00.5
681 01:26:00
681 01:26:00.5
681 01:26:00.46
681 01:26:00.46
681 01:26:00
681 01:26:00.5
681 01:26:00.46
681 01:26:00.456
681 01:26:00.456
681 01:26:00
681 01:26:00.5
681 01:26:00.46
681 01:26:00.456
681 01:26:00.4562
681 01:26:00.4562
681 01:26:00
681 01:26:00.5
681 01:26:00.46
681 01:26:00.456
681 01:26:00.4562
681 01:26:00.45615
681 01:26:00.45615
*****
******
*******
16364:58
16364:58
16364:58
16364:58
16364:58:11
16364:58:11
16364:58:11
16364:58:11
16364:58:11
16364:58:11
16364:58:11
16364:58:11
16364:58:11.6
16364:58:11.6
16364:58:11.6
16364:58:11.6
16364:58:11
16364:58:11.6
16364:58:11.57
16364:58:11.57
16364:58:11.57
16364:58:11.57
16364:58:11
16364:58:11.6
16364:58:11.57
16364:58:11.567
16364:58:11.567
16364:58:11.567
16364:58:11.567
********
681 20:58
681 20:58
681 20:58
681 20:58:11
681 20:58:11
681 20:58:11
681 20:58:11
681 20:58:11.6
681 20:58:11.6
681 20:58:11
681 20:58:11.6
681 20:58:11.57
681 20:58:11.57
681 20:58:11
681 20:58:11.6
681 20:58:11.57
681 20:58:11.567
681 20:58:11.567
681 20:58:11
681 20:58:11.6
681 20:58:11.57
681 20:58:11.567
681 20:58:11.5668
681 20:58:11.5668
681 20:58:11
681 20:58:11.6
681 20:58:11.57
681 20:58:11.567
681 20:58:11.5668
681 20:58:11.56677
681 20:58:11.56677
*****
******
*******
16351:36
16351:36
16351:36
16351:36
16351:36:05
16351:36:05
16351:36:05
16351:36:05
16351:36:05
16351:36:05
16351:36:05
16351:36:05
16351:36:05.2
16351:36:05.2
16351:36:05.2
16351:36:05.2
16351:36:05
16351:36:05.2
16351:36:05.19
16351:36:05.19
16351:36:05.19
16351:36:05.19
16351:36:05
16351:36:05.2
16351:36:05.19
16351:36:05.190
16351:36:05.190
16351:36:05.190
16351:36:05.190
********
681 07:36
681 07:36
681 07:36
681 07:36:05
681 07:36:05
681 07:36:05
681 07:36:05
681 07:36:05.2
681 07:36:05.2
681 07:36:05
681 07:36:05.2
681 07:36:05.19
681 07:36:05.19
681 07:36:05
681 07:36:05.2
681 07:36:05.19
681 07:36:05.190
681 07:36:05.190
681 07:36:05
681 07:36:05.2
681 07:36:05.19
681 07:36:05.190
681 07:36:05.1896
681 07:36:05.1896
681 07:36:05
681 07:36:05.2
681 07:36:05.19
681 07:36:05.190
681 07:36:05.1896
681 07:36:05.18964
681 07:36:05.18964
*****
******
*******
16359:43
16359:43
16359:43
16359:43
16359:43:49
16359:43:49
16359:43:49
16359:43:49
16359:43:49
16359:43:49
16359:43:49
16359:43:49
16359:43:49.8
16359:43:49.8
16359:43:49.8
16359:43:49.8
16359:43:49
16359:43:49.8
16359:43:49.83
16359:43:49.83
16359:43:49.83
16359:43:49.83
16359:43:49
16359:43:49.8
16359:43:49.83
16359:43:49.831
16359:43:49.831
16359:43:49.831
16359:43:49.831
********
681 15:43
681 15:43
681 15:43
681 15:43:49
681 15:43:49
681 15:43:49
681 15:43:49
681 15:43:49.8
681 15:43:49.8
681 15:43:49
681 15:43:49.8
681 15:43:49.83
681 15:43:49.83
681 15:43:49
681 15:43:49.8
681 15:43:49.83
681 15:43:49.831
681 15:43:49.831
681 15:43:49
681 15:43:49.8
681 15:43:49.83
681 15:43:49.831
681 15:43:49.8313
681 15:43:49.8313
681 15:43:49
681 15:43:49.8
681 15:43:49.83
681 15:43:49.831
681 15:43:49.8313
681 15:43:49.83132
681 15:43:49.83132
*****
******
*******
16348:25
16348:25
16348:25
16348:25
16348:25:09
16348:25:09
16348:25:09
16348:25:09
16348:25:09
16348:25:09
16348:25:09
16348:25:09
16348:25:09.0
16348:25:09.0
16348:25:09.0
16348:25:09.0
16348:25:09
16348:25:09.0
16348:25:09.01
16348:25:09.01
16348:25:09.01
16348:25:09.01
16348:25:09
16348:25:09.0
16348:25:09.01
16348:25:09.013
16348:25:09.013
16348:25:09.013
16348:25:09.013
********
681 04:25
681 04:25
681 04:25
681 04:25:09
681 04:25:09
681 04:25:09
681 04:25:09
681 04:25:09.0
681 04:25:09.0
681 04:25:09
681 04:25:09.0
681 04:25:09.01
681 04:25:09.01
681 04:25:09
681 04:25:09.0
681 04:25:09.01
681 04:25:09.013
681 04:25:09.013
681 04:25:09
681 04:25:09.0
681 04:25:09.01
681 04:25:09.013
681 04:25:09.0129
681 04:25:09.0129
681 04:25:09
681 04:25:09.0
681 04:25:09.01
681 04:25:09.013
681 04:25:09.0129
681 04:25:09.01293
681 04:25:09.01293
*****
******
*******
16350:49
16350:49
16350:49
16350:49
16350:49:27
16350:49:27
16350:49:27
16350:49:27
16350:49:27
16350:49:27
16350:49:27
16350:49:27
16350:49:27.5
16350:49:27.5
16350:49:27.5
16350:49:27.5
16350:49:27
16350:49:27.5
16350:49:27.52
16350:49:27.52
16350:49:27.52
16350:49:27.52
16350:49:27
16350:49:27.5
16350:49:27.52
16350:49:27.524
16350:49:27.524
16350:49:27.524
16350:49:27.524
********
681 06:49
681 06:49
681 06:49
681 06:49:27
681 06:49:27
681 06:49:27
681 06:49:27
681 06:49:27.5
681 06:49:27.5
681 06:49:27
681 06:49:27.5
681 06:49:27.52
681 06:49:27.52
681 06:49:27
681 06:49:27.5
681 06:49:27.52
681 06:49:27.524
681 06:49:27.524
681 06:49:27
681 06:49:27.5
681 06:49:27.52
681 06:49:27.524
681 06:49:27.5237
681 06:49:27.5237
681 06:49:27
681 06:49:27.5
681 06:49:27.52
681 06:49:27.524
681 06:49:27.5237
681 06:49:27.52375
681 06:49:27.52375
*****
******
*******
16346:57
16346:57
16346:57
16346:57
16346:57:52
16346:57:52
16346:57:52
16346:57:52
16346:57:52
16346:57:52
16346:57:52
16346:57:52
16346:57:52.0
16346:57:52.0
16346:57:52.0
16346:57:52.0
16346:57:52
16346:57:52.0
16346:57:52.02
16346:57:52.02
16346:57:52.02
16346:57:52.02
16346:57:52
16346:57:52.0
16346:57:52.02
16346:57:52.016
16346:57:52.016
16346:57:52.016
16346:57:52.016
********
681 02:57
681 02:57
681 02:57
681 02:57:52
681 02:57:52
681 02:57:52
681 02:57:52
681 02:57:52.0
681 02:57:52.0
681 02:57:52
681 02:57:52.0
681 02:57:52.02
681 02:57:52.02
681 02:57:52
681 02:57:52.0
681 02:57:52.02
681 02:57:52.016
681 02:57:52.016
681 02:57:52
681 02:57:52.0
681 02:57:52.02
681 02:57:52.016
681 02:57:52.0156
681 02:57:52.0156
681 02:57:52
681 02:57:52.0
681 02:57:52.02
681 02:57:52.016
681 02:57:52.0156
681 02:57:52.01565
681 02:57:52.01565
*****
******
*******
16360:45
16360:45
16360:45
16360:45
16360:45:44
16360:45:44
16360:45:44
16360:45:44
16360:45:44
16360:45:44
16360:45:44
16360:45:44
16360:45:44.9
16360:45:44.9
16360:45:44.9
16360:45:44.9
16360:45:44
16360:45:44.9
16360:45:44.87
16360:45:44.87
16360:45:44.87
16360:45:44.87
16360:45:44
16360:45:44.9
16360:45:44.87
16360:45:44.865
16360:45:44.865
16360:45:44.865
16360:45:44.865
********
681 16:45
681 16:45
681 16:45
681 16:45:44
681 16:45:44
681 16:45:44
681 16:45:44
681 16:45:44.9
681 16:45:44.9
681 16:45:44
681 16:45:44.9
681 16:45:44.87
681 16:45:44.87
681 16:45:44
681 16:45:44.9
681 16:45:44.87
681 16:45:44.865
681 16:45:44.865
681 16:45:44
681 16:45:44.9
681 16:45:44.87
681 16:45:44.865
681 16:45:44.8653
681 16:45:44.8653
681 16:45:44
681 16:45:44.9
681 16:45:44.87
681 16:45:44.865
681 16:45:44.8653
681 16:45:44.86529
681 16:45:44.86529
*****
******
*******
16365:30
16365:30
16365:30
16365:30
16365:30:57
16365:30:57
16365:30:57
16365:30:57
16365:30:57
16365:30:57
16365:30:57
16365:30:57
16365:30:57.8
16365:30:57.8
16365:30:57.8
16365:30:57.8
16365:30:57
16365:30:57.8
16365:30:57.82
16365:30:57.82
16365:30:57.82
16365:30:57.82
16365:30:57
16365:30:57.8
16365:30:57.82
16365:30:57.820
16365:30:57.820
16365:30:57.820
16365:30:57.820
********
681 21:30
681 21:30
681 21:30
681 21:30:57
681 21:30:57
681 21:30:57
681 21:30:57
681 21:30:57.8
681 21:30:57.8
681 21:30:57
681 21:30:57.8
681 21:30:57.82
681 21:30:57.82
681 21:30:57
681 21:30:57.8
681 21:30:57.82
681 21:30:57.820
681 21:30:57.820
681 21:30:57
681 21:30:57.8
681 21:30:57.82
681 21:30:57.820
681 21:30:57.8205
681 21:30:57.8205
681 21:30:57
681 21:30:57.8
681 21:30:57.82
681 21:30:57.820
681 21:30:57.8205
681 21:30:57.82047
681 21:30:57.82047
*****
******
*******
16348:25
16348:25
16348:25
16348:25
16348:25:09
16348:25:09
16348:25:09
16348:25:09
16348:25:09
16348:25:09
16348:25:09
16348:25:09
16348:25:09.2
16348:25:09.2
16348:25:09.2
16348:25:09.2
16348:25:09
16348:25:09.2
16348:25:09.15
16348:25:09.15
16348:25:09.15
16348:25:09.15
16348:25:09
16348:25:09.2
16348:25:09.15
16348:25:09.154
16348:25:09.154
16348:25:09.154
16348:25:09.154
********
681 04:25
681 04:25
681 04:25
681 04:25:09
681 04:25:09
681 04:25:09
681 04:25:09
681 04:25:09.2
681 04:25:09.2
681 04:25:09
681 04:25:09.2
681 04:25:09.15
681 04:25:09.15
681 04:25:09
681 04:25:09.2
681 04:25:09.15
681 04:25:09.154
681 04:25:09.154
681 04:25:09
681 04:25:09.2
681 04:25:09.15
681 04:25:09.154
681 04:25:09.1539
681 04:25:09.1539
681 04:25:09
681 04:25:09.2
681 04:25:09.15
681 04:25:09.154
681 04:25:09.1539
681 04:25:09.15395
681 04:25:09.15395
*****
******
*******
16350:49
16350:49
16350:49
16350:49
16350:49:27
16350:49:27
16350:49:27
16350:49:27
16350:49:27
16350:49:27
16350:49:27
16350:49:27
16350:49:27.1
16350:49:27.1
16350:49:27.1
16350:49:27.1
16350:49:27
16350:49:27.1
16350:49:27.11
16350:49:27.11
16350:49:27.11
16350:49:27.11
16350:49:27
16350:49:27.1
16350:49:27.11
16350:49:27.105
16350:49:27.105
16350:49:27.105
16350:49:27.105
********
681 06:49
681 06:49
681 06:49
681 06:49:27
681 06:49:27
681 06:49:27
681 06:49:27
681 06:49:27.1
681 06:49:27.1
681 06:49:27
681 06:49:27.1
681 06:49:27.11
681 06:49:27.11
681 06:49:27
681 06:49:27.1
681 06:49:27.11
681 06:49:27.105
681 06:49:27.105
681 06:49:27
681 06:49:27.1
681 06:49:27.11
681 06:49:27.105
681 06:49:27.1053
681 06:49:27.1053
681 06:49:27
681 06:49:27.1
681 06:49:27.11
681 06:49:27.105
681 06:49:27.1053
681 06:49:27.10533
681 06:49:27.10533
*****
******
*******
16346:57
16346:57
16346:57
16346:57
16346:57:52
16346:57:52
16346:57:52
16346:57:52
16346:57:52
16346:57:52
16346:57:52
16346:57:52
16346:57:52.5
16346:57:52.5
16346:57:52.5
16346:57:52.5
16346:57:52
16346:57:52.5
16346:57:52.48
16346:57:52.48
16346:57:52.48
16346:57:52.48
16346:57:52
16346:57:52.5
16346:57:52.48
16346:57:52.482
16346:57:52.482
16346:57:52.482
16346:57:52.482
********
681 02:57
681 02:57
681 02:57
681 02:57:52
681 02:57:52
681 02:57:52
681 02:57:52
681 02:57:52.5
681 02:57:52.5
681 02:57:52
681 02:57:52.5
681 02:57:52.48
681 02:57:52.48
681 02:57:52
681 02:57:52.5
681 02:57:52.48
681 02:57:52.482
681 02:57:52.482
681 02:57:52
681 02:57:52.5
681 02:57:52.48
681 02:57:52.482
681 02:57:52.4823
681 02:57:52.4823
681 02:57:52
681 02:57:52.5
681 02:57:52.48
681 02:57:52.482
681 02:57:52.4823
681 02:57:52.48229
681 02:57:52.48229
*****
******
*******
16360:45
16360:45
16360:45
16360:45
16360:45:44
16360:45:44
16360:45:44
16360:45:44
16360:45:44
16360:45:44
16360:45:44
16360:45:44
16360:45:44.7
16360:45:44.7
16360:45:44.7
16360:45:44.7
16360:45:44
16360:45:44.7
16360:45:44.66
16360:45:44.66
16360:45:44.66
16360:45:44.66
16360:45:44
16360:45:44.7
16360:45:44.66
16360:45:44.658
16360:45:44.658
16360:45:44.658
16360:45:44.658
********
681 16:45
681 16:45
681 16:45
681 16:45:44
681 16:45:44
681 16:45:44
681 16:45:44
681 16:45:44.7
681 16:45:44.7
681 16:45:44
681 16:45:44.7
681 16:45:44.66
681 16:45:44.66
681 16:45:44
681 16:45:44.7
681 16:45:44.66
681 16:45:44.658
681 16:45:44.658
681 16:45:44
681 16:45:44.7
681 16:45:44.66
681 16:45:44.658
681 16:45:44.6583
681 16:45:44.6583
681 16:45:44
681 16:45:44.7
681 16:45:44.66
681 16:45:44.658
681 16:45:44.6583
681 16:45:44.65827
681 16:45:44.65827
*****
******
*******
16365:30
16365:30
16365:30
16365:30
16365:30:57
16365:30:57
16365:30:57
16365:30:57
16365:30:57
16365:30:57
16365:30:57
16365:30:57
16365:30:57.6
16365:30:57.6
16365:30:57.6
16365:30:57.6
16365:30:57
16365:30:57.6
16365:30:57.58
16365:30:57.58
16365:30:57.58
16365:30:57.58
16365:30:57
16365:30:57.6
16365:30:57.58
16365:30:57.582
16365:30:57.582
16365:30:57.582
16365:30:57.582
********
681 21:30
681 21:30
681 21:30
681 21:30:57
681 21:30:57
681 21:30:57
681 21:30:57
681 21:30:57.6
681 21:30:57.6
681 21:30:57
681 21:30:57.6
681 21:30:57.58
681 21:30:57.58
681 21:30:57
681 21:30:57.6
681 21:30:57.58
681 21:30:57.582
681 21:30:57.582
681 21:30:57
681 21:30:57.6
681 21:30:57.58
681 21:30:57.582
681 21:30:57.5822
681 21:30:57.5822
681 21:30:57
681 21:30:57.6
681 21:30:57.58
681 21:30:57.582
681 21:30:57.5822
681 21:30:57.58219
681 21:30:57.58219
*****
******
*******
16366:30
16366:30
16366:30
16366:30
16366:30:04
16366:30:04
16366:30:04
16366:30:04
16366:30:04
16366:30:04
16366:30:04
16366:30:04
16366:30:04.2
16366:30:04.2
16366:30:04.2
16366:30:04.2
16366:30:04
16366:30:04.2
16366:30:04.18
16366:30:04.18
16366:30:04.18
16366:30:04.18
16366:30:04
16366:30:04.2
16366:30:04.18
16366:30:04.183
16366:30:04.183
16366:30:04.183
16366:30:04.183
********
681 22:30
681 22:30
681 22:30
681 22:30:04
681 22:30:04
681 22:30:04
681 22:30:04
681 22:30:04.2
681 22:30:04.2
681 22:30:04
681 22:30:04.2
681 22:30:04.18
681 22:30:04.18
681 22:30:04
681 22:30:04.2
681 22:30:04.18
681 22:30:04.183
681 22:30:04.183
681 22:30:04
681 22:30:04.2
681 22:30:04.18
681 22:30:04.183
681 22:30:04.1835
681 22:30:04.1835
681 22:30:04
681 22:30:04.2
681 22:30:04.18
681 22:30:04.183
681 22:30:04.1835
681 22:30:04.18347
681 22:30:04.18347
*****
******
*******
16345:56
16345:56
16345:56
16345:56
16345:56:51
16345:56:51
16345:56:51
16345:56:51
16345:56:51
16345:56:51
16345:56:51
16345:56:51
16345:56:51.6
16345:56:51.6
16345:56:51.6
16345:56:51.6
16345:56:51
16345:56:51.6
16345:56:51.59
16345:56:51.59
16345:56:51.59
16345:56:51.59
16345:56:51
16345:56:51.6
16345:56:51.59
16345:56:51.593
16345:56:51.593
16345:56:51.593
16345:56:51.593
********
681 01:56
681 01:56
681 01:56
681 01:56:51
681 01:56:51
681 01:56:51
681 01:56:51
681 01:56:51.6
681 01:56:51.6
681 01:56:51
681 01:56:51.6
681 01:56:51.59
681 01:56:51.59
681 01:56:51
681 01:56:51.6
681 01:56:51.59
681 01:56:51.593
681 01:56:51.593
681 01:56:51
681 01:56:51.6
681 01:56:51.59
681 01:56:51.593
681 01:56:51.5932
681 01:56:51.5932
681 01:56:51
681 01:56:51.6
681 01:56:51.59
681 01:56:51.593
681 01:56:51.5932
681 01:56:51.59319
681 01:56:51.59319
0:00
0:00
0:00:00
0:00:00
0:00:00
0:00:00
0:00:00.0
0:00:00
0:00:00.0
0:00:00.00
0:00:00
0:00:00.0
0:00:00.00
0:00:00.000
0:00:00
0:00:00.0
0:00:00.00
0:00:00.000
0:00:00.0000
0:00:00
0:00:00.0
0:00:00.00
0:00:00.000
0:00:00.0000
0:00:00.00000
0:00:00
0:00:00.0
0:00:00.00
0:00:00.000
0:00:00.0000
0:00:00.00000
0:00:00.000000
0 00:00
0 00:00
0 00:00:00
0 00:00:00
0 00:00:00
0 00:00:00
0 00:00:00.0
0 00:00:00
0 00:00:00.0
0 00:00:00.00
0 00:00:00
0 00:00:00.0
0 00:00:00.00
0 00:00:00.000
0 00:00:00
0 00:00:00.0
0 00:00:00.00
0 00:00:00.000
0 00:00:00.0000
0 00:00:00
0 00:00:00.0
0 00:00:00.00
0 00:00:00.000
0 00:00:00.0000
0 00:00:00.00000
0 00:00:00
0 00:00:00.0
0 00:00:00.00
0 00:00:00.000
0 00:00:00.0000
0 00:00:00.00000
0 00:00:00.000000
-4:50
-4:50
-4:50
-4:50:38
-4:50:38
-4:50:38
-4:50:38.1
-4:50:38
-4:50:38.1
-4:50:38.12
-4:50:38
-4:50:38.1
-4:50:38.12
-4:50:38.123
-4:50:38
-4:50:38.1
-4:50:38.12
-4:50:38.123
-4:50:38.1230
-4:50:38
-4:50:38.1
-4:50:38.12
-4:50:38.123
-4:50:38.1230
-4:50:38.12301
-4:50:38
-4:50:38.1
-4:50:38.12
-4:50:38.123
-4:50:38.1230
-4:50:38.12301
-4:50:38.123010
-0 04:50
-0 04:50
-0 04:50
-0 04:50:38
-0 04:50:38
-0 04:50:38
-0 04:50:38.1
-0 04:50:38
-0 04:50:38.1
-0 04:50:38.12
-0 04:50:38
-0 04:50:38.1
-0 04:50:38.12
-0 04:50:38.123
-0 04:50:38
-0 04:50:38.1
-0 04:50:38.12
-0 04:50:38.123
-0 04:50:38.1230
-0 04:50:38
-0 04:50:38.1
-0 04:50:38.12
-0 04:50:38.123
-0 04:50:38.1230
-0 04:50:38.12301
-0 04:50:38
-0 04:50:38.1
-0 04:50:38.12
-0 04:50:38.123
-0 04:50:38.1230
-0 04:50:38.12301
-0 04:50:38.123010
*****
-12:31
-12:31
-12:31
-12:31:35
-12:31:35
-12:31:35
-12:31:35
-12:31:35.2
-12:31:35.2
-12:31:35
-12:31:35.2
-12:31:35.23
-12:31:35.23
-12:31:35
-12:31:35.2
-12:31:35.23
-12:31:35.235
-12:31:35.235
-12:31:35
-12:31:35.2
-12:31:35.23
-12:31:35.235
-12:31:35.2345
-12:31:35.2345
-12:31:35
-12:31:35.2
-12:31:35.23
-12:31:35.235
-12:31:35.2345
-12:31:35.23453
-12:31:35.23453
-0 12:31
-0 12:31
-0 12:31
-0 12:31:35
-0 12:31:35
-0 12:31:35
-0 12:31:35.2
-0 12:31:35
-0 12:31:35.2
-0 12:31:35.23
-0 12:31:35
-0 12:31:35.2
-0 12:31:35.23
-0 12:31:35.235
-0 12:31:35
-0 12:31:35.2
-0 12:31:35.23
-0 12:31:35.235
-0 12:31:35.2345
-0 12:31:35
-0 12:31:35.2
-0 12:31:35.23
-0 12:31:35.235
-0 12:31:35.2345
-0 12:31:35.23453
-0 12:31:35
-0 12:31:35.2
-0 12:31:35.23
-0 12:31:35.235
-0 12:31:35.2345
-0 12:31:35.23453
-0 12:31:35.234530
*****
-12:47
-12:47
-12:47
-12:47:53
-12:47:53
-12:47:53
-12:47:53
-12:47:53.3
-12:47:53.3
-12:47:53
-12:47:53.3
-12:47:53.35
-12:47:53.35
-12:47:53
-12:47:53.3
-12:47:53.35
-12:47:53.345
-12:47:53.345
-12:47:53
-12:47:53.3
-12:47:53.35
-12:47:53.345
-12:47:53.3451
-12:47:53.3451
-12:47:53
-12:47:53.3
-12:47:53.35
-12:47:53.345
-12:47:53.3451
-12:47:53.34505
-12:47:53.34505
-0 12:47
-0 12:47
-0 12:47
-0 12:47:53
-0 12:47:53
-0 12:47:53
-0 12:47:53.3
-0 12:47:53
-0 12:47:53.3
-0 12:47:53.35
-0 12:47:53
-0 12:47:53.3
-0 12:47:53.35
-0 12:47:53.345
-0 12:47:53
-0 12:47:53.3
-0 12:47:53.35
-0 12:47:53.345
-0 12:47:53.3451
-0 12:47:53
-0 12:47:53.3
-0 12:47:53.35
-0 12:47:53.345
-0 12:47:53.3451
-0 12:47:53.34505
-0 12:47:53
-0 12:47:53.3
-0 12:47:53.35
-0 12:47:53.345
-0 12:47:53.3451
-0 12:47:53.34505
-0 12:47:53.345050
-1:26
-1:26
-1:26
-1:26:00
-1:26:00
-1:26:00
-1:26:00.5
-1:26:00
-1:26:00.5
-1:26:00.46
-1:26:00
-1:26:00.5
-1:26:00.46
-1:26:00.456
-1:26:00
-1:26:00.5
-1:26:00.46
-1:26:00.456
-1:26:00.4561
-1:26:00
-1:26:00.5
-1:26:00.46
-1:26:00.456
-1:26:00.4561
-1:26:00.45615
-1:26:00
-1:26:00.5
-1:26:00.46
-1:26:00.456
-1:26:00.4561
-1:26:00.45615
-1:26:00.456150
-0 01:26
-0 01:26
-0 01:26
-0 01:26:00
-0 01:26:00
-0 01:26:00
-0 01:26:00.5
-0 01:26:00
-0 01:26:00.5
-0 01:26:00.46
-0 01:26:00
-0 01:26:00.5
-0 01:26:00.46
-0 01:26:00.456
-0 01:26:00
-0 01:26:00.5
-0 01:26:00.46
-0 01:26:00.456
-0 01:26:00.4561
-0 01:26:00
-0 01:26:00.5
-0 01:26:00.46
-0 01:26:00.456
-0 01:26:00.4561
-0 01:26:00.45615
-0 01:26:00
-0 01:26:00.5
-0 01:26:00.46
-0 01:26:00.456
-0 01:26:00.4561
-0 01:26:00.45615
-0 01:26:00.456150
*****
-20:58
-20:58
-20:58
-20:58:11
-20:58:11
-20:58:11
-20:58:11
-20:58:11.6
-20:58:11.6
-20:58:11
-20:58:11.6
-20:58:11.57
-20:58:11.57
-20:58:11
-20:58:11.6
-20:58:11.57
-20:58:11.567
-20:58:11.567
-20:58:11
-20:58:11.6
-20:58:11.57
-20:58:11.567
-20:58:11.5668
-20:58:11.5668
-20:58:11
-20:58:11.6
-20:58:11.57
-20:58:11.567
-20:58:11.5668
-20:58:11.56677
-20:58:11.56677
-0 20:58
-0 20:58
-0 20:58
-0 20:58:11
-0 20:58:11
-0 20:58:11
-0 20:58:11.6
-0 20:58:11
-0 20:58:11.6
-0 20:58:11.57
-0 20:58:11
-0 20:58:11.6
-0 20:58:11.57
-0 20:58:11.567
-0 20:58:11
-0 20:58:11.6
-0 20:58:11.57
-0 20:58:11.567
-0 20:58:11.5668
-0 20:58:11
-0 20:58:11.6
-0 20:58:11.57
-0 20:58:11.567
-0 20:58:11.5668
-0 20:58:11.56677
-0 20:58:11
-0 20:58:11.6
-0 20:58:11.57
-0 20:58:11.567
-0 20:58:11.5668
-0 20:58:11.56677
-0 20:58:11.566770
-7:36
-7:36
-7:36
-7:36:05
-7:36:05
-7:36:05
-7:36:05.2
-7:36:05
-7:36:05.2
-7:36:05.19
-7:36:05
-7:36:05.2
-7:36:05.19
-7:36:05.190
-7:36:05
-7:36:05.2
-7:36:05.19
-7:36:05.190
-7:36:05.1896
-7:36:05
-7:36:05.2
-7:36:05.19
-7:36:05.190
-7:36:05.1896
-7:36:05.18964
-7:36:05
-7:36:05.2
-7:36:05.19
-7:36:05.190
-7:36:05.1896
-7:36:05.18964
-7:36:05.189640
-0 07:36
-0 07:36
-0 07:36
-0 07:36:05
-0 07:36:05
-0 07:36:05
-0 07:36:05.2
-0 07:36:05
-0 07:36:05.2
-0 07:36:05.19
-0 07:36:05
-0 07:36:05.2
-0 07:36:05.19
-0 07:36:05.190
-0 07:36:05
-0 07:36:05.2
-0 07:36:05.19
-0 07:36:05.190
-0 07:36:05.1896
-0 07:36:05
-0 07:36:05.2
-0 07:36:05.19
-0 07:36:05.190
-0 07:36:05.1896
-0 07:36:05.18964
-0 07:36:05
-0 07:36:05.2
-0 07:36:05.19
-0 07:36:05.190
-0 07:36:05.1896
-0 07:36:05.18964
-0 07:36:05.189640
*****
-15:43
-15:43
-15:43
-15:43:49
-15:43:49
-15:43:49
-15:43:49
-15:43:49.8
-15:43:49.8
-15:43:49
-15:43:49.8
-15:43:49.83
-15:43:49.83
-15:43:49
-15:43:49.8
-15:43:49.83
-15:43:49.831
-15:43:49.831
-15:43:49
-15:43:49.8
-15:43:49.83
-15:43:49.831
-15:43:49.8313
-15:43:49.8313
-15:43:49
-15:43:49.8
-15:43:49.83
-15:43:49.831
-15:43:49.8313
-15:43:49.83132
-15:43:49.83132
-0 15:43
-0 15:43
-0 15:43
-0 15:43:49
-0 15:43:49
-0 15:43:49
-0 15:43:49.8
-0 15:43:49
-0 15:43:49.8
-0 15:43:49.83
-0 15:43:49
-0 15:43:49.8
-0 15:43:49.83
-0 15:43:49.831
-0 15:43:49
-0 15:43:49.8
-0 15:43:49.83
-0 15:43:49.831
-0 15:43:49.8313
-0 15:43:49
-0 15:43:49.8
-0 15:43:49.83
-0 15:43:49.831
-0 15:43:49.8313
-0 15:43:49.83132
-0 15:43:49
-0 15:43:49.8
-0 15:43:49.83
-0 15:43:49.831
-0 15:43:49.8313
-0 15:43:49.83132
-0 15:43:49.831320
-4:25
-4:25
-4:25
-4:25:09
-4:25:09
-4:25:09
-4:25:09.0
-4:25:09
-4:25:09.0
-4:25:09.01
-4:25:09
-4:25:09.0
-4:25:09.01
-4:25:09.013
-4:25:09
-4:25:09.0
-4:25:09.01
-4:25:09.013
-4:25:09.0129
-4:25:09
-4:25:09.0
-4:25:09.01
-4:25:09.013
-4:25:09.0129
-4:25:09.01293
-4:25:09
-4:25:09.0
-4:25:09.01
-4:25:09.013
-4:25:09.0129
-4:25:09.01293
-4:25:09.012930
-0 04:25
-0 04:25
-0 04:25
-0 04:25:09
-0 04:25:09
-0 04:25:09
-0 04:25:09.0
-0 04:25:09
-0 04:25:09.0
-0 04:25:09.01
-0 04:25:09
-0 04:25:09.0
-0 04:25:09.01
-0 04:25:09.013
-0 04:25:09
-0 04:25:09.0
-0 04:25:09.01
-0 04:25:09.013
-0 04:25:09.0129
-0 04:25:09
-0 04:25:09.0
-0 04:25:09.01
-0 04:25:09.013
-0 04:25:09.0129
-0 04:25:09.01293
-0 04:25:09
-0 04:25:09.0
-0 04:25:09.01
-0 04:25:09.013
-0 04:25:09.0129
-0 04:25:09.01293
-0 04:25:09.012930
-6:49
-6:49
-6:49
-6:49:27
-6:49:27
-6:49:27
-6:49:27.5
-6:49:27
-6:49:27.5
-6:49:27.52
-6:49:27
-6:49:27.5
-6:49:27.52
-6:49:27.524
-6:49:27
-6:49:27.5
-6:49:27.52
-6:49:27.524
-6:49:27.5238
-6:49:27
-6:49:27.5
-6:49:27.52
-6:49:27.524
-6:49:27.5238
-6:49:27.52375
-6:49:27
-6:49:27.5
-6:49:27.52
-6:49:27.524
-6:49:27.5238
-6:49:27.52375
-6:49:27.523750
-0 06:49
-0 06:49
-0 06:49
-0 06:49:27
-0 06:49:27
-0 06:49:27
-0 06:49:27.5
-0 06:49:27
-0 06:49:27.5
-0 06:49:27.52
-0 06:49:27
-0 06:49:27.5
-0 06:49:27.52
-0 06:49:27.524
-0 06:49:27
-0 06:49:27.5
-0 06:49:27.52
-0 06:49:27.524
-0 06:49:27.5238
-0 06:49:27
-0 06:49:27.5
-0 06:49:27.52
-0 06:49:27.524
-0 06:49:27.5238
-0 06:49:27.52375
-0 06:49:27
-0 06:49:27.5
-0 06:49:27.52
-0 06:49:27.524
-0 06:49:27.5238
-0 06:49:27.52375
-0 06:49:27.523750
-2:57
-2:57
-2:57
-2:57:52
-2:57:52
-2:57:52
-2:57:52.0
-2:57:52
-2:57:52.0
-2:57:52.02
-2:57:52
-2:57:52.0
-2:57:52.02
-2:57:52.016
-2:57:52
-2:57:52.0
-2:57:52.02
-2:57:52.016
-2:57:52.0156
-2:57:52
-2:57:52.0
-2:57:52.02
-2:57:52.016
-2:57:52.0156
-2:57:52.01565
-2:57:52
-2:57:52.0
-2:57:52.02
-2:57:52.016
-2:57:52.0156
-2:57:52.01565
-2:57:52.015650
-0 02:57
-0 02:57
-0 02:57
-0 02:57:52
-0 02:57:52
-0 02:57:52
-0 02:57:52.0
-0 02:57:52
-0 02:57:52.0
-0 02:57:52.02
-0 02:57:52
-0 02:57:52.0
-0 02:57:52.02
-0 02:57:52.016
-0 02:57:52
-0 02:57:52.0
-0 02:57:52.02
-0 02:57:52.016
-0 02:57:52.0156
-0 02:57:52
-0 02:57:52.0
-0 02:57:52.02
-0 02:57:52.016
-0 02:57:52.0156
-0 02:57:52.01565
-0 02:57:52
-0 02:57:52.0
-0 02:57:52.02
-0 02:57:52.016
-0 02:57:52.0156
-0 02:57:52.01565
-0 02:57:52.015650
*****
-16:45
-16:45
-16:45
-16:45:44
-16:45:44
-16:45:44
-16:45:44
-16:45:44.9
-16:45:44.9
-16:45:44
-16:45:44.9
-16:45:44.87
-16:45:44.87
-16:45:44
-16:45:44.9
-16:45:44.87
-16:45:44.865
-16:45:44.865
-16:45:44
-16:45:44.9
-16:45:44.87
-16:45:44.865
-16:45:44.8653
-16:45:44.8653
-16:45:44
-16:45:44.9
-16:45:44.87
-16:45:44.865
-16:45:44.8653
-16:45:44.86529
-16:45:44.86529
-0 16:45
-0 16:45
-0 16:45
-0 16:45:44
-0 16:45:44
-0 16:45:44
-0 16:45:44.9
-0 16:45:44
-0 16:45:44.9
-0 16:45:44.87
-0 16:45:44
-0 16:45:44.9
-0 16:45:44.87
-0 16:45:44.865
-0 16:45:44
-0 16:45:44.9
-0 16:45:44.87
-0 16:45:44.865
-0 16:45:44.8653
-0 16:45:44
-0 16:45:44.9
-0 16:45:44.87
-0 16:45:44.865
-0 16:45:44.8653
-0 16:45:44.86529
-0 16:45:44
-0 16:45:44.9
-0 16:45:44.87
-0 16:45:44.865
-0 16:45:44.8653
-0 16:45:44.86529
-0 16:45:44.865290
*****
-21:30
-21:30
-21:30
-21:30:57
-21:30:57
-21:30:57
-21:30:57
-21:30:57.8
-21:30:57.8
-21:30:57
-21:30:57.8
-21:30:57.82
-21:30:57.82
-21:30:57
-21:30:57.8
-21:30:57.82
-21:30:57.820
-21:30:57.820
-21:30:57
-21:30:57.8
-21:30:57.82
-21:30:57.820
-21:30:57.8205
-21:30:57.8205
-21:30:57
-21:30:57.8
-21:30:57.82
-21:30:57.820
-21:30:57.8205
-21:30:57.82047
-21:30:57.82047
-0 21:30
-0 21:30
-0 21:30
-0 21:30:57
-0 21:30:57
-0 21:30:57
-0 21:30:57.8
-0 21:30:57
-0 21:30:57.8
-0 21:30:57.82
-0 21:30:57
-0 21:30:57.8
-0 21:30:57.82
-0 21:30:57.820
-0 21:30:57
-0 21:30:57.8
-0 21:30:57.82
-0 21:30:57.820
-0 21:30:57.8205
-0 21:30:57
-0 21:30:57.8
-0 21:30:57.82
-0 21:30:57.820
-0 21:30:57.8205
-0 21:30:57.82047
-0 21:30:57
-0 21:30:57.8
-0 21:30:57.82
-0 21:30:57.820
-0 21:30:57.8205
-0 21:30:57.82047
-0 21:30:57.820470
-4:25
-4:25
-4:25
-4:25:09
-4:25:09
-4:25:09
-4:25:09.2
-4:25:09
-4:25:09.2
-4:25:09.15
-4:25:09
-4:25:09.2
-4:25:09.15
-4:25:09.154
-4:25:09
-4:25:09.2
-4:25:09.15
-4:25:09.154
-4:25:09.1539
-4:25:09
-4:25:09.2
-4:25:09.15
-4:25:09.154
-4:25:09.1539
-4:25:09.15395
-4:25:09
-4:25:09.2
-4:25:09.15
-4:25:09.154
-4:25:09.1539
-4:25:09.15395
-4:25:09.153950
-0 04:25
-0 04:25
-0 04:25
-0 04:25:09
-0 04:25:09
-0 04:25:09
-0 04:25:09.2
-0 04:25:09
-0 04:25:09.2
-0 04:25:09.15
-0 04:25:09
-0 04:25:09.2
-0 04:25:09.15
-0 04:25:09.154
-0 04:25:09
-0 04:25:09.2
-0 04:25:09.15
-0 04:25:09.154
-0 04:25:09.1539
-0 04:25:09
-0 04:25:09.2
-0 04:25:09.15
-0 04:25:09.154
-0 04:25:09.1539
-0 04:25:09.15395
-0 04:25:09
-0 04:25:09.2
-0 04:25:09.15
-0 04:25:09.154
-0 04:25:09.1539
-0 04:25:09.15395
-0 04:25:09.153950
-6:49
-6:49
-6:49
-6:49:27
-6:49:27
-6:49:27
-6:49:27.1
-6:49:27
-6:49:27.1
-6:49:27.11
-6:49:27
-6:49:27.1
-6:49:27.11
-6:49:27.105
-6:49:27
-6:49:27.1
-6:49:27.11
-6:49:27.105
-6:49:27.1053
-6:49:27
-6:49:27.1
-6:49:27.11
-6:49:27.105
-6:49:27.1053
-6:49:27.10533
-6:49:27
-6:49:27.1
-6:49:27.11
-6:49:27.105
-6:49:27.1053
-6:49:27.10533
-6:49:27.105330
-0 06:49
-0 06:49
-0 06:49
-0 06:49:27
-0 06:49:27
-0 06:49:27
-0 06:49:27.1
-0 06:49:27
-0 06:49:27.1
-0 06:49:27.11
-0 06:49:27
-0 06:49:27.1
-0 06:49:27.11
-0 06:49:27.105
-0 06:49:27
-0 06:49:27.1
-0 06:49:27.11
-0 06:49:27.105
-0 06:49:27.1053
-0 06:49:27
-0 06:49:27.1
-0 06:49:27.11
-0 06:49:27.105
-0 06:49:27.1053
-0 06:49:27.10533
-0 06:49:27
-0 06:49:27.1
-0 06:49:27.11
-0 06:49:27.105
-0 06:49:27.1053
-0 06:49:27.10533
-0 06:49:27.105330
-2:57
-2:57
-2:57
-2:57:52
-2:57:52
-2:57:52
-2:57:52.5
-2:57:52
-2:57:52.5
-2:57:52.48
-2:57:52
-2:57:52.5
-2:57:52.48
-2:57:52.482
-2:57:52
-2:57:52.5
-2:57:52.48
-2:57:52.482
-2:57:52.4823
-2:57:52
-2:57:52.5
-2:57:52.48
-2:57:52.482
-2:57:52.4823
-2:57:52.48229
-2:57:52
-2:57:52.5
-2:57:52.48
-2:57:52.482
-2:57:52.4823
-2:57:52.48229
-2:57:52.482290
-0 02:57
-0 02:57
-0 02:57
-0 02:57:52
-0 02:57:52
-0 02:57:52
-0 02:57:52.5
-0 02:57:52
-0 02:57:52.5
-0 02:57:52.48
-0 02:57:52
-0 02:57:52.5
-0 02:57:52.48
-0 02:57:52.482
-0 02:57:52
-0 02:57:52.5
-0 02:57:52.48
-0 02:57:52.482
-0 02:57:52.4823
-0 02:57:52
-0 02:57:52.5
-0 02:57:52.48
-0 02:57:52.482
-0 02:57:52.4823
-0 02:57:52.48229
-0 02:57:52
-0 02:57:52.5
-0 02:57:52.48
-0 02:57:52.482
-0 02:57:52.4823
-0 02:57:52.48229
-0 02:57:52.482290
*****
-16:45
-16:45
-16:45
-16:45:44
-16:45:44
-16:45:44
-16:45:44
-16:45:44.7
-16:45:44.7
-16:45:44
-16:45:44.7
-16:45:44.66
-16:45:44.66
-16:45:44
-16:45:44.7
-16:45:44.66
-16:45:44.658
-16:45:44.658
-16:45:44
-16:45:44.7
-16:45:44.66
-16:45:44.658
-16:45:44.6583
-16:45:44.6583
-16:45:44
-16:45:44.7
-16:45:44.66
-16:45:44.658
-16:45:44.6583
-16:45:44.65827
-16:45:44.65827
-0 16:45
-0 16:45
-0 16:45
-0 16:45:44
-0 16:45:44
-0 16:45:44
-0 16:45:44.7
-0 16:45:44
-0 16:45:44.7
-0 16:45:44.66
-0 16:45:44
-0 16:45:44.7
-0 16:45:44.66
-0 16:45:44.658
-0 16:45:44
-0 16:45:44.7
-0 16:45:44.66
-0 16:45:44.658
-0 16:45:44.6583
-0 16:45:44
-0 16:45:44.7
-0 16:45:44.66
-0 16:45:44.658
-0 16:45:44.6583
-0 16:45:44.65827
-0 16:45:44
-0 16:45:44.7
-0 16:45:44.66
-0 16:45:44.658
-0 16:45:44.6583
-0 16:45:44.65827
-0 16:45:44.658270
*****
-21:30
-21:30
-21:30
-21:30:57
-21:30:57
-21:30:57
-21:30:57
-21:30:57.6
-21:30:57.6
-21:30:57
-21:30:57.6
-21:30:57.58
-21:30:57.58
-21:30:57
-21:30:57.6
-21:30:57.58
-21:30:57.582
-21:30:57.582
-21:30:57
-21:30:57.6
-21:30:57.58
-21:30:57.582
-21:30:57.5822
-21:30:57.5822
-21:30:57
-21:30:57.6
-21:30:57.58
-21:30:57.582
-21:30:57.5822
-21:30:57.58219
-21:30:57.58219
-0 21:30
-0 21:30
-0 21:30
-0 21:30:57
-0 21:30:57
-0 21:30:57
-0 21:30:57.6
-0 21:30:57
-0 21:30:57.6
-0 21:30:57.58
-0 21:30:57
-0 21:30:57.6
-0 21:30:57.58
-0 21:30:57.582
-0 21:30:57
-0 21:30:57.6
-0 21:30:57.58
-0 21:30:57.582
-0 21:30:57.5822
-0 21:30:57
-0 21:30:57.6
-0 21:30:57.58
-0 21:30:57.582
-0 21:30:57.5822
-0 21:30:57.58219
-0 21:30:57
-0 21:30:57.6
-0 21:30:57.58
-0 21:30:57.582
-0 21:30:57.5822
-0 21:30:57.58219
-0 21:30:57.582190
*****
-22:30
-22:30
-22:30
-22:30:04
-22:30:04
-22:30:04
-22:30:04
-22:30:04.2
-22:30:04.2
-22:30:04
-22:30:04.2
-22:30:04.18
-22:30:04.18
-22:30:04
-22:30:04.2
-22:30:04.18
-22:30:04.183
-22:30:04.183
-22:30:04
-22:30:04.2
-22:30:04.18
-22:30:04.183
-22:30:04.1835
-22:30:04.1835
-22:30:04
-22:30:04.2
-22:30:04.18
-22:30:04.183
-22:30:04.1835
-22:30:04.18347
-22:30:04.18347
-0 22:30
-0 22:30
-0 22:30
-0 22:30:04
-0 22:30:04
-0 22:30:04
-0 22:30:04.2
-0 22:30:04
-0 22:30:04.2
-0 22:30:04.18
-0 22:30:04
-0 22:30:04.2
-0 22:30:04.18
-0 22:30:04.183
-0 22:30:04
-0 22:30:04.2
-0 22:30:04.18
-0 22:30:04.183
-0 22:30:04.1835
-0 22:30:04
-0 22:30:04.2
-0 22:30:04.18
-0 22:30:04.183
-0 22:30:04.1835
-0 22:30:04.18347
-0 22:30:04
-0 22:30:04.2
-0 22:30:04.18
-0 22:30:04.183
-0 22:30:04.1835
-0 22:30:04.18347
-0 22:30:04.183470
-1:56
-1:56
-1:56
-1:56:51
-1:56:51
-1:56:51
-1:56:51.6
-1:56:51
-1:56:51.6
-1:56:51.59
-1:56:51
-1:56:51.6
-1:56:51.59
-1:56:51.593
-1:56:51
-1:56:51.6
-1:56:51.59
-1:56:51.593
-1:56:51.5932
-1:56:51
-1:56:51.6
-1:56:51.59
-1:56:51.593
-1:56:51.5932
-1:56:51.59319
-1:56:51
-1:56:51.6
-1:56:51.59
-1:56:51.593
-1:56:51.5932
-1:56:51.59319
-1:56:51.593190
-0 01:56
-0 01:56
-0 01:56
-0 01:56:51
-0 01:56:51
-0 01:56:51
-0 01:56:51.6
-0 01:56:51
-0 01:56:51.6
-0 01:56:51.59
-0 01:56:51
-0 01:56:51.6
-0 01:56:51.59
-0 01:56:51.593
-0 01:56:51
-0 01:56:51.6
-0 01:56:51.59
-0 01:56:51.593
-0 01:56:51.5932
-0 01:56:51
-0 01:56:51.6
-0 01:56:51.59
-0 01:56:51.593
-0 01:56:51.5932
-0 01:56:51.59319
-0 01:56:51
-0 01:56:51.6
-0 01:56:51.59
-0 01:56:51.593
-0 01:56:51.5932
-0 01:56:51.59319
-0 01:56:51.593190
*****
-24:00
-24:00
-24:00
-24:00:00
-24:00:00
-24:00:00
-24:00:00
-24:00:00.0
-24:00:00.0
-24:00:00
-24:00:00.0
-24:00:00.00
-24:00:00.00
-24:00:00
-24:00:00.0
-24:00:00.00
-24:00:00.000
-24:00:00.000
-24:00:00
-24:00:00.0
-24:00:00.00
-24:00:00.000
-24:00:00.0000
-24:00:00.0000
-24:00:00
-24:00:00.0
-24:00:00.00
-24:00:00.000
-24:00:00.0000
-24:00:00.00000
-24:00:00.00000
-1 00:00
-1 00:00
-1 00:00
-1 00:00:00
-1 00:00:00
-1 00:00:00
-1 00:00:00.0
-1 00:00:00
-1 00:00:00.0
-1 00:00:00.00
-1 00:00:00
-1 00:00:00.0
-1 00:00:00.00
-1 00:00:00.000
-1 00:00:00
-1 00:00:00.0
-1 00:00:00.00
-1 00:00:00.000
-1 00:00:00.0000
-1 00:00:00
-1 00:00:00.0
-1 00:00:00.00
-1 00:00:00.000
-1 00:00:00.0000
-1 00:00:00.00000
-1 00:00:00
-1 00:00:00.0
-1 00:00:00.00
-1 00:00:00.000
-1 00:00:00.0000
-1 00:00:00.00000
-1 00:00:00.000000
*****
-28:50
-28:50
-28:50
-28:50:38
-28:50:38
-28:50:38
-28:50:38
-28:50:38.1
-28:50:38.1
-28:50:38
-28:50:38.1
-28:50:38.12
-28:50:38.12
-28:50:38
-28:50:38.1
-28:50:38.12
-28:50:38.123
-28:50:38.123
-28:50:38
-28:50:38.1
-28:50:38.12
-28:50:38.123
-28:50:38.1230
-28:50:38.1230
-28:50:38
-28:50:38.1
-28:50:38.12
-28:50:38.123
-28:50:38.1230
-28:50:38.12301
-28:50:38.12301
-1 04:50
-1 04:50
-1 04:50
-1 04:50:38
-1 04:50:38
-1 04:50:38
-1 04:50:38.1
-1 04:50:38
-1 04:50:38.1
-1 04:50:38.12
-1 04:50:38
-1 04:50:38.1
-1 04:50:38.12
-1 04:50:38.123
-1 04:50:38
-1 04:50:38.1
-1 04:50:38.12
-1 04:50:38.123
-1 04:50:38.1230
-1 04:50:38
-1 04:50:38.1
-1 04:50:38.12
-1 04:50:38.123
-1 04:50:38.1230
-1 04:50:38.12301
-1 04:50:38
-1 04:50:38.1
-1 04:50:38.12
-1 04:50:38.123
-1 04:50:38.1230
-1 04:50:38.12301
-1 04:50:38.123010
*****
-36:31
-36:31
-36:31
-36:31:35
-36:31:35
-36:31:35
-36:31:35
-36:31:35.2
-36:31:35.2
-36:31:35
-36:31:35.2
-36:31:35.23
-36:31:35.23
-36:31:35
-36:31:35.2
-36:31:35.23
-36:31:35.235
-36:31:35.235
-36:31:35
-36:31:35.2
-36:31:35.23
-36:31:35.235
-36:31:35.2345
-36:31:35.2345
-36:31:35
-36:31:35.2
-36:31:35.23
-36:31:35.235
-36:31:35.2345
-36:31:35.23453
-36:31:35.23453
-1 12:31
-1 12:31
-1 12:31
-1 12:31:35
-1 12:31:35
-1 12:31:35
-1 12:31:35.2
-1 12:31:35
-1 12:31:35.2
-1 12:31:35.23
-1 12:31:35
-1 12:31:35.2
-1 12:31:35.23
-1 12:31:35.235
-1 12:31:35
-1 12:31:35.2
-1 12:31:35.23
-1 12:31:35.235
-1 12:31:35.2345
-1 12:31:35
-1 12:31:35.2
-1 12:31:35.23
-1 12:31:35.235
-1 12:31:35.2345
-1 12:31:35.23453
-1 12:31:35
-1 12:31:35.2
-1 12:31:35.23
-1 12:31:35.235
-1 12:31:35.2345
-1 12:31:35.23453
-1 12:31:35.234530
*****
-36:47
-36:47
-36:47
-36:47:53
-36:47:53
-36:47:53
-36:47:53
-36:47:53.3
-36:47:53.3
-36:47:53
-36:47:53.3
-36:47:53.35
-36:47:53.35
-36:47:53
-36:47:53.3
-36:47:53.35
-36:47:53.345
-36:47:53.345
-36:47:53
-36:47:53.3
-36:47:53.35
-36:47:53.345
-36:47:53.3451
-36:47:53.3451
-36:47:53
-36:47:53.3
-36:47:53.35
-36:47:53.345
-36:47:53.3451
-36:47:53.34505
-36:47:53.34505
-1 12:47
-1 12:47
-1 12:47
-1 12:47:53
-1 12:47:53
-1 12:47:53
-1 12:47:53.3
-1 12:47:53
-1 12:47:53.3
-1 12:47:53.35
-1 12:47:53
-1 12:47:53.3
-1 12:47:53.35
-1 12:47:53.345
-1 12:47:53
-1 12:47:53.3
-1 12:47:53.35
-1 12:47:53.345
-1 12:47:53.3451
-1 12:47:53
-1 12:47:53.3
-1 12:47:53.35
-1 12:47:53.345
-1 12:47:53.3451
-1 12:47:53.34505
-1 12:47:53
-1 12:47:53.3
-1 12:47:53.35
-1 12:47:53.345
-1 12:47:53.3451
-1 12:47:53.34505
-1 12:47:53.345050
*****
-25:26
-25:26
-25:26
-25:26:00
-25:26:00
-25:26:00
-25:26:00
-25:26:00.5
-25:26:00.5
-25:26:00
-25:26:00.5
-25:26:00.46
-25:26:00.46
-25:26:00
-25:26:00.5
-25:26:00.46
-25:26:00.456
-25:26:00.456
-25:26:00
-25:26:00.5
-25:26:00.46
-25:26:00.456
-25:26:00.4561
-25:26:00.4561
-25:26:00
-25:26:00.5
-25:26:00.46
-25:26:00.456
-25:26:00.4561
-25:26:00.45615
-25:26:00.45615
-1 01:26
-1 01:26
-1 01:26
-1 01:26:00
-1 01:26:00
-1 01:26:00
-1 01:26:00.5
-1 01:26:00
-1 01:26:00.5
-1 01:26:00.46
-1 01:26:00
-1 01:26:00.5
-1 01:26:00.46
-1 01:26:00.456
-1 01:26:00
-1 01:26:00.5
-1 01:26:00.46
-1 01:26:00.456
-1 01:26:00.4561
-1 01:26:00
-1 01:26:00.5
-1 01:26:00.46
-1 01:26:00.456
-1 01:26:00.4561
-1 01:26:00.45615
-1 01:26:00
-1 01:26:00.5
-1 01:26:00.46
-1 01:26:00.456
-1 01:26:00.4561
-1 01:26:00.45615
-1 01:26:00.456150
*****
-44:58
-44:58
-44:58
-44:58:11
-44:58:11
-44:58:11
-44:58:11
-44:58:11.6
-44:58:11.6
-44:58:11
-44:58:11.6
-44:58:11.57
-44:58:11.57
-44:58:11
-44:58:11.6
-44:58:11.57
-44:58:11.567
-44:58:11.567
-44:58:11
-44:58:11.6
-44:58:11.57
-44:58:11.567
-44:58:11.5668
-44:58:11.5668
-44:58:11
-44:58:11.6
-44:58:11.57
-44:58:11.567
-44:58:11.5668
-44:58:11.56677
-44:58:11.56677
-1 20:58
-1 20:58
-1 20:58
-1 20:58:11
-1 20:58:11
-1 20:58:11
-1 20:58:11.6
-1 20:58:11
-1 20:58:11.6
-1 20:58:11.57
-1 20:58:11
-1 20:58:11.6
-1 20:58:11.57
-1 20:58:11.567
-1 20:58:11
-1 20:58:11.6
-1 20:58:11.57
-1 20:58:11.567
-1 20:58:11.5668
-1 20:58:11
-1 20:58:11.6
-1 20:58:11.57
-1 20:58:11.567
-1 20:58:11.5668
-1 20:58:11.56677
-1 20:58:11
-1 20:58:11.6
-1 20:58:11.57
-1 20:58:11.567
-1 20:58:11.5668
-1 20:58:11.56677
-1 20:58:11.566770
*****
-31:36
-31:36
-31:36
-31:36:05
-31:36:05
-31:36:05
-31:36:05
-31:36:05.2
-31:36:05.2
-31:36:05
-31:36:05.2
-31:36:05.19
-31:36:05.19
-31:36:05
-31:36:05.2
-31:36:05.19
-31:36:05.190
-31:36:05.190
-31:36:05
-31:36:05.2
-31:36:05.19
-31:36:05.190
-31:36:05.1896
-31:36:05.1896
-31:36:05
-31:36:05.2
-31:36:05.19
-31:36:05.190
-31:36:05.1896
-31:36:05.18964
-31:36:05.18964
-1 07:36
-1 07:36
-1 07:36
-1 07:36:05
-1 07:36:05
-1 07:36:05
-1 07:36:05.2
-1 07:36:05
-1 07:36:05.2
-1 07:36:05.19
-1 07:36:05
-1 07:36:05.2
-1 07:36:05.19
-1 07:36:05.190
-1 07:36:05
-1 07:36:05.2
-1 07:36:05.19
-1 07:36:05.190
-1 07:36:05.1896
-1 07:36:05
-1 07:36:05.2
-1 07:36:05.19
-1 07:36:05.190
-1 07:36:05.1896
-1 07:36:05.18964
-1 07:36:05
-1 07:36:05.2
-1 07:36:05.19
-1 07:36:05.190
-1 07:36:05.1896
-1 07:36:05.18964
-1 07:36:05.189640
*****
-39:43
-39:43
-39:43
-39:43:49
-39:43:49
-39:43:49
-39:43:49
-39:43:49.8
-39:43:49.8
-39:43:49
-39:43:49.8
-39:43:49.83
-39:43:49.83
-39:43:49
-39:43:49.8
-39:43:49.83
-39:43:49.831
-39:43:49.831
-39:43:49
-39:43:49.8
-39:43:49.83
-39:43:49.831
-39:43:49.8313
-39:43:49.8313
-39:43:49
-39:43:49.8
-39:43:49.83
-39:43:49.831
-39:43:49.8313
-39:43:49.83132
-39:43:49.83132
-1 15:43
-1 15:43
-1 15:43
-1 15:43:49
-1 15:43:49
-1 15:43:49
-1 15:43:49.8
-1 15:43:49
-1 15:43:49.8
-1 15:43:49.83
-1 15:43:49
-1 15:43:49.8
-1 15:43:49.83
-1 15:43:49.831
-1 15:43:49
-1 15:43:49.8
-1 15:43:49.83
-1 15:43:49.831
-1 15:43:49.8313
-1 15:43:49
-1 15:43:49.8
-1 15:43:49.83
-1 15:43:49.831
-1 15:43:49.8313
-1 15:43:49.83132
-1 15:43:49
-1 15:43:49.8
-1 15:43:49.83
-1 15:43:49.831
-1 15:43:49.8313
-1 15:43:49.83132
-1 15:43:49.831320
*****
-28:25
-28:25
-28:25
-28:25:09
-28:25:09
-28:25:09
-28:25:09
-28:25:09.0
-28:25:09.0
-28:25:09
-28:25:09.0
-28:25:09.01
-28:25:09.01
-28:25:09
-28:25:09.0
-28:25:09.01
-28:25:09.013
-28:25:09.013
-28:25:09
-28:25:09.0
-28:25:09.01
-28:25:09.013
-28:25:09.0129
-28:25:09.0129
-28:25:09
-28:25:09.0
-28:25:09.01
-28:25:09.013
-28:25:09.0129
-28:25:09.01293
-28:25:09.01293
-1 04:25
-1 04:25
-1 04:25
-1 04:25:09
-1 04:25:09
-1 04:25:09
-1 04:25:09.0
-1 04:25:09
-1 04:25:09.0
-1 04:25:09.01
-1 04:25:09
-1 04:25:09.0
-1 04:25:09.01
-1 04:25:09.013
-1 04:25:09
-1 04:25:09.0
-1 04:25:09.01
-1 04:25:09.013
-1 04:25:09.0129
-1 04:25:09
-1 04:25:09.0
-1 04:25:09.01
-1 04:25:09.013
-1 04:25:09.0129
-1 04:25:09.01293
-1 04:25:09
-1 04:25:09.0
-1 04:25:09.01
-1 04:25:09.013
-1 04:25:09.0129
-1 04:25:09.01293
-1 04:25:09.012930
*****
-30:49
-30:49
-30:49
-30:49:27
-30:49:27
-30:49:27
-30:49:27
-30:49:27.5
-30:49:27.5
-30:49:27
-30:49:27.5
-30:49:27.52
-30:49:27.52
-30:49:27
-30:49:27.5
-30:49:27.52
-30:49:27.524
-30:49:27.524
-30:49:27
-30:49:27.5
-30:49:27.52
-30:49:27.524
-30:49:27.5237
-30:49:27.5237
-30:49:27
-30:49:27.5
-30:49:27.52
-30:49:27.524
-30:49:27.5237
-30:49:27.52375
-30:49:27.52375
-1 06:49
-1 06:49
-1 06:49
-1 06:49:27
-1 06:49:27
-1 06:49:27
-1 06:49:27.5
-1 06:49:27
-1 06:49:27.5
-1 06:49:27.52
-1 06:49:27
-1 06:49:27.5
-1 06:49:27.52
-1 06:49:27.524
-1 06:49:27
-1 06:49:27.5
-1 06:49:27.52
-1 06:49:27.524
-1 06:49:27.5237
-1 06:49:27
-1 06:49:27.5
-1 06:49:27.52
-1 06:49:27.524
-1 06:49:27.5237
-1 06:49:27.52375
-1 06:49:27
-1 06:49:27.5
-1 06:49:27.52
-1 06:49:27.524
-1 06:49:27.5237
-1 06:49:27.52375
-1 06:49:27.523750
*****
-26:57
-26:57
-26:57
-26:57:52
-26:57:52
-26:57:52
-26:57:52
-26:57:52.0
-26:57:52.0
-26:57:52
-26:57:52.0
-26:57:52.02
-26:57:52.02
-26:57:52
-26:57:52.0
-26:57:52.02
-26:57:52.016
-26:57:52.016
-26:57:52
-26:57:52.0
-26:57:52.02
-26:57:52.016
-26:57:52.0157
-26:57:52.0157
-26:57:52
-26:57:52.0
-26:57:52.02
-26:57:52.016
-26:57:52.0157
-26:57:52.01565
-26:57:52.01565
-1 02:57
-1 02:57
-1 02:57
-1 02:57:52
-1 02:57:52
-1 02:57:52
-1 02:57:52.0
-1 02:57:52
-1 02:57:52.0
-1 02:57:52.02
-1 02:57:52
-1 02:57:52.0
-1 02:57:52.02
-1 02:57:52.016
-1 02:57:52
-1 02:57:52.0
-1 02:57:52.02
-1 02:57:52.016
-1 02:57:52.0157
-1 02:57:52
-1 02:57:52.0
-1 02:57:52.02
-1 02:57:52.016
-1 02:57:52.0157
-1 02:57:52.01565
-1 02:57:52
-1 02:57:52.0
-1 02:57:52.02
-1 02:57:52.016
-1 02:57:52.0157
-1 02:57:52.01565
-1 02:57:52.015650
*****
-40:45
-40:45
-40:45
-40:45:44
-40:45:44
-40:45:44
-40:45:44
-40:45:44.9
-40:45:44.9
-40:45:44
-40:45:44.9
-40:45:44.87
-40:45:44.87
-40:45:44
-40:45:44.9
-40:45:44.87
-40:45:44.865
-40:45:44.865
-40:45:44
-40:45:44.9
-40:45:44.87
-40:45:44.865
-40:45:44.8653
-40:45:44.8653
-40:45:44
-40:45:44.9
-40:45:44.87
-40:45:44.865
-40:45:44.8653
-40:45:44.86529
-40:45:44.86529
-1 16:45
-1 16:45
-1 16:45
-1 16:45:44
-1 16:45:44
-1 16:45:44
-1 16:45:44.9
-1 16:45:44
-1 16:45:44.9
-1 16:45:44.87
-1 16:45:44
-1 16:45:44.9
-1 16:45:44.87
-1 16:45:44.865
-1 16:45:44
-1 16:45:44.9
-1 16:45:44.87
-1 16:45:44.865
-1 16:45:44.8653
-1 16:45:44
-1 16:45:44.9
-1 16:45:44.87
-1 16:45:44.865
-1 16:45:44.8653
-1 16:45:44.86529
-1 16:45:44
-1 16:45:44.9
-1 16:45:44.87
-1 16:45:44.865
-1 16:45:44.8653
-1 16:45:44.86529
-1 16:45:44.865290
*****
-45:30
-45:30
-45:30
-45:30:57
-45:30:57
-45:30:57
-45:30:57
-45:30:57.8
-45:30:57.8
-45:30:57
-45:30:57.8
-45:30:57.82
-45:30:57.82
-45:30:57
-45:30:57.8
-45:30:57.82
-45:30:57.820
-45:30:57.820
-45:30:57
-45:30:57.8
-45:30:57.82
-45:30:57.820
-45:30:57.8205
-45:30:57.8205
-45:30:57
-45:30:57.8
-45:30:57.82
-45:30:57.820
-45:30:57.8205
-45:30:57.82047
-45:30:57.82047
-1 21:30
-1 21:30
-1 21:30
-1 21:30:57
-1 21:30:57
-1 21:30:57
-1 21:30:57.8
-1 21:30:57
-1 21:30:57.8
-1 21:30:57.82
-1 21:30:57
-1 21:30:57.8
-1 21:30:57.82
-1 21:30:57.820
-1 21:30:57
-1 21:30:57.8
-1 21:30:57.82
-1 21:30:57.820
-1 21:30:57.8205
-1 21:30:57
-1 21:30:57.8
-1 21:30:57.82
-1 21:30:57.820
-1 21:30:57.8205
-1 21:30:57.82047
-1 21:30:57
-1 21:30:57.8
-1 21:30:57.82
-1 21:30:57.820
-1 21:30:57.8205
-1 21:30:57.82047
-1 21:30:57.820470
*****
-28:25
-28:25
-28:25
-28:25:09
-28:25:09
-28:25:09
-28:25:09
-28:25:09.2
-28:25:09.2
-28:25:09
-28:25:09.2
-28:25:09.15
-28:25:09.15
-28:25:09
-28:25:09.2
-28:25:09.15
-28:25:09.154
-28:25:09.154
-28:25:09
-28:25:09.2
-28:25:09.15
-28:25:09.154
-28:25:09.1540
-28:25:09.1540
-28:25:09
-28:25:09.2
-28:25:09.15
-28:25:09.154
-28:25:09.1540
-28:25:09.15395
-28:25:09.15395
-1 04:25
-1 04:25
-1 04:25
-1 04:25:09
-1 04:25:09
-1 04:25:09
-1 04:25:09.2
-1 04:25:09
-1 04:25:09.2
-1 04:25:09.15
-1 04:25:09
-1 04:25:09.2
-1 04:25:09.15
-1 04:25:09.154
-1 04:25:09
-1 04:25:09.2
-1 04:25:09.15
-1 04:25:09.154
-1 04:25:09.1540
-1 04:25:09
-1 04:25:09.2
-1 04:25:09.15
-1 04:25:09.154
-1 04:25:09.1540
-1 04:25:09.15395
-1 04:25:09
-1 04:25:09.2
-1 04:25:09.15
-1 04:25:09.154
-1 04:25:09.1540
-1 04:25:09.15395
-1 04:25:09.153950
*****
-30:49
-30:49
-30:49
-30:49:27
-30:49:27
-30:49:27
-30:49:27
-30:49:27.1
-30:49:27.1
-30:49:27
-30:49:27.1
-30:49:27.11
-30:49:27.11
-30:49:27
-30:49:27.1
-30:49:27.11
-30:49:27.105
-30:49:27.105
-30:49:27
-30:49:27.1
-30:49:27.11
-30:49:27.105
-30:49:27.1053
-30:49:27.1053
-30:49:27
-30:49:27.1
-30:49:27.11
-30:49:27.105
-30:49:27.1053
-30:49:27.10533
-30:49:27.10533
-1 06:49
-1 06:49
-1 06:49
-1 06:49:27
-1 06:49:27
-1 06:49:27
-1 06:49:27.1
-1 06:49:27
-1 06:49:27.1
-1 06:49:27.11
-1 06:49:27
-1 06:49:27.1
-1 06:49:27.11
-1 06:49:27.105
-1 06:49:27
-1 06:49:27.1
-1 06:49:27.11
-1 06:49:27.105
-1 06:49:27.1053
-1 06:49:27
-1 06:49:27.1
-1 06:49:27.11
-1 06:49:27.105
-1 06:49:27.1053
-1 06:49:27.10533
-1 06:49:27
-1 06:49:27.1
-1 06:49:27.11
-1 06:49:27.105
-1 06:49:27.1053
-1 06:49:27.10533
-1 06:49:27.105330
*****
-26:57
-26:57
-26:57
-26:57:52
-26:57:52
-26:57:52
-26:57:52
-26:57:52.5
-26:57:52.5
-26:57:52
-26:57:52.5
-26:57:52.48
-26:57:52.48
-26:57:52
-26:57:52.5
-26:57:52.48
-26:57:52.482
-26:57:52.482
-26:57:52
-26:57:52.5
-26:57:52.48
-26:57:52.482
-26:57:52.4823
-26:57:52.4823
-26:57:52
-26:57:52.5
-26:57:52.48
-26:57:52.482
-26:57:52.4823
-26:57:52.48229
-26:57:52.48229
-1 02:57
-1 02:57
-1 02:57
-1 02:57:52
-1 02:57:52
-1 02:57:52
-1 02:57:52.5
-1 02:57:52
-1 02:57:52.5
-1 02:57:52.48
-1 02:57:52
-1 02:57:52.5
-1 02:57:52.48
-1 02:57:52.482
-1 02:57:52
-1 02:57:52.5
-1 02:57:52.48
-1 02:57:52.482
-1 02:57:52.4823
-1 02:57:52
-1 02:57:52.5
-1 02:57:52.48
-1 02:57:52.482
-1 02:57:52.4823
-1 02:57:52.48229
-1 02:57:52
-1 02:57:52.5
-1 02:57:52.48
-1 02:57:52.482
-1 02:57:52.4823
-1 02:57:52.48229
-1 02:57:52.482290
*****
-40:45
-40:45
-40:45
-40:45:44
-40:45:44
-40:45:44
-40:45:44
-40:45:44.7
-40:45:44.7
-40:45:44
-40:45:44.7
-40:45:44.66
-40:45:44.66
-40:45:44
-40:45:44.7
-40:45:44.66
-40:45:44.658
-40:45:44.658
-40:45:44
-40:45:44.7
-40:45:44.66
-40:45:44.658
-40:45:44.6583
-40:45:44.6583
-40:45:44
-40:45:44.7
-40:45:44.66
-40:45:44.658
-40:45:44.6583
-40:45:44.65827
-40:45:44.65827
-1 16:45
-1 16:45
-1 16:45
-1 16:45:44
-1 16:45:44
-1 16:45:44
-1 16:45:44.7
-1 16:45:44
-1 16:45:44.7
-1 16:45:44.66
-1 16:45:44
-1 16:45:44.7
-1 16:45:44.66
-1 16:45:44.658
-1 16:45:44
-1 16:45:44.7
-1 16:45:44.66
-1 16:45:44.658
-1 16:45:44.6583
-1 16:45:44
-1 16:45:44.7
-1 16:45:44.66
-1 16:45:44.658
-1 16:45:44.6583
-1 16:45:44.65827
-1 16:45:44
-1 16:45:44.7
-1 16:45:44.66
-1 16:45:44.658
-1 16:45:44.6583
-1 16:45:44.65827
-1 16:45:44.658270
*****
-45:30
-45:30
-45:30
-45:30:57
-45:30:57
-45:30:57
-45:30:57
-45:30:57.6
-45:30:57.6
-45:30:57
-45:30:57.6
-45:30:57.58
-45:30:57.58
-45:30:57
-45:30:57.6
-45:30:57.58
-45:30:57.582
-45:30:57.582
-45:30:57
-45:30:57.6
-45:30:57.58
-45:30:57.582
-45:30:57.5822
-45:30:57.5822
-45:30:57
-45:30:57.6
-45:30:57.58
-45:30:57.582
-45:30:57.5822
-45:30:57.58219
-45:30:57.58219
-1 21:30
-1 21:30
-1 21:30
-1 21:30:57
-1 21:30:57
-1 21:30:57
-1 21:30:57.6
-1 21:30:57
-1 21:30:57.6
-1 21:30:57.58
-1 21:30:57
-1 21:30:57.6
-1 21:30:57.58
-1 21:30:57.582
-1 21:30:57
-1 21:30:57.6
-1 21:30:57.58
-1 21:30:57.582
-1 21:30:57.5822
-1 21:30:57
-1 21:30:57.6
-1 21:30:57.58
-1 21:30:57.582
-1 21:30:57.5822
-1 21:30:57.58219
-1 21:30:57
-1 21:30:57.6
-1 21:30:57.58
-1 21:30:57.582
-1 21:30:57.5822
-1 21:30:57.58219
-1 21:30:57.582190
*****
-46:30
-46:30
-46:30
-46:30:04
-46:30:04
-46:30:04
-46:30:04
-46:30:04.2
-46:30:04.2
-46:30:04
-46:30:04.2
-46:30:04.18
-46:30:04.18
-46:30:04
-46:30:04.2
-46:30:04.18
-46:30:04.183
-46:30:04.183
-46:30:04
-46:30:04.2
-46:30:04.18
-46:30:04.183
-46:30:04.1835
-46:30:04.1835
-46:30:04
-46:30:04.2
-46:30:04.18
-46:30:04.183
-46:30:04.1835
-46:30:04.18347
-46:30:04.18347
-1 22:30
-1 22:30
-1 22:30
-1 22:30:04
-1 22:30:04
-1 22:30:04
-1 22:30:04.2
-1 22:30:04
-1 22:30:04.2
-1 22:30:04.18
-1 22:30:04
-1 22:30:04.2
-1 22:30:04.18
-1 22:30:04.183
-1 22:30:04
-1 22:30:04.2
-1 22:30:04.18
-1 22:30:04.183
-1 22:30:04.1835
-1 22:30:04
-1 22:30:04.2
-1 22:30:04.18
-1 22:30:04.183
-1 22:30:04.1835
-1 22:30:04.18347
-1 22:30:04
-1 22:30:04.2
-1 22:30:04.18
-1 22:30:04.183
-1 22:30:04.1835
-1 22:30:04.18347
-1 22:30:04.183470
*****
-25:56
-25:56
-25:56
-25:56:51
-25:56:51
-25:56:51
-25:56:51
-25:56:51.6
-25:56:51.6
-25:56:51
-25:56:51.6
-25:56:51.59
-25:56:51.59
-25:56:51
-25:56:51.6
-25:56:51.59
-25:56:51.593
-25:56:51.593
-25:56:51
-25:56:51.6
-25:56:51.59
-25:56:51.593
-25:56:51.5932
-25:56:51.5932
-25:56:51
-25:56:51.6
-25:56:51.59
-25:56:51.593
-25:56:51.5932
-25:56:51.59319
-25:56:51.59319
-1 01:56
-1 01:56
-1 01:56
-1 01:56:51
-1 01:56:51
-1 01:56:51
-1 01:56:51.6
-1 01:56:51
-1 01:56:51.6
-1 01:56:51.59
-1 01:56:51
-1 01:56:51.6
-1 01:56:51.59
-1 01:56:51.593
-1 01:56:51
-1 01:56:51.6
-1 01:56:51.59
-1 01:56:51.593
-1 01:56:51.5932
-1 01:56:51
-1 01:56:51.6
-1 01:56:51.59
-1 01:56:51.593
-1 01:56:51.5932
-1 01:56:51.59319
-1 01:56:51
-1 01:56:51.6
-1 01:56:51.59
-1 01:56:51.593
-1 01:56:51.5932
-1 01:56:51.59319
-1 01:56:51.593190
*****
-48:00
-48:00
-48:00
-48:00:00
-48:00:00
-48:00:00
-48:00:00
-48:00:00.0
-48:00:00.0
-48:00:00
-48:00:00.0
-48:00:00.00
-48:00:00.00
-48:00:00
-48:00:00.0
-48:00:00.00
-48:00:00.000
-48:00:00.000
-48:00:00
-48:00:00.0
-48:00:00.00
-48:00:00.000
-48:00:00.0000
-48:00:00.0000
-48:00:00
-48:00:00.0
-48:00:00.00
-48:00:00.000
-48:00:00.0000
-48:00:00.00000
-48:00:00.00000
-2 00:00
-2 00:00
-2 00:00
-2 00:00:00
-2 00:00:00
-2 00:00:00
-2 00:00:00.0
-2 00:00:00
-2 00:00:00.0
-2 00:00:00.00
-2 00:00:00
-2 00:00:00.0
-2 00:00:00.00
-2 00:00:00.000
-2 00:00:00
-2 00:00:00.0
-2 00:00:00.00
-2 00:00:00.000
-2 00:00:00.0000
-2 00:00:00
-2 00:00:00.0
-2 00:00:00.00
-2 00:00:00.000
-2 00:00:00.0000
-2 00:00:00.00000
-2 00:00:00
-2 00:00:00.0
-2 00:00:00.00
-2 00:00:00.000
-2 00:00:00.0000
-2 00:00:00.00000
-2 00:00:00.000000
*****
-52:50
-52:50
-52:50
-52:50:38
-52:50:38
-52:50:38
-52:50:38
-52:50:38.1
-52:50:38.1
-52:50:38
-52:50:38.1
-52:50:38.12
-52:50:38.12
-52:50:38
-52:50:38.1
-52:50:38.12
-52:50:38.123
-52:50:38.123
-52:50:38
-52:50:38.1
-52:50:38.12
-52:50:38.123
-52:50:38.1230
-52:50:38.1230
-52:50:38
-52:50:38.1
-52:50:38.12
-52:50:38.123
-52:50:38.1230
-52:50:38.12301
-52:50:38.12301
-2 04:50
-2 04:50
-2 04:50
-2 04:50:38
-2 04:50:38
-2 04:50:38
-2 04:50:38.1
-2 04:50:38
-2 04:50:38.1
-2 04:50:38.12
-2 04:50:38
-2 04:50:38.1
-2 04:50:38.12
-2 04:50:38.123
-2 04:50:38
-2 04:50:38.1
-2 04:50:38.12
-2 04:50:38.123
-2 04:50:38.1230
-2 04:50:38
-2 04:50:38.1
-2 04:50:38.12
-2 04:50:38.123
-2 04:50:38.1230
-2 04:50:38.12301
-2 04:50:38
-2 04:50:38.1
-2 04:50:38.12
-2 04:50:38.123
-2 04:50:38.1230
-2 04:50:38.12301
-2 04:50:38.123010
*****
-60:31
-60:31
-60:31
-60:31:35
-60:31:35
-60:31:35
-60:31:35
-60:31:35.2
-60:31:35.2
-60:31:35
-60:31:35.2
-60:31:35.23
-60:31:35.23
-60:31:35
-60:31:35.2
-60:31:35.23
-60:31:35.235
-60:31:35.235
-60:31:35
-60:31:35.2
-60:31:35.23
-60:31:35.235
-60:31:35.2345
-60:31:35.2345
-60:31:35
-60:31:35.2
-60:31:35.23
-60:31:35.235
-60:31:35.2345
-60:31:35.23453
-60:31:35.23453
-2 12:31
-2 12:31
-2 12:31
-2 12:31:35
-2 12:31:35
-2 12:31:35
-2 12:31:35.2
-2 12:31:35
-2 12:31:35.2
-2 12:31:35.23
-2 12:31:35
-2 12:31:35.2
-2 12:31:35.23
-2 12:31:35.235
-2 12:31:35
-2 12:31:35.2
-2 12:31:35.23
-2 12:31:35.235
-2 12:31:35.2345
-2 12:31:35
-2 12:31:35.2
-2 12:31:35.23
-2 12:31:35.235
-2 12:31:35.2345
-2 12:31:35.23453
-2 12:31:35
-2 12:31:35.2
-2 12:31:35.23
-2 12:31:35.235
-2 12:31:35.2345
-2 12:31:35.23453
-2 12:31:35.234530
*****
-60:47
-60:47
-60:47
-60:47:53
-60:47:53
-60:47:53
-60:47:53
-60:47:53.3
-60:47:53.3
-60:47:53
-60:47:53.3
-60:47:53.35
-60:47:53.35
-60:47:53
-60:47:53.3
-60:47:53.35
-60:47:53.345
-60:47:53.345
-60:47:53
-60:47:53.3
-60:47:53.35
-60:47:53.345
-60:47:53.3451
-60:47:53.3451
-60:47:53
-60:47:53.3
-60:47:53.35
-60:47:53.345
-60:47:53.3451
-60:47:53.34505
-60:47:53.34505
-2 12:47
-2 12:47
-2 12:47
-2 12:47:53
-2 12:47:53
-2 12:47:53
-2 12:47:53.3
-2 12:47:53
-2 12:47:53.3
-2 12:47:53.35
-2 12:47:53
-2 12:47:53.3
-2 12:47:53.35
-2 12:47:53.345
-2 12:47:53
-2 12:47:53.3
-2 12:47:53.35
-2 12:47:53.345
-2 12:47:53.3451
-2 12:47:53
-2 12:47:53.3
-2 12:47:53.35
-2 12:47:53.345
-2 12:47:53.3451
-2 12:47:53.34505
-2 12:47:53
-2 12:47:53.3
-2 12:47:53.35
-2 12:47:53.345
-2 12:47:53.3451
-2 12:47:53.34505
-2 12:47:53.345050
*****
-49:26
-49:26
-49:26
-49:26:00
-49:26:00
-49:26:00
-49:26:00
-49:26:00.5
-49:26:00.5
-49:26:00
-49:26:00.5
-49:26:00.46
-49:26:00.46
-49:26:00
-49:26:00.5
-49:26:00.46
-49:26:00.456
-49:26:00.456
-49:26:00
-49:26:00.5
-49:26:00.46
-49:26:00.456
-49:26:00.4562
-49:26:00.4562
-49:26:00
-49:26:00.5
-49:26:00.46
-49:26:00.456
-49:26:00.4562
-49:26:00.45615
-49:26:00.45615
-2 01:26
-2 01:26
-2 01:26
-2 01:26:00
-2 01:26:00
-2 01:26:00
-2 01:26:00.5
-2 01:26:00
-2 01:26:00.5
-2 01:26:00.46
-2 01:26:00
-2 01:26:00.5
-2 01:26:00.46
-2 01:26:00.456
-2 01:26:00
-2 01:26:00.5
-2 01:26:00.46
-2 01:26:00.456
-2 01:26:00.4562
-2 01:26:00
-2 01:26:00.5
-2 01:26:00.46
-2 01:26:00.456
-2 01:26:00.4562
-2 01:26:00.45615
-2 01:26:00
-2 01:26:00.5
-2 01:26:00.46
-2 01:26:00.456
-2 01:26:00.4562
-2 01:26:00.45615
-2 01:26:00.456150
*****
-68:58
-68:58
-68:58
-68:58:11
-68:58:11
-68:58:11
-68:58:11
-68:58:11.6
-68:58:11.6
-68:58:11
-68:58:11.6
-68:58:11.57
-68:58:11.57
-68:58:11
-68:58:11.6
-68:58:11.57
-68:58:11.567
-68:58:11.567
-68:58:11
-68:58:11.6
-68:58:11.57
-68:58:11.567
-68:58:11.5668
-68:58:11.5668
-68:58:11
-68:58:11.6
-68:58:11.57
-68:58:11.567
-68:58:11.5668
-68:58:11.56677
-68:58:11.56677
-2 20:58
-2 20:58
-2 20:58
-2 20:58:11
-2 20:58:11
-2 20:58:11
-2 20:58:11.6
-2 20:58:11
-2 20:58:11.6
-2 20:58:11.57
-2 20:58:11
-2 20:58:11.6
-2 20:58:11.57
-2 20:58:11.567
-2 20:58:11
-2 20:58:11.6
-2 20:58:11.57
-2 20:58:11.567
-2 20:58:11.5668
-2 20:58:11
-2 20:58:11.6
-2 20:58:11.57
-2 20:58:11.567
-2 20:58:11.5668
-2 20:58:11.56677
-2 20:58:11
-2 20:58:11.6
-2 20:58:11.57
-2 20:58:11.567
-2 20:58:11.5668
-2 20:58:11.56677
-2 20:58:11.566770
*****
-55:36
-55:36
-55:36
-55:36:05
-55:36:05
-55:36:05
-55:36:05
-55:36:05.2
-55:36:05.2
-55:36:05
-55:36:05.2
-55:36:05.19
-55:36:05.19
-55:36:05
-55:36:05.2
-55:36:05.19
-55:36:05.190
-55:36:05.190
-55:36:05
-55:36:05.2
-55:36:05.19
-55:36:05.190
-55:36:05.1896
-55:36:05.1896
-55:36:05
-55:36:05.2
-55:36:05.19
-55:36:05.190
-55:36:05.1896
-55:36:05.18964
-55:36:05.18964
-2 07:36
-2 07:36
-2 07:36
-2 07:36:05
-2 07:36:05
-2 07:36:05
-2 07:36:05.2
-2 07:36:05
-2 07:36:05.2
-2 07:36:05.19
-2 07:36:05
-2 07:36:05.2
-2 07:36:05.19
-2 07:36:05.190
-2 07:36:05
-2 07:36:05.2
-2 07:36:05.19
-2 07:36:05.190
-2 07:36:05.1896
-2 07:36:05
-2 07:36:05.2
-2 07:36:05.19
-2 07:36:05.190
-2 07:36:05.1896
-2 07:36:05.18964
-2 07:36:05
-2 07:36:05.2
-2 07:36:05.19
-2 07:36:05.190
-2 07:36:05.1896
-2 07:36:05.18964
-2 07:36:05.189640
*****
-63:43
-63:43
-63:43
-63:43:49
-63:43:49
-63:43:49
-63:43:49
-63:43:49.8
-63:43:49.8
-63:43:49
-63:43:49.8
-63:43:49.83
-63:43:49.83
-63:43:49
-63:43:49.8
-63:43:49.83
-63:43:49.831
-63:43:49.831
-63:43:49
-63:43:49.8
-63:43:49.83
-63:43:49.831
-63:43:49.8313
-63:43:49.8313
-63:43:49
-63:43:49.8
-63:43:49.83
-63:43:49.831
-63:43:49.8313
-63:43:49.83132
-63:43:49.83132
-2 15:43
-2 15:43
-2 15:43
-2 15:43:49
-2 15:43:49
-2 15:43:49
-2 15:43:49.8
-2 15:43:49
-2 15:43:49.8
-2 15:43:49.83
-2 15:43:49
-2 15:43:49.8
-2 15:43:49.83
-2 15:43:49.831
-2 15:43:49
-2 15:43:49.8
-2 15:43:49.83
-2 15:43:49.831
-2 15:43:49.8313
-2 15:43:49
-2 15:43:49.8
-2 15:43:49.83
-2 15:43:49.831
-2 15:43:49.8313
-2 15:43:49.83132
-2 15:43:49
-2 15:43:49.8
-2 15:43:49.83
-2 15:43:49.831
-2 15:43:49.8313
-2 15:43:49.83132
-2 15:43:49.831320
*****
-52:25
-52:25
-52:25
-52:25:09
-52:25:09
-52:25:09
-52:25:09
-52:25:09.0
-52:25:09.0
-52:25:09
-52:25:09.0
-52:25:09.01
-52:25:09.01
-52:25:09
-52:25:09.0
-52:25:09.01
-52:25:09.013
-52:25:09.013
-52:25:09
-52:25:09.0
-52:25:09.01
-52:25:09.013
-52:25:09.0129
-52:25:09.0129
-52:25:09
-52:25:09.0
-52:25:09.01
-52:25:09.013
-52:25:09.0129
-52:25:09.01293
-52:25:09.01293
-2 04:25
-2 04:25
-2 04:25
-2 04:25:09
-2 04:25:09
-2 04:25:09
-2 04:25:09.0
-2 04:25:09
-2 04:25:09.0
-2 04:25:09.01
-2 04:25:09
-2 04:25:09.0
-2 04:25:09.01
-2 04:25:09.013
-2 04:25:09
-2 04:25:09.0
-2 04:25:09.01
-2 04:25:09.013
-2 04:25:09.0129
-2 04:25:09
-2 04:25:09.0
-2 04:25:09.01
-2 04:25:09.013
-2 04:25:09.0129
-2 04:25:09.01293
-2 04:25:09
-2 04:25:09.0
-2 04:25:09.01
-2 04:25:09.013
-2 04:25:09.0129
-2 04:25:09.01293
-2 04:25:09.012930
*****
-54:49
-54:49
-54:49
-54:49:27
-54:49:27
-54:49:27
-54:49:27
-54:49:27.5
-54:49:27.5
-54:49:27
-54:49:27.5
-54:49:27.52
-54:49:27.52
-54:49:27
-54:49:27.5
-54:49:27.52
-54:49:27.524
-54:49:27.524
-54:49:27
-54:49:27.5
-54:49:27.52
-54:49:27.524
-54:49:27.5237
-54:49:27.5237
-54:49:27
-54:49:27.5
-54:49:27.52
-54:49:27.524
-54:49:27.5237
-54:49:27.52375
-54:49:27.52375
-2 06:49
-2 06:49
-2 06:49
-2 06:49:27
-2 06:49:27
-2 06:49:27
-2 06:49:27.5
-2 06:49:27
-2 06:49:27.5
-2 06:49:27.52
-2 06:49:27
-2 06:49:27.5
-2 06:49:27.52
-2 06:49:27.524
-2 06:49:27
-2 06:49:27.5
-2 06:49:27.52
-2 06:49:27.524
-2 06:49:27.5237
-2 06:49:27
-2 06:49:27.5
-2 06:49:27.52
-2 06:49:27.524
-2 06:49:27.5237
-2 06:49:27.52375
-2 06:49:27
-2 06:49:27.5
-2 06:49:27.52
-2 06:49:27.524
-2 06:49:27.5237
-2 06:49:27.52375
-2 06:49:27.523750
*****
-50:57
-50:57
-50:57
-50:57:52
-50:57:52
-50:57:52
-50:57:52
-50:57:52.0
-50:57:52.0
-50:57:52
-50:57:52.0
-50:57:52.02
-50:57:52.02
-50:57:52
-50:57:52.0
-50:57:52.02
-50:57:52.016
-50:57:52.016
-50:57:52
-50:57:52.0
-50:57:52.02
-50:57:52.016
-50:57:52.0156
-50:57:52.0156
-50:57:52
-50:57:52.0
-50:57:52.02
-50:57:52.016
-50:57:52.0156
-50:57:52.01565
-50:57:52.01565
-2 02:57
-2 02:57
-2 02:57
-2 02:57:52
-2 02:57:52
-2 02:57:52
-2 02:57:52.0
-2 02:57:52
-2 02:57:52.0
-2 02:57:52.02
-2 02:57:52
-2 02:57:52.0
-2 02:57:52.02
-2 02:57:52.016
-2 02:57:52
-2 02:57:52.0
-2 02:57:52.02
-2 02:57:52.016
-2 02:57:52.0156
-2 02:57:52
-2 02:57:52.0
-2 02:57:52.02
-2 02:57:52.016
-2 02:57:52.0156
-2 02:57:52.01565
-2 02:57:52
-2 02:57:52.0
-2 02:57:52.02
-2 02:57:52.016
-2 02:57:52.0156
-2 02:57:52.01565
-2 02:57:52.015650
*****
-64:45
-64:45
-64:45
-64:45:44
-64:45:44
-64:45:44
-64:45:44
-64:45:44.9
-64:45:44.9
-64:45:44
-64:45:44.9
-64:45:44.87
-64:45:44.87
-64:45:44
-64:45:44.9
-64:45:44.87
-64:45:44.865
-64:45:44.865
-64:45:44
-64:45:44.9
-64:45:44.87
-64:45:44.865
-64:45:44.8653
-64:45:44.8653
-64:45:44
-64:45:44.9
-64:45:44.87
-64:45:44.865
-64:45:44.8653
-64:45:44.86529
-64:45:44.86529
-2 16:45
-2 16:45
-2 16:45
-2 16:45:44
-2 16:45:44
-2 16:45:44
-2 16:45:44.9
-2 16:45:44
-2 16:45:44.9
-2 16:45:44.87
-2 16:45:44
-2 16:45:44.9
-2 16:45:44.87
-2 16:45:44.865
-2 16:45:44
-2 16:45:44.9
-2 16:45:44.87
-2 16:45:44.865
-2 16:45:44.8653
-2 16:45:44
-2 16:45:44.9
-2 16:45:44.87
-2 16:45:44.865
-2 16:45:44.8653
-2 16:45:44.86529
-2 16:45:44
-2 16:45:44.9
-2 16:45:44.87
-2 16:45:44.865
-2 16:45:44.8653
-2 16:45:44.86529
-2 16:45:44.865290
*****
-69:30
-69:30
-69:30
-69:30:57
-69:30:57
-69:30:57
-69:30:57
-69:30:57.8
-69:30:57.8
-69:30:57
-69:30:57.8
-69:30:57.82
-69:30:57.82
-69:30:57
-69:30:57.8
-69:30:57.82
-69:30:57.820
-69:30:57.820
-69:30:57
-69:30:57.8
-69:30:57.82
-69:30:57.820
-69:30:57.8205
-69:30:57.8205
-69:30:57
-69:30:57.8
-69:30:57.82
-69:30:57.820
-69:30:57.8205
-69:30:57.82047
-69:30:57.82047
-2 21:30
-2 21:30
-2 21:30
-2 21:30:57
-2 21:30:57
-2 21:30:57
-2 21:30:57.8
-2 21:30:57
-2 21:30:57.8
-2 21:30:57.82
-2 21:30:57
-2 21:30:57.8
-2 21:30:57.82
-2 21:30:57.820
-2 21:30:57
-2 21:30:57.8
-2 21:30:57.82
-2 21:30:57.820
-2 21:30:57.8205
-2 21:30:57
-2 21:30:57.8
-2 21:30:57.82
-2 21:30:57.820
-2 21:30:57.8205
-2 21:30:57.82047
-2 21:30:57
-2 21:30:57.8
-2 21:30:57.82
-2 21:30:57.820
-2 21:30:57.8205
-2 21:30:57.82047
-2 21:30:57.820470
*****
-52:25
-52:25
-52:25
-52:25:09
-52:25:09
-52:25:09
-52:25:09
-52:25:09.2
-52:25:09.2
-52:25:09
-52:25:09.2
-52:25:09.15
-52:25:09.15
-52:25:09
-52:25:09.2
-52:25:09.15
-52:25:09.154
-52:25:09.154
-52:25:09
-52:25:09.2
-52:25:09.15
-52:25:09.154
-52:25:09.1540
-52:25:09.1540
-52:25:09
-52:25:09.2
-52:25:09.15
-52:25:09.154
-52:25:09.1540
-52:25:09.15395
-52:25:09.15395
-2 04:25
-2 04:25
-2 04:25
-2 04:25:09
-2 04:25:09
-2 04:25:09
-2 04:25:09.2
-2 04:25:09
-2 04:25:09.2
-2 04:25:09.15
-2 04:25:09
-2 04:25:09.2
-2 04:25:09.15
-2 04:25:09.154
-2 04:25:09
-2 04:25:09.2
-2 04:25:09.15
-2 04:25:09.154
-2 04:25:09.1540
-2 04:25:09
-2 04:25:09.2
-2 04:25:09.15
-2 04:25:09.154
-2 04:25:09.1540
-2 04:25:09.15395
-2 04:25:09
-2 04:25:09.2
-2 04:25:09.15
-2 04:25:09.154
-2 04:25:09.1540
-2 04:25:09.15395
-2 04:25:09.153950
*****
-54:49
-54:49
-54:49
-54:49:27
-54:49:27
-54:49:27
-54:49:27
-54:49:27.1
-54:49:27.1
-54:49:27
-54:49:27.1
-54:49:27.11
-54:49:27.11
-54:49:27
-54:49:27.1
-54:49:27.11
-54:49:27.105
-54:49:27.105
-54:49:27
-54:49:27.1
-54:49:27.11
-54:49:27.105
-54:49:27.1053
-54:49:27.1053
-54:49:27
-54:49:27.1
-54:49:27.11
-54:49:27.105
-54:49:27.1053
-54:49:27.10533
-54:49:27.10533
-2 06:49
-2 06:49
-2 06:49
-2 06:49:27
-2 06:49:27
-2 06:49:27
-2 06:49:27.1
-2 06:49:27
-2 06:49:27.1
-2 06:49:27.11
-2 06:49:27
-2 06:49:27.1
-2 06:49:27.11
-2 06:49:27.105
-2 06:49:27
-2 06:49:27.1
-2 06:49:27.11
-2 06:49:27.105
-2 06:49:27.1053
-2 06:49:27
-2 06:49:27.1
-2 06:49:27.11
-2 06:49:27.105
-2 06:49:27.1053
-2 06:49:27.10533
-2 06:49:27
-2 06:49:27.1
-2 06:49:27.11
-2 06:49:27.105
-2 06:49:27.1053
-2 06:49:27.10533
-2 06:49:27.105330
*****
-50:57
-50:57
-50:57
-50:57:52
-50:57:52
-50:57:52
-50:57:52
-50:57:52.5
-50:57:52.5
-50:57:52
-50:57:52.5
-50:57:52.48
-50:57:52.48
-50:57:52
-50:57:52.5
-50:57:52.48
-50:57:52.482
-50:57:52.482
-50:57:52
-50:57:52.5
-50:57:52.48
-50:57:52.482
-50:57:52.4823
-50:57:52.4823
-50:57:52
-50:57:52.5
-50:57:52.48
-50:57:52.482
-50:57:52.4823
-50:57:52.48229
-50:57:52.48229
-2 02:57
-2 02:57
-2 02:57
-2 02:57:52
-2 02:57:52
-2 02:57:52
-2 02:57:52.5
-2 02:57:52
-2 02:57:52.5
-2 02:57:52.48
-2 02:57:52
-2 02:57:52.5
-2 02:57:52.48
-2 02:57:52.482
-2 02:57:52
-2 02:57:52.5
-2 02:57:52.48
-2 02:57:52.482
-2 02:57:52.4823
-2 02:57:52
-2 02:57:52.5
-2 02:57:52.48
-2 02:57:52.482
-2 02:57:52.4823
-2 02:57:52.48229
-2 02:57:52
-2 02:57:52.5
-2 02:57:52.48
-2 02:57:52.482
-2 02:57:52.4823
-2 02:57:52.48229
-2 02:57:52.482290
*****
-64:45
-64:45
-64:45
-64:45:44
-64:45:44
-64:45:44
-64:45:44
-64:45:44.7
-64:45:44.7
-64:45:44
-64:45:44.7
-64:45:44.66
-64:45:44.66
-64:45:44
-64:45:44.7
-64:45:44.66
-64:45:44.658
-64:45:44.658
-64:45:44
-64:45:44.7
-64:45:44.66
-64:45:44.658
-64:45:44.6583
-64:45:44.6583
-64:45:44
-64:45:44.7
-64:45:44.66
-64:45:44.658
-64:45:44.6583
-64:45:44.65827
-64:45:44.65827
-2 16:45
-2 16:45
-2 16:45
-2 16:45:44
-2 16:45:44
-2 16:45:44
-2 16:45:44.7
-2 16:45:44
-2 16:45:44.7
-2 16:45:44.66
-2 16:45:44
-2 16:45:44.7
-2 16:45:44.66
-2 16:45:44.658
-2 16:45:44
-2 16:45:44.7
-2 16:45:44.66
-2 16:45:44.658
-2 16:45:44.6583
-2 16:45:44
-2 16:45:44.7
-2 16:45:44.66
-2 16:45:44.658
-2 16:45:44.6583
-2 16:45:44.65827
-2 16:45:44
-2 16:45:44.7
-2 16:45:44.66
-2 16:45:44.658
-2 16:45:44.6583
-2 16:45:44.65827
-2 16:45:44.658270
*****
-69:30
-69:30
-69:30
-69:30:57
-69:30:57
-69:30:57
-69:30:57
-69:30:57.6
-69:30:57.6
-69:30:57
-69:30:57.6
-69:30:57.58
-69:30:57.58
-69:30:57
-69:30:57.6
-69:30:57.58
-69:30:57.582
-69:30:57.582
-69:30:57
-69:30:57.6
-69:30:57.58
-69:30:57.582
-69:30:57.5822
-69:30:57.5822
-69:30:57
-69:30:57.6
-69:30:57.58
-69:30:57.582
-69:30:57.5822
-69:30:57.58219
-69:30:57.58219
-2 21:30
-2 21:30
-2 21:30
-2 21:30:57
-2 21:30:57
-2 21:30:57
-2 21:30:57.6
-2 21:30:57
-2 21:30:57.6
-2 21:30:57.58
-2 21:30:57
-2 21:30:57.6
-2 21:30:57.58
-2 21:30:57.582
-2 21:30:57
-2 21:30:57.6
-2 21:30:57.58
-2 21:30:57.582
-2 21:30:57.5822
-2 21:30:57
-2 21:30:57.6
-2 21:30:57.58
-2 21:30:57.582
-2 21:30:57.5822
-2 21:30:57.58219
-2 21:30:57
-2 21:30:57.6
-2 21:30:57.58
-2 21:30:57.582
-2 21:30:57.5822
-2 21:30:57.58219
-2 21:30:57.582190
*****
-70:30
-70:30
-70:30
-70:30:04
-70:30:04
-70:30:04
-70:30:04
-70:30:04.2
-70:30:04.2
-70:30:04
-70:30:04.2
-70:30:04.18
-70:30:04.18
-70:30:04
-70:30:04.2
-70:30:04.18
-70:30:04.183
-70:30:04.183
-70:30:04
-70:30:04.2
-70:30:04.18
-70:30:04.183
-70:30:04.1835
-70:30:04.1835
-70:30:04
-70:30:04.2
-70:30:04.18
-70:30:04.183
-70:30:04.1835
-70:30:04.18347
-70:30:04.18347
-2 22:30
-2 22:30
-2 22:30
-2 22:30:04
-2 22:30:04
-2 22:30:04
-2 22:30:04.2
-2 22:30:04
-2 22:30:04.2
-2 22:30:04.18
-2 22:30:04
-2 22:30:04.2
-2 22:30:04.18
-2 22:30:04.183
-2 22:30:04
-2 22:30:04.2
-2 22:30:04.18
-2 22:30:04.183
-2 22:30:04.1835
-2 22:30:04
-2 22:30:04.2
-2 22:30:04.18
-2 22:30:04.183
-2 22:30:04.1835
-2 22:30:04.18347
-2 22:30:04
-2 22:30:04.2
-2 22:30:04.18
-2 22:30:04.183
-2 22:30:04.1835
-2 22:30:04.18347
-2 22:30:04.183470
*****
-49:56
-49:56
-49:56
-49:56:51
-49:56:51
-49:56:51
-49:56:51
-49:56:51.6
-49:56:51.6
-49:56:51
-49:56:51.6
-49:56:51.59
-49:56:51.59
-49:56:51
-49:56:51.6
-49:56:51.59
-49:56:51.593
-49:56:51.593
-49:56:51
-49:56:51.6
-49:56:51.59
-49:56:51.593
-49:56:51.5932
-49:56:51.5932
-49:56:51
-49:56:51.6
-49:56:51.59
-49:56:51.593
-49:56:51.5932
-49:56:51.59319
-49:56:51.59319
-2 01:56
-2 01:56
-2 01:56
-2 01:56:51
-2 01:56:51
-2 01:56:51
-2 01:56:51.6
-2 01:56:51
-2 01:56:51.6
-2 01:56:51.59
-2 01:56:51
-2 01:56:51.6
-2 01:56:51.59
-2 01:56:51.593
-2 01:56:51
-2 01:56:51.6
-2 01:56:51.59
-2 01:56:51.593
-2 01:56:51.5932
-2 01:56:51
-2 01:56:51.6
-2 01:56:51.59
-2 01:56:51.593
-2 01:56:51.5932
-2 01:56:51.59319
-2 01:56:51
-2 01:56:51.6
-2 01:56:51.59
-2 01:56:51.593
-2 01:56:51.5932
-2 01:56:51.59319
-2 01:56:51.593190
*****
******
*******
-1296:00
-1296:00
-1296:00
-1296:00
-1296:00:00
-1296:00:00
-1296:00:00
-1296:00:00
-1296:00:00
-1296:00:00
-1296:00:00
-1296:00:00
-1296:00:00.0
-1296:00:00.0
-1296:00:00.0
-1296:00:00.0
-1296:00:00
-1296:00:00.0
-1296:00:00.00
-1296:00:00.00
-1296:00:00.00
-1296:00:00.00
-1296:00:00
-1296:00:00.0
-1296:00:00.00
-1296:00:00.000
-1296:00:00.000
-1296:00:00.000
-1296:00:00.000
********
-54 00:00
-54 00:00
-54 00:00
-54 00:00:00
-54 00:00:00
-54 00:00:00
-54 00:00:00
-54 00:00:00.0
-54 00:00:00.0
-54 00:00:00
-54 00:00:00.0
-54 00:00:00.00
-54 00:00:00.00
-54 00:00:00
-54 00:00:00.0
-54 00:00:00.00
-54 00:00:00.000
-54 00:00:00.000
-54 00:00:00
-54 00:00:00.0
-54 00:00:00.00
-54 00:00:00.000
-54 00:00:00.0000
-54 00:00:00.0000
-54 00:00:00
-54 00:00:00.0
-54 00:00:00.00
-54 00:00:00.000
-54 00:00:00.0000
-54 00:00:00.00000
-54 00:00:00.00000
*****
******
*******
-1300:50
-1300:50
-1300:50
-1300:50
-1300:50:38
-1300:50:38
-1300:50:38
-1300:50:38
-1300:50:38
-1300:50:38
-1300:50:38
-1300:50:38
-1300:50:38.1
-1300:50:38.1
-1300:50:38.1
-1300:50:38.1
-1300:50:38
-1300:50:38.1
-1300:50:38.12
-1300:50:38.12
-1300:50:38.12
-1300:50:38.12
-1300:50:38
-1300:50:38.1
-1300:50:38.12
-1300:50:38.123
-1300:50:38.123
-1300:50:38.123
-1300:50:38.123
********
-54 04:50
-54 04:50
-54 04:50
-54 04:50:38
-54 04:50:38
-54 04:50:38
-54 04:50:38
-54 04:50:38.1
-54 04:50:38.1
-54 04:50:38
-54 04:50:38.1
-54 04:50:38.12
-54 04:50:38.12
-54 04:50:38
-54 04:50:38.1
-54 04:50:38.12
-54 04:50:38.123
-54 04:50:38.123
-54 04:50:38
-54 04:50:38.1
-54 04:50:38.12
-54 04:50:38.123
-54 04:50:38.1230
-54 04:50:38.1230
-54 04:50:38
-54 04:50:38.1
-54 04:50:38.12
-54 04:50:38.123
-54 04:50:38.1230
-54 04:50:38.12301
-54 04:50:38.12301
*****
******
*******
-1308:31
-1308:31
-1308:31
-1308:31
-1308:31:35
-1308:31:35
-1308:31:35
-1308:31:35
-1308:31:35
-1308:31:35
-1308:31:35
-1308:31:35
-1308:31:35.2
-1308:31:35.2
-1308:31:35.2
-1308:31:35.2
-1308:31:35
-1308:31:35.2
-1308:31:35.23
-1308:31:35.23
-1308:31:35.23
-1308:31:35.23
-1308:31:35
-1308:31:35.2
-1308:31:35.23
-1308:31:35.235
-1308:31:35.235
-1308:31:35.235
-1308:31:35.235
********
-54 12:31
-54 12:31
-54 12:31
-54 12:31:35
-54 12:31:35
-54 12:31:35
-54 12:31:35
-54 12:31:35.2
-54 12:31:35.2
-54 12:31:35
-54 12:31:35.2
-54 12:31:35.23
-54 12:31:35.23
-54 12:31:35
-54 12:31:35.2
-54 12:31:35.23
-54 12:31:35.235
-54 12:31:35.235
-54 12:31:35
-54 12:31:35.2
-54 12:31:35.23
-54 12:31:35.235
-54 12:31:35.2345
-54 12:31:35.2345
-54 12:31:35
-54 12:31:35.2
-54 12:31:35.23
-54 12:31:35.235
-54 12:31:35.2345
-54 12:31:35.23453
-54 12:31:35.23453
*****
******
*******
-1308:47
-1308:47
-1308:47
-1308:47
-1308:47:53
-1308:47:53
-1308:47:53
-1308:47:53
-1308:47:53
-1308:47:53
-1308:47:53
-1308:47:53
-1308:47:53.3
-1308:47:53.3
-1308:47:53.3
-1308:47:53.3
-1308:47:53
-1308:47:53.3
-1308:47:53.35
-1308:47:53.35
-1308:47:53.35
-1308:47:53.35
-1308:47:53
-1308:47:53.3
-1308:47:53.35
-1308:47:53.345
-1308:47:53.345
-1308:47:53.345
-1308:47:53.345
********
-54 12:47
-54 12:47
-54 12:47
-54 12:47:53
-54 12:47:53
-54 12:47:53
-54 12:47:53
-54 12:47:53.3
-54 12:47:53.3
-54 12:47:53
-54 12:47:53.3
-54 12:47:53.35
-54 12:47:53.35
-54 12:47:53
-54 12:47:53.3
-54 12:47:53.35
-54 12:47:53.345
-54 12:47:53.345
-54 12:47:53
-54 12:47:53.3
-54 12:47:53.35
-54 12:47:53.345
-54 12:47:53.3450
-54 12:47:53.3450
-54 12:47:53
-54 12:47:53.3
-54 12:47:53.35
-54 12:47:53.345
-54 12:47:53.3450
-54 12:47:53.34505
-54 12:47:53.34505
*****
******
*******
-1297:26
-1297:26
-1297:26
-1297:26
-1297:26:00
-1297:26:00
-1297:26:00
-1297:26:00
-1297:26:00
-1297:26:00
-1297:26:00
-1297:26:00
-1297:26:00.5
-1297:26:00.5
-1297:26:00.5
-1297:26:00.5
-1297:26:00
-1297:26:00.5
-1297:26:00.46
-1297:26:00.46
-1297:26:00.46
-1297:26:00.46
-1297:26:00
-1297:26:00.5
-1297:26:00.46
-1297:26:00.456
-1297:26:00.456
-1297:26:00.456
-1297:26:00.456
********
-54 01:26
-54 01:26
-54 01:26
-54 01:26:00
-54 01:26:00
-54 01:26:00
-54 01:26:00
-54 01:26:00.5
-54 01:26:00.5
-54 01:26:00
-54 01:26:00.5
-54 01:26:00.46
-54 01:26:00.46
-54 01:26:00
-54 01:26:00.5
-54 01:26:00.46
-54 01:26:00.456
-54 01:26:00.456
-54 01:26:00
-54 01:26:00.5
-54 01:26:00.46
-54 01:26:00.456
-54 01:26:00.4561
-54 01:26:00.4561
-54 01:26:00
-54 01:26:00.5
-54 01:26:00.46
-54 01:26:00.456
-54 01:26:00.4561
-54 01:26:00.45615
-54 01:26:00.45615
*****
******
*******
-1316:58
-1316:58
-1316:58
-1316:58
-1316:58:11
-1316:58:11
-1316:58:11
-1316:58:11
-1316:58:11
-1316:58:11
-1316:58:11
-1316:58:11
-1316:58:11.6
-1316:58:11.6
-1316:58:11.6
-1316:58:11.6
-1316:58:11
-1316:58:11.6
-1316:58:11.57
-1316:58:11.57
-1316:58:11.57
-1316:58:11.57
-1316:58:11
-1316:58:11.6
-1316:58:11.57
-1316:58:11.567
-1316:58:11.567
-1316:58:11.567
-1316:58:11.567
********
-54 20:58
-54 20:58
-54 20:58
-54 20:58:11
-54 20:58:11
-54 20:58:11
-54 20:58:11
-54 20:58:11.6
-54 20:58:11.6
-54 20:58:11
-54 20:58:11.6
-54 20:58:11.57
-54 20:58:11.57
-54 20:58:11
-54 20:58:11.6
-54 20:58:11.57
-54 20:58:11.567
-54 20:58:11.567
-54 20:58:11
-54 20:58:11.6
-54 20:58:11.57
-54 20:58:11.567
-54 20:58:11.5668
-54 20:58:11.5668
-54 20:58:11
-54 20:58:11.6
-54 20:58:11.57
-54 20:58:11.567
-54 20:58:11.5668
-54 20:58:11.56677
-54 20:58:11.56677
*****
******
*******
-1303:36
-1303:36
-1303:36
-1303:36
-1303:36:05
-1303:36:05
-1303:36:05
-1303:36:05
-1303:36:05
-1303:36:05
-1303:36:05
-1303:36:05
-1303:36:05.2
-1303:36:05.2
-1303:36:05.2
-1303:36:05.2
-1303:36:05
-1303:36:05.2
-1303:36:05.19
-1303:36:05.19
-1303:36:05.19
-1303:36:05.19
-1303:36:05
-1303:36:05.2
-1303:36:05.19
-1303:36:05.190
-1303:36:05.190
-1303:36:05.190
-1303:36:05.190
********
-54 07:36
-54 07:36
-54 07:36
-54 07:36:05
-54 07:36:05
-54 07:36:05
-54 07:36:05
-54 07:36:05.2
-54 07:36:05.2
-54 07:36:05
-54 07:36:05.2
-54 07:36:05.19
-54 07:36:05.19
-54 07:36:05
-54 07:36:05.2
-54 07:36:05.19
-54 07:36:05.190
-54 07:36:05.190
-54 07:36:05
-54 07:36:05.2
-54 07:36:05.19
-54 07:36:05.190
-54 07:36:05.1896
-54 07:36:05.1896
-54 07:36:05
-54 07:36:05.2
-54 07:36:05.19
-54 07:36:05.190
-54 07:36:05.1896
-54 07:36:05.18964
-54 07:36:05.18964
*****
******
*******
-1311:43
-1311:43
-1311:43
-1311:43
-1311:43:49
-1311:43:49
-1311:43:49
-1311:43:49
-1311:43:49
-1311:43:49
-1311:43:49
-1311:43:49
-1311:43:49.8
-1311:43:49.8
-1311:43:49.8
-1311:43:49.8
-1311:43:49
-1311:43:49.8
-1311:43:49.83
-1311:43:49.83
-1311:43:49.83
-1311:43:49.83
-1311:43:49
-1311:43:49.8
-1311:43:49.83
-1311:43:49.831
-1311:43:49.831
-1311:43:49.831
-1311:43:49.831
********
-54 15:43
-54 15:43
-54 15:43
-54 15:43:49
-54 15:43:49
-54 15:43:49
-54 15:43:49
-54 15:43:49.8
-54 15:43:49.8
-54 15:43:49
-54 15:43:49.8
-54 15:43:49.83
-54 15:43:49.83
-54 15:43:49
-54 15:43:49.8
-54 15:43:49.83
-54 15:43:49.831
-54 15:43:49.831
-54 15:43:49
-54 15:43:49.8
-54 15:43:49.83
-54 15:43:49.831
-54 15:43:49.8313
-54 15:43:49.8313
-54 15:43:49
-54 15:43:49.8
-54 15:43:49.83
-54 15:43:49.831
-54 15:43:49.8313
-54 15:43:49.83132
-54 15:43:49.83132
*****
******
*******
-1300:25
-1300:25
-1300:25
-1300:25
-1300:25:09
-1300:25:09
-1300:25:09
-1300:25:09
-1300:25:09
-1300:25:09
-1300:25:09
-1300:25:09
-1300:25:09.0
-1300:25:09.0
-1300:25:09.0
-1300:25:09.0
-1300:25:09
-1300:25:09.0
-1300:25:09.01
-1300:25:09.01
-1300:25:09.01
-1300:25:09.01
-1300:25:09
-1300:25:09.0
-1300:25:09.01
-1300:25:09.013
-1300:25:09.013
-1300:25:09.013
-1300:25:09.013
********
-54 04:25
-54 04:25
-54 04:25
-54 04:25:09
-54 04:25:09
-54 04:25:09
-54 04:25:09
-54 04:25:09.0
-54 04:25:09.0
-54 04:25:09
-54 04:25:09.0
-54 04:25:09.01
-54 04:25:09.01
-54 04:25:09
-54 04:25:09.0
-54 04:25:09.01
-54 04:25:09.013
-54 04:25:09.013
-54 04:25:09
-54 04:25:09.0
-54 04:25:09.01
-54 04:25:09.013
-54 04:25:09.0129
-54 04:25:09.0129
-54 04:25:09
-54 04:25:09.0
-54 04:25:09.01
-54 04:25:09.013
-54 04:25:09.0129
-54 04:25:09.01293
-54 04:25:09.01293
*****
******
*******
-1302:49
-1302:49
-1302:49
-1302:49
-1302:49:27
-1302:49:27
-1302:49:27
-1302:49:27
-1302:49:27
-1302:49:27
-1302:49:27
-1302:49:27
-1302:49:27.5
-1302:49:27.5
-1302:49:27.5
-1302:49:27.5
-1302:49:27
-1302:49:27.5
-1302:49:27.52
-1302:49:27.52
-1302:49:27.52
-1302:49:27.52
-1302:49:27
-1302:49:27.5
-1302:49:27.52
-1302:49:27.524
-1302:49:27.524
-1302:49:27.524
-1302:49:27.524
********
-54 06:49
-54 06:49
-54 06:49
-54 06:49:27
-54 06:49:27
-54 06:49:27
-54 06:49:27
-54 06:49:27.5
-54 06:49:27.5
-54 06:49:27
-54 06:49:27.5
-54 06:49:27.52
-54 06:49:27.52
-54 06:49:27
-54 06:49:27.5
-54 06:49:27.52
-54 06:49:27.524
-54 06:49:27.524
-54 06:49:27
-54 06:49:27.5
-54 06:49:27.52
-54 06:49:27.524
-54 06:49:27.5237
-54 06:49:27.5237
-54 06:49:27
-54 06:49:27.5
-54 06:49:27.52
-54 06:49:27.524
-54 06:49:27.5237
-54 06:49:27.52375
-54 06:49:27.52375
*****
******
*******
-1298:57
-1298:57
-1298:57
-1298:57
-1298:57:52
-1298:57:52
-1298:57:52
-1298:57:52
-1298:57:52
-1298:57:52
-1298:57:52
-1298:57:52
-1298:57:52.0
-1298:57:52.0
-1298:57:52.0
-1298:57:52.0
-1298:57:52
-1298:57:52.0
-1298:57:52.02
-1298:57:52.02
-1298:57:52.02
-1298:57:52.02
-1298:57:52
-1298:57:52.0
-1298:57:52.02
-1298:57:52.016
-1298:57:52.016
-1298:57:52.016
-1298:57:52.016
********
-54 02:57
-54 02:57
-54 02:57
-54 02:57:52
-54 02:57:52
-54 02:57:52
-54 02:57:52
-54 02:57:52.0
-54 02:57:52.0
-54 02:57:52
-54 02:57:52.0
-54 02:57:52.02
-54 02:57:52.02
-54 02:57:52
-54 02:57:52.0
-54 02:57:52.02
-54 02:57:52.016
-54 02:57:52.016
-54 02:57:52
-54 02:57:52.0
-54 02:57:52.02
-54 02:57:52.016
-54 02:57:52.0157
-54 02:57:52.0157
-54 02:57:52
-54 02:57:52.0
-54 02:57:52.02
-54 02:57:52.016
-54 02:57:52.0157
-54 02:57:52.01565
-54 02:57:52.01565
*****
******
*******
-1312:45
-1312:45
-1312:45
-1312:45
-1312:45:44
-1312:45:44
-1312:45:44
-1312:45:44
-1312:45:44
-1312:45:44
-1312:45:44
-1312:45:44
-1312:45:44.9
-1312:45:44.9
-1312:45:44.9
-1312:45:44.9
-1312:45:44
-1312:45:44.9
-1312:45:44.87
-1312:45:44.87
-1312:45:44.87
-1312:45:44.87
-1312:45:44
-1312:45:44.9
-1312:45:44.87
-1312:45:44.865
-1312:45:44.865
-1312:45:44.865
-1312:45:44.865
********
-54 16:45
-54 16:45
-54 16:45
-54 16:45:44
-54 16:45:44
-54 16:45:44
-54 16:45:44
-54 16:45:44.9
-54 16:45:44.9
-54 16:45:44
-54 16:45:44.9
-54 16:45:44.87
-54 16:45:44.87
-54 16:45:44
-54 16:45:44.9
-54 16:45:44.87
-54 16:45:44.865
-54 16:45:44.865
-54 16:45:44
-54 16:45:44.9
-54 16:45:44.87
-54 16:45:44.865
-54 16:45:44.8653
-54 16:45:44.8653
-54 16:45:44
-54 16:45:44.9
-54 16:45:44.87
-54 16:45:44.865
-54 16:45:44.8653
-54 16:45:44.86529
-54 16:45:44.86529
*****
******
*******
-1317:30
-1317:30
-1317:30
-1317:30
-1317:30:57
-1317:30:57
-1317:30:57
-1317:30:57
-1317:30:57
-1317:30:57
-1317:30:57
-1317:30:57
-1317:30:57.8
-1317:30:57.8
-1317:30:57.8
-1317:30:57.8
-1317:30:57
-1317:30:57.8
-1317:30:57.82
-1317:30:57.82
-1317:30:57.82
-1317:30:57.82
-1317:30:57
-1317:30:57.8
-1317:30:57.82
-1317:30:57.820
-1317:30:57.820
-1317:30:57.820
-1317:30:57.820
********
-54 21:30
-54 21:30
-54 21:30
-54 21:30:57
-54 21:30:57
-54 21:30:57
-54 21:30:57
-54 21:30:57.8
-54 21:30:57.8
-54 21:30:57
-54 21:30:57.8
-54 21:30:57.82
-54 21:30:57.82
-54 21:30:57
-54 21:30:57.8
-54 21:30:57.82
-54 21:30:57.820
-54 21:30:57.820
-54 21:30:57
-54 21:30:57.8
-54 21:30:57.82
-54 21:30:57.820
-54 21:30:57.8205
-54 21:30:57.8205
-54 21:30:57
-54 21:30:57.8
-54 21:30:57.82
-54 21:30:57.820
-54 21:30:57.8205
-54 21:30:57.82047
-54 21:30:57.82047
*****
******
*******
-1300:25
-1300:25
-1300:25
-1300:25
-1300:25:09
-1300:25:09
-1300:25:09
-1300:25:09
-1300:25:09
-1300:25:09
-1300:25:09
-1300:25:09
-1300:25:09.2
-1300:25:09.2
-1300:25:09.2
-1300:25:09.2
-1300:25:09
-1300:25:09.2
-1300:25:09.15
-1300:25:09.15
-1300:25:09.15
-1300:25:09.15
-1300:25:09
-1300:25:09.2
-1300:25:09.15
-1300:25:09.154
-1300:25:09.154
-1300:25:09.154
-1300:25:09.154
********
-54 04:25
-54 04:25
-54 04:25
-54 04:25:09
-54 04:25:09
-54 04:25:09
-54 04:25:09
-54 04:25:09.2
-54 04:25:09.2
-54 04:25:09
-54 04:25:09.2
-54 04:25:09.15
-54 04:25:09.15
-54 04:25:09
-54 04:25:09.2
-54 04:25:09.15
-54 04:25:09.154
-54 04:25:09.154
-54 04:25:09
-54 04:25:09.2
-54 04:25:09.15
-54 04:25:09.154
-54 04:25:09.1540
-54 04:25:09.1540
-54 04:25:09
-54 04:25:09.2
-54 04:25:09.15
-54 04:25:09.154
-54 04:25:09.1540
-54 04:25:09.15395
-54 04:25:09.15395
*****
******
*******
-1302:49
-1302:49
-1302:49
-1302:49
-1302:49:27
-1302:49:27
-1302:49:27
-1302:49:27
-1302:49:27
-1302:49:27
-1302:49:27
-1302:49:27
-1302:49:27.1
-1302:49:27.1
-1302:49:27.1
-1302:49:27.1
-1302:49:27
-1302:49:27.1
-1302:49:27.11
-1302:49:27.11
-1302:49:27.11
-1302:49:27.11
-1302:49:27
-1302:49:27.1
-1302:49:27.11
-1302:49:27.105
-1302:49:27.105
-1302:49:27.105
-1302:49:27.105
********
-54 06:49
-54 06:49
-54 06:49
-54 06:49:27
-54 06:49:27
-54 06:49:27
-54 06:49:27
-54 06:49:27.1
-54 06:49:27.1
-54 06:49:27
-54 06:49:27.1
-54 06:49:27.11
-54 06:49:27.11
-54 06:49:27
-54 06:49:27.1
-54 06:49:27.11
-54 06:49:27.105
-54 06:49:27.105
-54 06:49:27
-54 06:49:27.1
-54 06:49:27.11
-54 06:49:27.105
-54 06:49:27.1053
-54 06:49:27.1053
-54 06:49:27
-54 06:49:27.1
-54 06:49:27.11
-54 06:49:27.105
-54 06:49:27.1053
-54 06:49:27.10533
-54 06:49:27.10533
*****
******
*******
-1298:57
-1298:57
-1298:57
-1298:57
-1298:57:52
-1298:57:52
-1298:57:52
-1298:57:52
-1298:57:52
-1298:57:52
-1298:57:52
-1298:57:52
-1298:57:52.5
-1298:57:52.5
-1298:57:52.5
-1298:57:52.5
-1298:57:52
-1298:57:52.5
-1298:57:52.48
-1298:57:52.48
-1298:57:52.48
-1298:57:52.48
-1298:57:52
-1298:57:52.5
-1298:57:52.48
-1298:57:52.482
-1298:57:52.482
-1298:57:52.482
-1298:57:52.482
********
-54 02:57
-54 02:57
-54 02:57
-54 02:57:52
-54 02:57:52
-54 02:57:52
-54 02:57:52
-54 02:57:52.5
-54 02:57:52.5
-54 02:57:52
-54 02:57:52.5
-54 02:57:52.48
-54 02:57:52.48
-54 02:57:52
-54 02:57:52.5
-54 02:57:52.48
-54 02:57:52.482
-54 02:57:52.482
-54 02:57:52
-54 02:57:52.5
-54 02:57:52.48
-54 02:57:52.482
-54 02:57:52.4823
-54 02:57:52.4823
-54 02:57:52
-54 02:57:52.5
-54 02:57:52.48
-54 02:57:52.482
-54 02:57:52.4823
-54 02:57:52.48229
-54 02:57:52.48229
*****
******
*******
-1312:45
-1312:45
-1312:45
-1312:45
-1312:45:44
-1312:45:44
-1312:45:44
-1312:45:44
-1312:45:44
-1312:45:44
-1312:45:44
-1312:45:44
-1312:45:44.7
-1312:45:44.7
-1312:45:44.7
-1312:45:44.7
-1312:45:44
-1312:45:44.7
-1312:45:44.66
-1312:45:44.66
-1312:45:44.66
-1312:45:44.66
-1312:45:44
-1312:45:44.7
-1312:45:44.66
-1312:45:44.658
-1312:45:44.658
-1312:45:44.658
-1312:45:44.658
********
-54 16:45
-54 16:45
-54 16:45
-54 16:45:44
-54 16:45:44
-54 16:45:44
-54 16:45:44
-54 16:45:44.7
-54 16:45:44.7
-54 16:45:44
-54 16:45:44.7
-54 16:45:44.66
-54 16:45:44.66
-54 16:45:44
-54 16:45:44.7
-54 16:45:44.66
-54 16:45:44.658
-54 16:45:44.658
-54 16:45:44
-54 16:45:44.7
-54 16:45:44.66
-54 16:45:44.658
-54 16:45:44.6583
-54 16:45:44.6583
-54 16:45:44
-54 16:45:44.7
-54 16:45:44.66
-54 16:45:44.658
-54 16:45:44.6583
-54 16:45:44.65827
-54 16:45:44.65827
*****
******
*******
-1317:30
-1317:30
-1317:30
-1317:30
-1317:30:57
-1317:30:57
-1317:30:57
-1317:30:57
-1317:30:57
-1317:30:57
-1317:30:57
-1317:30:57
-1317:30:57.6
-1317:30:57.6
-1317:30:57.6
-1317:30:57.6
-1317:30:57
-1317:30:57.6
-1317:30:57.58
-1317:30:57.58
-1317:30:57.58
-1317:30:57.58
-1317:30:57
-1317:30:57.6
-1317:30:57.58
-1317:30:57.582
-1317:30:57.582
-1317:30:57.582
-1317:30:57.582
********
-54 21:30
-54 21:30
-54 21:30
-54 21:30:57
-54 21:30:57
-54 21:30:57
-54 21:30:57
-54 21:30:57.6
-54 21:30:57.6
-54 21:30:57
-54 21:30:57.6
-54 21:30:57.58
-54 21:30:57.58
-54 21:30:57
-54 21:30:57.6
-54 21:30:57.58
-54 21:30:57.582
-54 21:30:57.582
-54 21:30:57
-54 21:30:57.6
-54 21:30:57.58
-54 21:30:57.582
-54 21:30:57.5822
-54 21:30:57.5822
-54 21:30:57
-54 21:30:57.6
-54 21:30:57.58
-54 21:30:57.582
-54 21:30:57.5822
-54 21:30:57.58219
-54 21:30:57.58219
*****
******
*******
-1318:30
-1318:30
-1318:30
-1318:30
-1318:30:04
-1318:30:04
-1318:30:04
-1318:30:04
-1318:30:04
-1318:30:04
-1318:30:04
-1318:30:04
-1318:30:04.2
-1318:30:04.2
-1318:30:04.2
-1318:30:04.2
-1318:30:04
-1318:30:04.2
-1318:30:04.18
-1318:30:04.18
-1318:30:04.18
-1318:30:04.18
-1318:30:04
-1318:30:04.2
-1318:30:04.18
-1318:30:04.183
-1318:30:04.183
-1318:30:04.183
-1318:30:04.183
********
-54 22:30
-54 22:30
-54 22:30
-54 22:30:04
-54 22:30:04
-54 22:30:04
-54 22:30:04
-54 22:30:04.2
-54 22:30:04.2
-54 22:30:04
-54 22:30:04.2
-54 22:30:04.18
-54 22:30:04.18
-54 22:30:04
-54 22:30:04.2
-54 22:30:04.18
-54 22:30:04.183
-54 22:30:04.183
-54 22:30:04
-54 22:30:04.2
-54 22:30:04.18
-54 22:30:04.183
-54 22:30:04.1835
-54 22:30:04.1835
-54 22:30:04
-54 22:30:04.2
-54 22:30:04.18
-54 22:30:04.183
-54 22:30:04.1835
-54 22:30:04.18347
-54 22:30:04.18347
*****
******
*******
-1297:56
-1297:56
-1297:56
-1297:56
-1297:56:51
-1297:56:51
-1297:56:51
-1297:56:51
-1297:56:51
-1297:56:51
-1297:56:51
-1297:56:51
-1297:56:51.6
-1297:56:51.6
-1297:56:51.6
-1297:56:51.6
-1297:56:51
-1297:56:51.6
-1297:56:51.59
-1297:56:51.59
-1297:56:51.59
-1297:56:51.59
-1297:56:51
-1297:56:51.6
-1297:56:51.59
-1297:56:51.593
-1297:56:51.593
-1297:56:51.593
-1297:56:51.593
********
-54 01:56
-54 01:56
-54 01:56
-54 01:56:51
-54 01:56:51
-54 01:56:51
-54 01:56:51
-54 01:56:51.6
-54 01:56:51.6
-54 01:56:51
-54 01:56:51.6
-54 01:56:51.59
-54 01:56:51.59
-54 01:56:51
-54 01:56:51.6
-54 01:56:51.59
-54 01:56:51.593
-54 01:56:51.593
-54 01:56:51
-54 01:56:51.6
-54 01:56:51.59
-54 01:56:51.593
-54 01:56:51.5932
-54 01:56:51.5932
-54 01:56:51
-54 01:56:51.6
-54 01:56:51.59
-54 01:56:51.593
-54 01:56:51.5932
-54 01:56:51.59319
-54 01:56:51.59319
*****
******
*******
********
-16344:00
-16344:00
-16344:00
-16344:00
-16344:00
-16344:00
-16344:00:00
-16344:00:00
-16344:00:00
-16344:00:00
-16344:00:00
-16344:00:00
-16344:00:00
-16344:00:00
-16344:00:00
-16344:00:00
-16344:00:00.0
-16344:00:00.0
-16344:00:00.0
-16344:00:00.0
-16344:00:00.0
-16344:00:00
-16344:00:00.0
-16344:00:00.00
-16344:00:00.00
-16344:00:00.00
-16344:00:00.00
-16344:00:00.00
********
*********
-681 00:00
-681 00:00
-681 00:00
-681 00:00:00
-681 00:00:00
-681 00:00:00
-681 00:00:00
-681 00:00:00
-681 00:00:00
-681 00:00:00.0
-681 00:00:00.0
-681 00:00:00.0
-681 00:00:00
-681 00:00:00.0
-681 00:00:00.00
-681 00:00:00.00
-681 00:00:00.00
-681 00:00:00
-681 00:00:00.0
-681 00:00:00.00
-681 00:00:00.000
-681 00:00:00.000
-681 00:00:00.000
-681 00:00:00
-681 00:00:00.0
-681 00:00:00.00
-681 00:00:00.000
-681 00:00:00.0000
-681 00:00:00.0000
-681 00:00:00.0000
*****
******
*******
********
-16348:50
-16348:50
-16348:50
-16348:50
-16348:50
-16348:50
-16348:50:38
-16348:50:38
-16348:50:38
-16348:50:38
-16348:50:38
-16348:50:38
-16348:50:38
-16348:50:38
-16348:50:38
-16348:50:38
-16348:50:38.1
-16348:50:38.1
-16348:50:38.1
-16348:50:38.1
-16348:50:38.1
-16348:50:38
-16348:50:38.1
-16348:50:38.12
-16348:50:38.12
-16348:50:38.12
-16348:50:38.12
-16348:50:38.12
********
*********
-681 04:50
-681 04:50
-681 04:50
-681 04:50:38
-681 04:50:38
-681 04:50:38
-681 04:50:38
-681 04:50:38
-681 04:50:38
-681 04:50:38.1
-681 04:50:38.1
-681 04:50:38.1
-681 04:50:38
-681 04:50:38.1
-681 04:50:38.12
-681 04:50:38.12
-681 04:50:38.12
-681 04:50:38
-681 04:50:38.1
-681 04:50:38.12
-681 04:50:38.123
-681 04:50:38.123
-681 04:50:38.123
-681 04:50:38
-681 04:50:38.1
-681 04:50:38.12
-681 04:50:38.123
-681 04:50:38.1230
-681 04:50:38.1230
-681 04:50:38.1230
*****
******
*******
********
-16356:31
-16356:31
-16356:31
-16356:31
-16356:31
-16356:31
-16356:31:35
-16356:31:35
-16356:31:35
-16356:31:35
-16356:31:35
-16356:31:35
-16356:31:35
-16356:31:35
-16356:31:35
-16356:31:35
-16356:31:35.2
-16356:31:35.2
-16356:31:35.2
-16356:31:35.2
-16356:31:35.2
-16356:31:35
-16356:31:35.2
-16356:31:35.23
-16356:31:35.23
-16356:31:35.23
-16356:31:35.23
-16356:31:35.23
********
*********
-681 12:31
-681 12:31
-681 12:31
-681 12:31:35
-681 12:31:35
-681 12:31:35
-681 12:31:35
-681 12:31:35
-681 12:31:35
-681 12:31:35.2
-681 12:31:35.2
-681 12:31:35.2
-681 12:31:35
-681 12:31:35.2
-681 12:31:35.23
-681 12:31:35.23
-681 12:31:35.23
-681 12:31:35
-681 12:31:35.2
-681 12:31:35.23
-681 12:31:35.235
-681 12:31:35.235
-681 12:31:35.235
-681 12:31:35
-681 12:31:35.2
-681 12:31:35.23
-681 12:31:35.235
-681 12:31:35.2345
-681 12:31:35.2345
-681 12:31:35.2345
*****
******
*******
********
-16356:47
-16356:47
-16356:47
-16356:47
-16356:47
-16356:47
-16356:47:53
-16356:47:53
-16356:47:53
-16356:47:53
-16356:47:53
-16356:47:53
-16356:47:53
-16356:47:53
-16356:47:53
-16356:47:53
-16356:47:53.3
-16356:47:53.3
-16356:47:53.3
-16356:47:53.3
-16356:47:53.3
-16356:47:53
-16356:47:53.3
-16356:47:53.35
-16356:47:53.35
-16356:47:53.35
-16356:47:53.35
-16356:47:53.35
********
*********
-681 12:47
-681 12:47
-681 12:47
-681 12:47:53
-681 12:47:53
-681 12:47:53
-681 12:47:53
-681 12:47:53
-681 12:47:53
-681 12:47:53.3
-681 12:47:53.3
-681 12:47:53.3
-681 12:47:53
-681 12:47:53.3
-681 12:47:53.35
-681 12:47:53.35
-681 12:47:53.35
-681 12:47:53
-681 12:47:53.3
-681 12:47:53.35
-681 12:47:53.345
-681 12:47:53.345
-681 12:47:53.345
-681 12:47:53
-681 12:47:53.3
-681 12:47:53.35
-681 12:47:53.345
-681 12:47:53.3450
-681 12:47:53.3450
-681 12:47:53.3450
*****
******
*******
********
-16345:26
-16345:26
-16345:26
-16345:26
-16345:26
-16345:26
-16345:26:00
-16345:26:00
-16345:26:00
-16345:26:00
-16345:26:00
-16345:26:00
-16345:26:00
-16345:26:00
-16345:26:00
-16345:26:00
-16345:26:00.5
-16345:26:00.5
-16345:26:00.5
-16345:26:00.5
-16345:26:00.5
-16345:26:00
-16345:26:00.5
-16345:26:00.46
-16345:26:00.46
-16345:26:00.46
-16345:26:00.46
-16345:26:00.46
********
*********
-681 01:26
-681 01:26
-681 01:26
-681 01:26:00
-681 01:26:00
-681 01:26:00
-681 01:26:00
-681 01:26:00
-681 01:26:00
-681 01:26:00.5
-681 01:26:00.5
-681 01:26:00.5
-681 01:26:00
-681 01:26:00.5
-681 01:26:00.46
-681 01:26:00.46
-681 01:26:00.46
-681 01:26:00
-681 01:26:00.5
-681 01:26:00.46
-681 01:26:00.456
-681 01:26:00.456
-681 01:26:00.456
-681 01:26:00
-681 01:26:00.5
-681 01:26:00.46
-681 01:26:00.456
-681 01:26:00.4562
-681 01:26:00.4562
-681 01:26:00.4562
*****
******
*******
********
-16364:58
-16364:58
-16364:58
-16364:58
-16364:58
-16364:58
-16364:58:11
-16364:58:11
-16364:58:11
-16364:58:11
-16364:58:11
-16364:58:11
-16364:58:11
-16364:58:11
-16364:58:11
-16364:58:11
-16364:58:11.6
-16364:58:11.6
-16364:58:11.6
-16364:58:11.6
-16364:58:11.6
-16364:58:11
-16364:58:11.6
-16364:58:11.57
-16364:58:11.57
-16364:58:11.57
-16364:58:11.57
-16364:58:11.57
********
*********
-681 20:58
-681 20:58
-681 20:58
-681 20:58:11
-681 20:58:11
-681 20:58:11
-681 20:58:11
-681 20:58:11
-681 20:58:11
-681 20:58:11.6
-681 20:58:11.6
-681 20:58:11.6
-681 20:58:11
-681 20:58:11.6
-681 20:58:11.57
-681 20:58:11.57
-681 20:58:11.57
-681 20:58:11
-681 20:58:11.6
-681 20:58:11.57
-681 20:58:11.567
-681 20:58:11.567
-681 20:58:11.567
-681 20:58:11
-681 20:58:11.6
-681 20:58:11.57
-681 20:58:11.567
-681 20:58:11.5668
-681 20:58:11.5668
-681 20:58:11.5668
*****
******
*******
********
-16351:36
-16351:36
-16351:36
-16351:36
-16351:36
-16351:36
-16351:36:05
-16351:36:05
-16351:36:05
-16351:36:05
-16351:36:05
-16351:36:05
-16351:36:05
-16351:36:05
-16351:36:05
-16351:36:05
-16351:36:05.2
-16351:36:05.2
-16351:36:05.2
-16351:36:05.2
-16351:36:05.2
-16351:36:05
-16351:36:05.2
-16351:36:05.19
-16351:36:05.19
-16351:36:05.19
-16351:36:05.19
-16351:36:05.19
********
*********
-681 07:36
-681 07:36
-681 07:36
-681 07:36:05
-681 07:36:05
-681 07:36:05
-681 07:36:05
-681 07:36:05
-681 07:36:05
-681 07:36:05.2
-681 07:36:05.2
-681 07:36:05.2
-681 07:36:05
-681 07:36:05.2
-681 07:36:05.19
-681 07:36:05.19
-681 07:36:05.19
-681 07:36:05
-681 07:36:05.2
-681 07:36:05.19
-681 07:36:05.190
-681 07:36:05.190
-681 07:36:05.190
-681 07:36:05
-681 07:36:05.2
-681 07:36:05.19
-681 07:36:05.190
-681 07:36:05.1896
-681 07:36:05.1896
-681 07:36:05.1896
*****
******
*******
********
-16359:43
-16359:43
-16359:43
-16359:43
-16359:43
-16359:43
-16359:43:49
-16359:43:49
-16359:43:49
-16359:43:49
-16359:43:49
-16359:43:49
-16359:43:49
-16359:43:49
-16359:43:49
-16359:43:49
-16359:43:49.8
-16359:43:49.8
-16359:43:49.8
-16359:43:49.8
-16359:43:49.8
-16359:43:49
-16359:43:49.8
-16359:43:49.83
-16359:43:49.83
-16359:43:49.83
-16359:43:49.83
-16359:43:49.83
********
*********
-681 15:43
-681 15:43
-681 15:43
-681 15:43:49
-681 15:43:49
-681 15:43:49
-681 15:43:49
-681 15:43:49
-681 15:43:49
-681 15:43:49.8
-681 15:43:49.8
-681 15:43:49.8
-681 15:43:49
-681 15:43:49.8
-681 15:43:49.83
-681 15:43:49.83
-681 15:43:49.83
-681 15:43:49
-681 15:43:49.8
-681 15:43:49.83
-681 15:43:49.831
-681 15:43:49.831
-681 15:43:49.831
-681 15:43:49
-681 15:43:49.8
-681 15:43:49.83
-681 15:43:49.831
-681 15:43:49.8313
-681 15:43:49.8313
-681 15:43:49.8313
*****
******
*******
********
-16348:25
-16348:25
-16348:25
-16348:25
-16348:25
-16348:25
-16348:25:09
-16348:25:09
-16348:25:09
-16348:25:09
-16348:25:09
-16348:25:09
-16348:25:09
-16348:25:09
-16348:25:09
-16348:25:09
-16348:25:09.0
-16348:25:09.0
-16348:25:09.0
-16348:25:09.0
-16348:25:09.0
-16348:25:09
-16348:25:09.0
-16348:25:09.01
-16348:25:09.01
-16348:25:09.01
-16348:25:09.01
-16348:25:09.01
********
*********
-681 04:25
-681 04:25
-681 04:25
-681 04:25:09
-681 04:25:09
-681 04:25:09
-681 04:25:09
-681 04:25:09
-681 04:25:09
-681 04:25:09.0
-681 04:25:09.0
-681 04:25:09.0
-681 04:25:09
-681 04:25:09.0
-681 04:25:09.01
-681 04:25:09.01
-681 04:25:09.01
-681 04:25:09
-681 04:25:09.0
-681 04:25:09.01
-681 04:25:09.013
-681 04:25:09.013
-681 04:25:09.013
-681 04:25:09
-681 04:25:09.0
-681 04:25:09.01
-681 04:25:09.013
-681 04:25:09.0129
-681 04:25:09.0129
-681 04:25:09.0129
*****
******
*******
********
-16350:49
-16350:49
-16350:49
-16350:49
-16350:49
-16350:49
-16350:49:27
-16350:49:27
-16350:49:27
-16350:49:27
-16350:49:27
-16350:49:27
-16350:49:27
-16350:49:27
-16350:49:27
-16350:49:27
-16350:49:27.5
-16350:49:27.5
-16350:49:27.5
-16350:49:27.5
-16350:49:27.5
-16350:49:27
-16350:49:27.5
-16350:49:27.52
-16350:49:27.52
-16350:49:27.52
-16350:49:27.52
-16350:49:27.52
********
*********
-681 06:49
-681 06:49
-681 06:49
-681 06:49:27
-681 06:49:27
-681 06:49:27
-681 06:49:27
-681 06:49:27
-681 06:49:27
-681 06:49:27.5
-681 06:49:27.5
-681 06:49:27.5
-681 06:49:27
-681 06:49:27.5
-681 06:49:27.52
-681 06:49:27.52
-681 06:49:27.52
-681 06:49:27
-681 06:49:27.5
-681 06:49:27.52
-681 06:49:27.524
-681 06:49:27.524
-681 06:49:27.524
-681 06:49:27
-681 06:49:27.5
-681 06:49:27.52
-681 06:49:27.524
-681 06:49:27.5237
-681 06:49:27.5237
-681 06:49:27.5237
*****
******
*******
********
-16346:57
-16346:57
-16346:57
-16346:57
-16346:57
-16346:57
-16346:57:52
-16346:57:52
-16346:57:52
-16346:57:52
-16346:57:52
-16346:57:52
-16346:57:52
-16346:57:52
-16346:57:52
-16346:57:52
-16346:57:52.0
-16346:57:52.0
-16346:57:52.0
-16346:57:52.0
-16346:57:52.0
-16346:57:52
-16346:57:52.0
-16346:57:52.02
-16346:57:52.02
-16346:57:52.02
-16346:57:52.02
-16346:57:52.02
********
*********
-681 02:57
-681 02:57
-681 02:57
-681 02:57:52
-681 02:57:52
-681 02:57:52
-681 02:57:52
-681 02:57:52
-681 02:57:52
-681 02:57:52.0
-681 02:57:52.0
-681 02:57:52.0
-681 02:57:52
-681 02:57:52.0
-681 02:57:52.02
-681 02:57:52.02
-681 02:57:52.02
-681 02:57:52
-681 02:57:52.0
-681 02:57:52.02
-681 02:57:52.016
-681 02:57:52.016
-681 02:57:52.016
-681 02:57:52
-681 02:57:52.0
-681 02:57:52.02
-681 02:57:52.016
-681 02:57:52.0156
-681 02:57:52.0156
-681 02:57:52.0156
*****
******
*******
********
-16360:45
-16360:45
-16360:45
-16360:45
-16360:45
-16360:45
-16360:45:44
-16360:45:44
-16360:45:44
-16360:45:44
-16360:45:44
-16360:45:44
-16360:45:44
-16360:45:44
-16360:45:44
-16360:45:44
-16360:45:44.9
-16360:45:44.9
-16360:45:44.9
-16360:45:44.9
-16360:45:44.9
-16360:45:44
-16360:45:44.9
-16360:45:44.87
-16360:45:44.87
-16360:45:44.87
-16360:45:44.87
-16360:45:44.87
********
*********
-681 16:45
-681 16:45
-681 16:45
-681 16:45:44
-681 16:45:44
-681 16:45:44
-681 16:45:44
-681 16:45:44
-681 16:45:44
-681 16:45:44.9
-681 16:45:44.9
-681 16:45:44.9
-681 16:45:44
-681 16:45:44.9
-681 16:45:44.87
-681 16:45:44.87
-681 16:45:44.87
-681 16:45:44
-681 16:45:44.9
-681 16:45:44.87
-681 16:45:44.865
-681 16:45:44.865
-681 16:45:44.865
-681 16:45:44
-681 16:45:44.9
-681 16:45:44.87
-681 16:45:44.865
-681 16:45:44.8653
-681 16:45:44.8653
-681 16:45:44.8653
*****
******
*******
********
-16365:30
-16365:30
-16365:30
-16365:30
-16365:30
-16365:30
-16365:30:57
-16365:30:57
-16365:30:57
-16365:30:57
-16365:30:57
-16365:30:57
-16365:30:57
-16365:30:57
-16365:30:57
-16365:30:57
-16365:30:57.8
-16365:30:57.8
-16365:30:57.8
-16365:30:57.8
-16365:30:57.8
-16365:30:57
-16365:30:57.8
-16365:30:57.82
-16365:30:57.82
-16365:30:57.82
-16365:30:57.82
-16365:30:57.82
********
*********
-681 21:30
-681 21:30
-681 21:30
-681 21:30:57
-681 21:30:57
-681 21:30:57
-681 21:30:57
-681 21:30:57
-681 21:30:57
-681 21:30:57.8
-681 21:30:57.8
-681 21:30:57.8
-681 21:30:57
-681 21:30:57.8
-681 21:30:57.82
-681 21:30:57.82
-681 21:30:57.82
-681 21:30:57
-681 21:30:57.8
-681 21:30:57.82
-681 21:30:57.820
-681 21:30:57.820
-681 21:30:57.820
-681 21:30:57
-681 21:30:57.8
-681 21:30:57.82
-681 21:30:57.820
-681 21:30:57.8205
-681 21:30:57.8205
-681 21:30:57.8205
*****
******
*******
********
-16348:25
-16348:25
-16348:25
-16348:25
-16348:25
-16348:25
-16348:25:09
-16348:25:09
-16348:25:09
-16348:25:09
-16348:25:09
-16348:25:09
-16348:25:09
-16348:25:09
-16348:25:09
-16348:25:09
-16348:25:09.2
-16348:25:09.2
-16348:25:09.2
-16348:25:09.2
-16348:25:09.2
-16348:25:09
-16348:25:09.2
-16348:25:09.15
-16348:25:09.15
-16348:25:09.15
-16348:25:09.15
-16348:25:09.15
********
*********
-681 04:25
-681 04:25
-681 04:25
-681 04:25:09
-681 04:25:09
-681 04:25:09
-681 04:25:09
-681 04:25:09
-681 04:25:09
-681 04:25:09.2
-681 04:25:09.2
-681 04:25:09.2
-681 04:25:09
-681 04:25:09.2
-681 04:25:09.15
-681 04:25:09.15
-681 04:25:09.15
-681 04:25:09
-681 04:25:09.2
-681 04:25:09.15
-681 04:25:09.154
-681 04:25:09.154
-681 04:25:09.154
-681 04:25:09
-681 04:25:09.2
-681 04:25:09.15
-681 04:25:09.154
-681 04:25:09.1539
-681 04:25:09.1539
-681 04:25:09.1539
*****
******
*******
********
-16350:49
-16350:49
-16350:49
-16350:49
-16350:49
-16350:49
-16350:49:27
-16350:49:27
-16350:49:27
-16350:49:27
-16350:49:27
-16350:49:27
-16350:49:27
-16350:49:27
-16350:49:27
-16350:49:27
-16350:49:27.1
-16350:49:27.1
-16350:49:27.1
-16350:49:27.1
-16350:49:27.1
-16350:49:27
-16350:49:27.1
-16350:49:27.11
-16350:49:27.11
-16350:49:27.11
-16350:49:27.11
-16350:49:27.11
********
*********
-681 06:49
-681 06:49
-681 06:49
-681 06:49:27
-681 06:49:27
-681 06:49:27
-681 06:49:27
-681 06:49:27
-681 06:49:27
-681 06:49:27.1
-681 06:49:27.1
-681 06:49:27.1
-681 06:49:27
-681 06:49:27.1
-681 06:49:27.11
-681 06:49:27.11
-681 06:49:27.11
-681 06:49:27
-681 06:49:27.1
-681 06:49:27.11
-681 06:49:27.105
-681 06:49:27.105
-681 06:49:27.105
-681 06:49:27
-681 06:49:27.1
-681 06:49:27.11
-681 06:49:27.105
-681 06:49:27.1053
-681 06:49:27.1053
-681 06:49:27.1053
*****
******
*******
********
-16346:57
-16346:57
-16346:57
-16346:57
-16346:57
-16346:57
-16346:57:52
-16346:57:52
-16346:57:52
-16346:57:52
-16346:57:52
-16346:57:52
-16346:57:52
-16346:57:52
-16346:57:52
-16346:57:52
-16346:57:52.5
-16346:57:52.5
-16346:57:52.5
-16346:57:52.5
-16346:57:52.5
-16346:57:52
-16346:57:52.5
-16346:57:52.48
-16346:57:52.48
-16346:57:52.48
-16346:57:52.48
-16346:57:52.48
********
*********
-681 02:57
-681 02:57
-681 02:57
-681 02:57:52
-681 02:57:52
-681 02:57:52
-681 02:57:52
-681 02:57:52
-681 02:57:52
-681 02:57:52.5
-681 02:57:52.5
-681 02:57:52.5
-681 02:57:52
-681 02:57:52.5
-681 02:57:52.48
-681 02:57:52.48
-681 02:57:52.48
-681 02:57:52
-681 02:57:52.5
-681 02:57:52.48
-681 02:57:52.482
-681 02:57:52.482
-681 02:57:52.482
-681 02:57:52
-681 02:57:52.5
-681 02:57:52.48
-681 02:57:52.482
-681 02:57:52.4823
-681 02:57:52.4823
-681 02:57:52.4823
*****
******
*******
********
-16360:45
-16360:45
-16360:45
-16360:45
-16360:45
-16360:45
-16360:45:44
-16360:45:44
-16360:45:44
-16360:45:44
-16360:45:44
-16360:45:44
-16360:45:44
-16360:45:44
-16360:45:44
-16360:45:44
-16360:45:44.7
-16360:45:44.7
-16360:45:44.7
-16360:45:44.7
-16360:45:44.7
-16360:45:44
-16360:45:44.7
-16360:45:44.66
-16360:45:44.66
-16360:45:44.66
-16360:45:44.66
-16360:45:44.66
********
*********
-681 16:45
-681 16:45
-681 16:45
-681 16:45:44
-681 16:45:44
-681 16:45:44
-681 16:45:44
-681 16:45:44
-681 16:45:44
-681 16:45:44.7
-681 16:45:44.7
-681 16:45:44.7
-681 16:45:44
-681 16:45:44.7
-681 16:45:44.66
-681 16:45:44.66
-681 16:45:44.66
-681 16:45:44
-681 16:45:44.7
-681 16:45:44.66
-681 16:45:44.658
-681 16:45:44.658
-681 16:45:44.658
-681 16:45:44
-681 16:45:44.7
-681 16:45:44.66
-681 16:45:44.658
-681 16:45:44.6583
-681 16:45:44.6583
-681 16:45:44.6583
*****
******
*******
********
-16365:30
-16365:30
-16365:30
-16365:30
-16365:30
-16365:30
-16365:30:57
-16365:30:57
-16365:30:57
-16365:30:57
-16365:30:57
-16365:30:57
-16365:30:57
-16365:30:57
-16365:30:57
-16365:30:57
-16365:30:57.6
-16365:30:57.6
-16365:30:57.6
-16365:30:57.6
-16365:30:57.6
-16365:30:57
-16365:30:57.6
-16365:30:57.58
-16365:30:57.58
-16365:30:57.58
-16365:30:57.58
-16365:30:57.58
********
*********
-681 21:30
-681 21:30
-681 21:30
-681 21:30:57
-681 21:30:57
-681 21:30:57
-681 21:30:57
-681 21:30:57
-681 21:30:57
-681 21:30:57.6
-681 21:30:57.6
-681 21:30:57.6
-681 21:30:57
-681 21:30:57.6
-681 21:30:57.58
-681 21:30:57.58
-681 21:30:57.58
-681 21:30:57
-681 21:30:57.6
-681 21:30:57.58
-681 21:30:57.582
-681 21:30:57.582
-681 21:30:57.582
-681 21:30:57
-681 21:30:57.6
-681 21:30:57.58
-681 21:30:57.582
-681 21:30:57.5822
-681 21:30:57.5822
-681 21:30:57.5822
*****
******
*******
********
-16366:30
-16366:30
-16366:30
-16366:30
-16366:30
-16366:30
-16366:30:04
-16366:30:04
-16366:30:04
-16366:30:04
-16366:30:04
-16366:30:04
-16366:30:04
-16366:30:04
-16366:30:04
-16366:30:04
-16366:30:04.2
-16366:30:04.2
-16366:30:04.2
-16366:30:04.2
-16366:30:04.2
-16366:30:04
-16366:30:04.2
-16366:30:04.18
-16366:30:04.18
-16366:30:04.18
-16366:30:04.18
-16366:30:04.18
********
*********
-681 22:30
-681 22:30
-681 22:30
-681 22:30:04
-681 22:30:04
-681 22:30:04
-681 22:30:04
-681 22:30:04
-681 22:30:04
-681 22:30:04.2
-681 22:30:04.2
-681 22:30:04.2
-681 22:30:04
-681 22:30:04.2
-681 22:30:04.18
-681 22:30:04.18
-681 22:30:04.18
-681 22:30:04
-681 22:30:04.2
-681 22:30:04.18
-681 22:30:04.183
-681 22:30:04.183
-681 22:30:04.183
-681 22:30:04
-681 22:30:04.2
-681 22:30:04.18
-681 22:30:04.183
-681 22:30:04.1835
-681 22:30:04.1835
-681 22:30:04.1835
*****
******
*******
********
-16345:56
-16345:56
-16345:56
-16345:56
-16345:56
-16345:56
-16345:56:51
-16345:56:51
-16345:56:51
-16345:56:51
-16345:56:51
-16345:56:51
-16345:56:51
-16345:56:51
-16345:56:51
-16345:56:51
-16345:56:51.6
-16345:56:51.6
-16345:56:51.6
-16345:56:51.6
-16345:56:51.6
-16345:56:51
-16345:56:51.6
-16345:56:51.59
-16345:56:51.59
-16345:56:51.59
-16345:56:51.59
-16345:56:51.59
********
*********
-681 01:56
-681 01:56
-681 01:56
-681 01:56:51
-681 01:56:51
-681 01:56:51
-681 01:56:51
-681 01:56:51
-681 01:56:51
-681 01:56:51.6
-681 01:56:51.6
-681 01:56:51.6
-681 01:56:51
-681 01:56:51.6
-681 01:56:51.59
-681 01:56:51.59
-681 01:56:51.59
-681 01:56:51
-681 01:56:51.6
-681 01:56:51.59
-681 01:56:51.593
-681 01:56:51.593
-681 01:56:51.593
-681 01:56:51
-681 01:56:51.6
-681 01:56:51.59
-681 01:56:51.593
-681 01:56:51.5932
-681 01:56:51.5932
-681 01:56:51.5932
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:1173"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_25
#AT_START_26
at_fn_group_banner 26 'data-out.at:13977' \
"MONTH output" " " 3
at_xfail=no
(
$as_echo "26. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >month-out.sps <<'_ATEOF'
set mxerr=1000000.
set mxwarns=10000000.
data list notable/x 1-10.
begin data.
0
0.5
0.9
1
2
3
4
4.1
4.5
4.9
5
6
7
7.1
7.5
7.9
8
9
10
11
12
13
end data.
print outfile='month-out.out'/x(month3).
print outfile='month-out.out'/x(month4).
print outfile='month-out.out'/x(month5).
print outfile='month-out.out'/x(month6).
print outfile='month-out.out'/x(month7).
print outfile='month-out.out'/x(month8).
print outfile='month-out.out'/x(month9).
print outfile='month-out.out'/x(month10).
print outfile='month-out.out'/x(month11).
print outfile='month-out.out'/x(month12).
print outfile='month-out.out'/x(month13).
print outfile='month-out.out'/x(month14).
print outfile='month-out.out'/x(month15).
print outfile='month-out.out'/x(month16).
print outfile='month-out.out'/x(month17).
print outfile='month-out.out'/x(month18).
print outfile='month-out.out'/x(month19).
print outfile='month-out.out'/x(month20).
print outfile='month-out.out'/x(month21).
print outfile='month-out.out'/x(month22).
print outfile='month-out.out'/x(month23).
print outfile='month-out.out'/x(month24).
print outfile='month-out.out'/x(month25).
print outfile='month-out.out'/x(month26).
print outfile='month-out.out'/x(month27).
print outfile='month-out.out'/x(month28).
print outfile='month-out.out'/x(month29).
print outfile='month-out.out'/x(month30).
print outfile='month-out.out'/x(month31).
print outfile='month-out.out'/x(month32).
print outfile='month-out.out'/x(month33).
print outfile='month-out.out'/x(month34).
print outfile='month-out.out'/x(month35).
print outfile='month-out.out'/x(month36).
print outfile='month-out.out'/x(month37).
print outfile='month-out.out'/x(month38).
print outfile='month-out.out'/x(month39).
print outfile='month-out.out'/x(month40).
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-out.at:14047: pspp -O format=csv month-out.sps"
at_fn_check_prepare_trace "data-out.at:14047"
( $at_check_trace; pspp -O format=csv month-out.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/data-out.at:14047"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-out.at:14048: sed '/^\$/d' stdout | sort | uniq -c | sed 's/^[ ]*//'"
at_fn_check_prepare_notrace 'a shell pipeline' "data-out.at:14048"
( $at_check_trace; sed '/^$/d' stdout | sort | uniq -c | sed 's/^[ ]*//'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "38 error: Month number 0.000000 is not between 1 and 12.
38 error: Month number 0.500000 is not between 1 and 12.
38 error: Month number 0.900000 is not between 1 and 12.
38 error: Month number 13.000000 is not between 1 and 12.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:14048"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-out.at:14055: cat month-out.out"
at_fn_check_prepare_trace "data-out.at:14055"
( $at_check_trace; cat month-out.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
JAN
JANU
JANUA
JANUAR
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
JANUARY
FEB
FEBR
FEBRU
FEBRUA
FEBRUAR
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
FEBRUARY
MAR
MARC
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
MARCH
APR
APRI
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APR
APRI
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APR
APRI
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APR
APRI
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
APRIL
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
MAY
JUN
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUNE
JUL
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JUL
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JUL
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JUL
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
JULY
AUG
AUGU
AUGUS
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
AUGUST
SEP
SEPT
SEPTE
SEPTEM
SEPTEMB
SEPTEMBE
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
SEPTEMBER
OCT
OCTO
OCTOB
OCTOBE
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
OCTOBER
NOV
NOVE
NOVEM
NOVEMB
NOVEMBE
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
NOVEMBER
DEC
DECE
DECEM
DECEMB
DECEMBE
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
DECEMBER
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:14055"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_26
#AT_START_27
at_fn_group_banner 27 'data-out.at:14933' \
"WKDAY output" " " 3
at_xfail=no
(
$as_echo "27. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >wkday-out.sps <<'_ATEOF'
set mxwarns=10000000.
set mxerrs=10000000.
data list notable/x 1-10.
begin data.
0
0.5
0.9
1
2
3
4
4.1
4.5
4.9
5
6
7
7.1
7.5
7.9
8
end data.
do repeat format=wkday2 to wkday40.
print outfile='wkday-out.out'/x(format).
end repeat.
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-out.at:14963: pspp -O format=csv wkday-out.sps"
at_fn_check_prepare_trace "data-out.at:14963"
( $at_check_trace; pspp -O format=csv wkday-out.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/data-out.at:14963"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-out.at:14964: sed '/^\$/d' stdout | sort | uniq -c | sed 's/^[ ]*//'"
at_fn_check_prepare_notrace 'a shell pipeline' "data-out.at:14964"
( $at_check_trace; sed '/^$/d' stdout | sort | uniq -c | sed 's/^[ ]*//'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "39 error: Weekday number 0.000000 is not between 1 and 7.
39 error: Weekday number 0.500000 is not between 1 and 7.
39 error: Weekday number 0.900000 is not between 1 and 7.
39 error: Weekday number 8.000000 is not between 1 and 7.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:14964"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-out.at:14971: cat wkday-out.out"
at_fn_check_prepare_trace "data-out.at:14971"
( $at_check_trace; cat wkday-out.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
SU
SUN
SUND
SUNDA
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
SUNDAY
MO
MON
MOND
MONDA
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
MONDAY
TU
TUE
TUES
TUESD
TUESDA
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
TUESDAY
WE
WED
WEDN
WEDNE
WEDNES
WEDNESD
WEDNESDA
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WE
WED
WEDN
WEDNE
WEDNES
WEDNESD
WEDNESDA
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WE
WED
WEDN
WEDNE
WEDNES
WEDNESD
WEDNESDA
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WE
WED
WEDN
WEDNE
WEDNES
WEDNESD
WEDNESDA
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
WEDNESDAY
TH
THU
THUR
THURS
THURSD
THURSDA
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
THURSDAY
FR
FRI
FRID
FRIDA
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
FRIDAY
SA
SAT
SATU
SATUR
SATURD
SATURDA
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SA
SAT
SATU
SATUR
SATURD
SATURDA
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SA
SAT
SATU
SATUR
SATURD
SATURDA
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SA
SAT
SATU
SATUR
SATURD
SATURDA
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
SATURDAY
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-out.at:14971"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_27
#AT_START_28
at_fn_group_banner 28 'datasheet-test.at:12' \
"3x3, 0 backing rows, backing widths " " " 4
at_xfail=no
(
$as_echo "28. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/datasheet-test.at:12: datasheet-test\$EXEEXT --verbosity=0 --max-rows=3 --max-columns=3 \\
--backing-rows=0 --backing-widths="
at_fn_check_prepare_notrace 'an embedded newline' "datasheet-test.at:12"
( $at_check_trace; datasheet-test$EXEEXT --verbosity=0 --max-rows=3 --max-columns=3 \
--backing-rows=0 --backing-widths=
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/datasheet-test.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_28
#AT_START_29
at_fn_group_banner 29 'datasheet-test.at:13' \
"3x3, 3 backing rows, backing widths 0,0,0" " " 4
at_xfail=no
(
$as_echo "29. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/datasheet-test.at:13: datasheet-test\$EXEEXT --verbosity=0 --max-rows=3 --max-columns=3 \\
--backing-rows=3 --backing-widths=0,0,0"
at_fn_check_prepare_notrace 'an embedded newline' "datasheet-test.at:13"
( $at_check_trace; datasheet-test$EXEEXT --verbosity=0 --max-rows=3 --max-columns=3 \
--backing-rows=3 --backing-widths=0,0,0
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/datasheet-test.at:13"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_29
#AT_START_30
at_fn_group_banner 30 'datasheet-test.at:14' \
"3x3, 3 backing rows, backing widths 0" " " 4
at_xfail=no
(
$as_echo "30. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/datasheet-test.at:14: datasheet-test\$EXEEXT --verbosity=0 --max-rows=3 --max-columns=3 \\
--backing-rows=3 --backing-widths=0"
at_fn_check_prepare_notrace 'an embedded newline' "datasheet-test.at:14"
( $at_check_trace; datasheet-test$EXEEXT --verbosity=0 --max-rows=3 --max-columns=3 \
--backing-rows=3 --backing-widths=0
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/datasheet-test.at:14"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_30
#AT_START_31
at_fn_group_banner 31 'datasheet-test.at:15' \
"3x3, 3 backing rows, backing widths 5" " " 4
at_xfail=no
(
$as_echo "31. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/datasheet-test.at:15: datasheet-test\$EXEEXT --verbosity=0 --max-rows=3 --max-columns=3 \\
--backing-rows=3 --backing-widths=5"
at_fn_check_prepare_notrace 'an embedded newline' "datasheet-test.at:15"
( $at_check_trace; datasheet-test$EXEEXT --verbosity=0 --max-rows=3 --max-columns=3 \
--backing-rows=3 --backing-widths=5
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/datasheet-test.at:15"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_31
#AT_START_32
at_fn_group_banner 32 'datasheet-test.at:16' \
"3x3, 1 backing rows, backing widths 0,9,0" " " 4
at_xfail=no
(
$as_echo "32. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/datasheet-test.at:16: datasheet-test\$EXEEXT --verbosity=0 --max-rows=3 --max-columns=3 \\
--backing-rows=1 --backing-widths=0,9,0"
at_fn_check_prepare_notrace 'an embedded newline' "datasheet-test.at:16"
( $at_check_trace; datasheet-test$EXEEXT --verbosity=0 --max-rows=3 --max-columns=3 \
--backing-rows=1 --backing-widths=0,9,0
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/datasheet-test.at:16"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_32
#AT_START_33
at_fn_group_banner 33 'dictionary.at:3' \
"dictionary case-insensitivity" " " 5
at_xfail=no
(
$as_echo "33. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >dictionary.sps <<'_ATEOF'
DATA LIST LIST /aèiöu aeiou.
BEGIN DATA
1 2
END DATA.
LIST AÈIÖU
RENAME VARIABLE (aèiöu=AÈIÖU).
LIST.
RENAME VARIABLE (aeiou=aèiöu).
_ATEOF
$as_echo "$at_setup_line" >"$at_check_line_file"
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_33
#AT_START_34
at_fn_group_banner 34 'format-guesser.at:3' \
"format guesser" " " 6
at_xfail=no
(
$as_echo "34. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >format-guesser.txt <<'_ATEOF'
# No data.
=> F8.2
"" => F8.2
"." => F8.2
# Numeric formats.
"1.2" => F3.1
"$1.2" => DOLLAR4.1
"1.2%" => PCT4.1
"$1.2%" => A5
"1e5" => E3.0
"1e+5" => E4.0
"1+5" => E3.0
"1-5" => E3.0
"1.2e5" => E5.1
"1.3e+5" => E6.1
"1.4+5" => E5.1
"1e" => A2
"1e+" => A3
"1+" => A2
"1-" => A2
"1.5-5" => E5.1
"1,123" => COMMA5.0 # Is , is grouping or decimal? Assume grouping.
"1.123" => F5.3 # Ditto.
"1,12" => F4.2 # Not a group of 3, so last delim must be decimal.
"1.12" => F4.2 # Ditto.
"1,1234" => F6.4 # Not a group of 3, so last delim must be decimal.
"1.1234" => F6.4 # Ditto.
"$1.234" => DOLLAR6.3 # Dollar sign means decimal has to be '.'.
"$1,234" => DOLLAR6.0 # Ditto.
"1.234%" => PCT6.3 # Percent sign means decimal has to be '.'.
"1,234%" => PCT6.0 # Ditto.
"1,123.456" => COMMA9.3 # Both '.' and ',', so last delim must be decimal.
"1.123,456" => DOT9.3 # Ditto.
"1,123,456.45" => COMMA12.2 # Ditto.
"1.123.456,45" => DOT12.2 # Ditto.
"1,123,456" => COMMA9.0 # Ditto.
"1.123.456" => DOT9.0 # Ditto.
# Date and time formats.
"01-OCT-1978" => DATE11
"01-x-1978" => EDATE9 # Roman numeral for month.
"01-13-99" => ADATE8
"1-13-99" => ADATE7 (ADATE8)
"13-01-99" => EDATE8
"13-1-99" => EDATE7 (EDATE8)
"32-1-1" => SDATE6 (SDATE8)
"1q01" => QYR4
"1Q01" => QYR4
"1 q 01" => QYR6
"1 Q 01" => QYR6
"1q2001" => QYR6
"1Q2001" => QYR6
"1 q 2001" => QYR8
"1 Q 2001" => QYR8
"oct 05" => MOYR6
"oct 2005" => MOYR8
"1-1-01 1:2" => A10 # Minute needs at least two digits.
"1-1-01 1:02" => DATETIME11.0 (DATETIME17.0)
"1-1-01 1:02:3" => A13 # Second needs at least two digits.
"1-1-01 1:02:03" => DATETIME20.0
"1-1-01 1:02:03.1" => DATETIME20.1 (DATETIME22.1)
"1-1-01 +1:02:03.1" => DATETIME20.1 (DATETIME22.1)
"1-1-01 -1:02:03.1" => DATETIME20.1 (DATETIME22.1)
"1:30" => TIME4.0 (TIME5.0)
"1:30:05" => TIME8.0
"-1:30" => TIME5.0
"+1:30" => TIME5.0
"-1:30:15" => TIME8.0
"+1:30:15" => TIME8.0
"-1:30:15.5" => TIME10.1
"+1:30:15.75" => TIME11.2
"1 1:30" => DTIME6.0 (DTIME8.0)
"+1 1:30" => DTIME7.0 (DTIME8.0)
"-1 1:30" => DTIME7.0 (DTIME8.0)
"-1-13-99" => A8
"+1-13-99" => A8
"1+13+99" => A7
"1:00:01.03" => TIME10.2 (TIME11.2)
"12 1:00:01.3" => DTIME12.1 (DTIME13.1)
"jan" => MONTH3
"Feb" => MONTH3
"MAR" => MONTH3
"i" => A1 # Not detected as MONTH format.
"v" => A1
"ix" => A2
"x" => A1
"january" => MONTH7
"janaury" => MONTH7 # Only first three letters are significant.
"february" => MONTH8
"febraury" => MONTH8
"march" => MONTH5
"marhc" => MONTH5
"april" => MONTH5
"may" => MONTH3
"june" => MONTH4
"july" => MONTH4
"august" => MONTH6
"september" => MONTH9
"october" => MONTH7
"november" => MONTH8
"decmeber" => MONTH8
"december" => MONTH8
"monady" => WKDAY6
"tuseday" => WKDAY7
"wedensday" => WKDAY9
"thurdsay" => WKDAY8
"fridya" => WKDAY6
"saturady" => WKDAY8
"sudnay" => WKDAY6
# Ambiguous; bias in favor of more sensible DD/MM/YY format:
"1/1/1978" => EDATE8
"01/01/01" => EDATE8
# Several ambiguous dates can be clarified by one unambiguous example:
"1/1/1978" "1/2/1978" "1/3/1978" "1/13/1978" => ADATE9 # MM/DD/YY
"01/01/01" "02/01/01" "03/01/01" "13/01/01" => EDATE8 # DD/MM/YY
"01/01/01" "02/01/01" "03/01/01" "2013/01/01" => SDATE10 # YY/MM/DD
_ATEOF
{ set +x
$as_echo "$at_srcdir/format-guesser.at:125: (echo \"SET DECIMAL=DOT.\"
sed -e 's/#.*//
s/[ ]*\$//
/^\$/d
s,^\\(.*\\)=> \\(.*\\)\$,DEBUG FORMAT GUESSER \\1.,') \\
< format-guesser.txt > format-guesser.sps"
at_fn_check_prepare_notrace 'an embedded newline' "format-guesser.at:125"
( $at_check_trace; (echo "SET DECIMAL=DOT."
sed -e 's/#.*//
s/[ ]*$//
/^$/d
s,^\(.*\)=> \(.*\)$,DEBUG FORMAT GUESSER \1.,') \
< format-guesser.txt > format-guesser.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/format-guesser.at:125"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/format-guesser.at:131: pspp --testing-mode -O format=csv format-guesser.sps"
at_fn_check_prepare_trace "format-guesser.at:131"
( $at_check_trace; pspp --testing-mode -O format=csv format-guesser.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; tee stderr <"$at_stderr"
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/format-guesser.at:131"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/format-guesser.at:133: sed -e 's/#.*//
s/[ ]*\$//
/^\$/d' < format-guesser.txt > expout"
at_fn_check_prepare_notrace 'an embedded newline' "format-guesser.at:133"
( $at_check_trace; sed -e 's/#.*//
s/[ ]*$//
/^$/d' < format-guesser.txt > expout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/format-guesser.at:133"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/format-guesser.at:136: cat stderr"
at_fn_check_prepare_trace "format-guesser.at:136"
( $at_check_trace; cat stderr
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/format-guesser.at:136"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_34
#AT_START_35
at_fn_group_banner 35 'pc+-file-reader.at:3' \
"variable labels and missing values" " " 7
at_xfail=no
(
$as_echo "35. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
2; 0;
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
@LABELS; @LABELS_END - @LABELS;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
PCSYSMIS;
0; 0; i16 1; i16 0;
i16 15;
1;
i16 0; 1;
s8 "11/28/14";
s8 "15:11:00";
s64 "PSPP synthetic test file";
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM1"; PCSYSMIS;
0; 0; @NUM2_LABEL - @LABELS_OFS; 0x050800; s8 "NUM2"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM3"; 1.0;
0; 0; @NUM4_LABEL - @LABELS_OFS; 0x050800; s8 "NUM4"; 2.0;
0; 0; 0; 0x010800; s8 "STR1"; PCSYSMIS;
0; 0; @STR2_LABEL - @LABELS_OFS; 0x010400; s8 "STR2"; PCSYSMIS;
0; 0; 0; 0x010500; s8 "STR3"; s8 "MISS";
0; 0; @STR4_LABEL - @LABELS_OFS; 0x010100; s8 "STR4"; s8 "OTHR";
0; 0; 0; 0x010b00; s8 "STR5"; PCSYSMIS;
0 * 8;
0; 0; @STR6_LABEL - @LABELS_OFS; 0x010b00; s8 "STR6"; PCSYSMIS;
0 * 8;
VARS_END:
LABELS:
3; i8 0 0 0; LABELS_OFS: i8 0;
NUM2_LABEL: COUNT8("Numeric variable 2's label");
NUM4_LABEL: COUNT8("Another numeric variable label");
STR2_LABEL: COUNT8("STR2's variable label");
STR4_LABEL: COUNT8("STR4's variable label");
STR6_LABEL: COUNT8("Another string variable's label");
LABELS_END:
DATA:
0.0; "11/28/14"; 1.0;
0.0; 1.0; 2.0; PCSYSMIS; s8 "abcdefgh"; s8 "ijkl"; s8 "mnopq"; s8 "r";
s16 "stuvwxyzAB"; s16 "CDEFGHIJKLM";
DATA_END:
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:83: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:83"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:83"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
GET FILE='pc+-file.sav' ENCODING='us-ascii'.
DISPLAY FILE LABEL.
DISPLAY DICTIONARY.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:90: pspp -o pspp.csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:90"
( $at_check_trace; pspp -o pspp.csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:90"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:91: cat pspp.csv"
at_fn_check_prepare_trace "pc+-file-reader.at:91"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "File label: PSPP synthetic test file
Variable,Description,Position
NUM1,Format: F8.0,1
NUM2,\"Label: Numeric variable 2's label
Format: F8.0\",2
NUM3,\"Format: F8.0
Missing Values: 1\",3
NUM4,\"Label: Another numeric variable label
Format: F8.0
Missing Values: 2\",4
STR1,Format: A8,5
STR2,\"Label: STR2's variable label
Format: A4\",6
STR3,\"Format: A5
Missing Values: \"\"MISS \"\"\",7
STR4,\"Label: STR4's variable label
Format: A1
Missing Values: \"\"O\"\"\",8
STR5,Format: A11,9
STR6,\"Label: Another string variable's label
Format: A11\",10
Table: Data List
NUM1,NUM2,NUM3,NUM4,STR1,STR2,STR3,STR4,STR5,STR6
0,1,2,.,abcdefgh,ijkl,mnopq,r,stuvwxyzAB ,CDEFGHIJKLM
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:91"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_35
#AT_START_36
at_fn_group_banner 36 'pc+-file-reader.at:121' \
"value labels" " " 7
at_xfail=no
(
$as_echo "36. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
2; 0;
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
@LABELS; @LABELS_END - @LABELS;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
PCSYSMIS;
0; 0; i16 1; i16 0;
i16 16;
1;
i16 0; 1;
s8 "11/28/14";
s8 "15:11:00";
s64 "PSPP synthetic test file";
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
@N1 - @LOFF; @N1E - @LOFF; 0; 0x050800; s8 "NUM1"; PCSYSMIS;
@N2 - @LOFF; @N2E - @LOFF; 0; 0x050800; s8 "NUM2"; PCSYSMIS;
@N3 - @LOFF; @N3E - @LOFF; 0; 0x050800; s8 "NUM3"; PCSYSMIS;
@N4 - @LOFF; @N4E - @LOFF; 0; 0x050800; s8 "NUM4"; PCSYSMIS;
@N5 - @LOFF; @N5E - @LOFF; 0; 0x050800; s8 "NUM5"; PCSYSMIS;
@S1 - @LOFF; @S1E - @LOFF; 0; 0x010100; s8 "STR1"; PCSYSMIS;
@S2 - @LOFF; @S2E - @LOFF; 0; 0x010200; s8 "STR2"; PCSYSMIS;
@S3 - @LOFF; @S3E - @LOFF; 0; 0x010300; s8 "STR3"; PCSYSMIS;
@S4 - @LOFF; @S4E - @LOFF; 0; 0x010400; s8 "STR4"; PCSYSMIS;
@S5 - @LOFF; @S5E - @LOFF; 0; 0x010500; s8 "STR5"; PCSYSMIS;
@S6 - @LOFF; @S6E - @LOFF; 0; 0x010600; s8 "STR6"; PCSYSMIS;
@S7 - @LOFF; @S7E - @LOFF; 0; 0x010700; s8 "STR7"; PCSYSMIS;
@S8 - @LOFF; @S8E - @LOFF; 0; 0x010800; s8 "STR8"; PCSYSMIS;
VARS_END:
LABELS:
3; i8 0 0 0; LOFF: i8 0;
N1: 1.0; COUNT8("one"); N1E:
N2: 2.0; COUNT8("two"); 3.0; COUNT8("three"); N2E:
N3:
3.0; COUNT8("three");
N4: N5:
4.0; COUNT8("four");
N3E: N4E:
5.0; COUNT8("five");
N5E:
S1: s8 "a"; COUNT8("value label for `a'"); S1E:
S2: s8 "ab"; COUNT8("value label for `ab'"); S2E:
S3: s8 "abc"; COUNT8("value label for `abc'"); S3E:
S4: S5: S6: S7:
s8 "abcdefgh"; COUNT8("value label for abcdefgh"); S4E:
S8:
s8 "ijklmnop"; COUNT8("value label for ijklmnop"); S5E:
s8 "qrstuvwx"; COUNT8("value label for qrstuvwx"); S6E:
s8 "yzABCDEF"; COUNT8("value label for yzABCDEF"); S7E:
s8 "GHIJKLMN"; COUNT8("value label for GHIJKLMN"); S8E:
LABELS_END:
DATA:
1.0; "11/28/14"; 1.0;
1.0; 2.0; 3.0; 4.0; 5.0;
s8 "a"; s8 "bc"; s8 "cde"; s8 "fghj"; s8 "klmno"; s8 "pqrstu";
s8 "vwxyzAB"; s8 "CDEFGHIJ";
DATA_END:
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:203: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:203"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:203"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
GET FILE='pc+-file.sav' ENCODING='us-ascii'.
DISPLAY FILE LABEL.
DISPLAY DICTIONARY.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:210: pspp -o pspp.csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:210"
( $at_check_trace; pspp -o pspp.csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:210"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:211: cat pspp.csv"
at_fn_check_prepare_trace "pc+-file-reader.at:211"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "File label: PSPP synthetic test file
Variable,Description,Position
NUM1,\"Format: F8.0
Value,Label
1,one\",1
NUM2,\"Format: F8.0
Value,Label
2,two
3,three\",2
NUM3,\"Format: F8.0
Value,Label
3,three
4,four\",3
NUM4,\"Format: F8.0
Value,Label
4,four\",4
NUM5,\"Format: F8.0
Value,Label
4,four
5,five\",5
STR1,\"Format: A1
Value,Label
a,value label for \`a'\",6
STR2,\"Format: A2
Value,Label
ab,value label for \`ab'\",7
STR3,\"Format: A3
Value,Label
abc,value label for \`abc'\",8
STR4,\"Format: A4
Value,Label
abcd,value label for abcdefgh\",9
STR5,\"Format: A5
Value,Label
abcde,value label for abcdefgh
ijklm,value label for ijklmnop\",10
STR6,\"Format: A6
Value,Label
abcdef,value label for abcdefgh
ijklmn,value label for ijklmnop
qrstuv,value label for qrstuvwx\",11
STR7,\"Format: A7
Value,Label
abcdefg,value label for abcdefgh
ijklmno,value label for ijklmnop
qrstuvw,value label for qrstuvwx
yzABCDE,value label for yzABCDEF\",12
STR8,\"Format: A8
Value,Label
GHIJKLMN,value label for GHIJKLMN
ijklmnop,value label for ijklmnop
qrstuvwx,value label for qrstuvwx
yzABCDEF,value label for yzABCDEF\",13
Table: Data List
NUM1,NUM2,NUM3,NUM4,NUM5,STR1,STR2,STR3,STR4,STR5,STR6,STR7,STR8
1,2,3,4,5,a,bc,cde,fghj,klmno,pqrstu,vwxyzAB,CDEFGHIJ
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:211"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_36
#AT_START_37
at_fn_group_banner 37 'pc+-file-reader.at:286' \
"compressed data" " " 7
at_xfail=no
(
$as_echo "37. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
2; 0;
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
0; 0;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
PCSYSMIS;
0; 0; i16 1; i16 1;
i16 9;
2;
i16 0; 2;
s8 "11/28/14";
s8 "15:11:00";
s64 "PSPP synthetic test file";
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM1"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM2"; PCSYSMIS;
0; 0; 0; 0x010400; s8 "STR4"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "STR8"; PCSYSMIS;
0; 0; 0; 0x010f00; s8 "STR15"; PCSYSMIS;
0 * 8;
VARS_END:
DATA:
i8 101 1 101 100 255 1 1 1;
s8 "11/28/14"; s8 "abcd"; s8 "efghj"; s8 "efghijkl";
i8 1; i8 102 1 101 1 0 1 1;
s8 "ABCDEFG"; s8 "11/28/14"; 1000.0; s8 "PQRS"; s8 "TUVWXYZa";
i8 1 1 0 0 0 0 0 0;
s16 "bcdefghijklmnop";
DATA_END:
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:338: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:338"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:338"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
GET FILE='pc+-file.sav' ENCODING='us-ascii'.
DISPLAY FILE LABEL.
DISPLAY DICTIONARY.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:345: pspp -o pspp.csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:345"
( $at_check_trace; pspp -o pspp.csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:345"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:346: cat pspp.csv"
at_fn_check_prepare_trace "pc+-file-reader.at:346"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "File label: PSPP synthetic test file
Variable,Description,Position
NUM1,Format: F8.0,1
NUM2,Format: F8.0,2
STR4,Format: A4,3
STR8,Format: A8,4
STR15,Format: A15,5
Table: Data List
NUM1,NUM2,STR4,STR8,STR15
-5,150,abcd,efghj ,efghijklABCDEFG
1000,.,PQRS,TUVWXYZa,bcdefghijklmnop
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:346"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_37
#AT_START_38
at_fn_group_banner 38 'pc+-file-reader.at:363' \
"weighted" " " 7
at_xfail=no
(
$as_echo "38. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
2; 0;
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
0; 0;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
PCSYSMIS;
0; 0; i16 1; i16 0;
i16 7;
i16 1; i16 6;
i16 0; i16 1; i16 0;
s8 "11/28/14";
s8 "15:11:00";
s64 "PSPP synthetic test file";
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM1"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM2"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM3"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM4"; PCSYSMIS;
VARS_END:
DATA:
0.0; "11/28/14"; 1.0; 2.0; 3.0; 4.0; 5.0;
DATA_END:
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:406: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:406"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:406"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
SYSFILE INFO FILE='pc+-file.sav' ENCODING='us-ascii'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:410: pspp -O format=csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:410"
( $at_check_trace; pspp -O format=csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "File:,pc+-file.sav
Label:,PSPP synthetic test file
Created:,11/28/14 15:11:00 by PCSPSS PSPP synthetic test product
Integer Format:,Little Endian
Real Format:,IEEE 754 LE.
Variables:,4
Cases:,1
Type:,SPSS/PC+ System File
Weight:,NUM3
Compression:,None
Encoding:,us-ascii
Variable,Description,Position
NUM1,\"Format: F8.0
Measure: Scale
Role: Input
Display Alignment: Right
Display Width: 8\",1
NUM2,\"Format: F8.0
Measure: Scale
Role: Input
Display Alignment: Right
Display Width: 8\",2
NUM3,\"Format: F8.0
Measure: Scale
Role: Input
Display Alignment: Right
Display Width: 8\",3
NUM4,\"Format: F8.0
Measure: Scale
Role: Input
Display Alignment: Right
Display Width: 8\",4
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:410"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_38
#AT_START_39
at_fn_group_banner 39 'pc+-file-reader.at:449' \
"unspecified character encoding" " " 8
at_xfail=no
(
$as_echo "39. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
2; 0;
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
0; 0;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
PCSYSMIS;
0; 0; i16 1; i16 0;
i16 7;
1;
i16 0; 1;
s8 "11/28/14";
s8 "15:11:00";
s64 "PSPP synthetic test file";
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM1"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM2"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM3"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM4"; PCSYSMIS;
VARS_END:
DATA:
0.0; "11/28/14"; 1.0; 2.0; 3.0; 4.0; 5.0;
DATA_END:
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:492: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:492"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:492"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
GET FILE='pc+-file.sav'.
DISPLAY FILE LABEL.
DISPLAY DICTIONARY.
LIST.
SYSFILE INFO FILE='pc+-file.sav' ENCODING='us-ascii'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:501: pspp -O format=csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:501"
( $at_check_trace; pspp -O format=csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:501"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:502: sed 's/default encoding.*For/default encoding. For/' stdout"
at_fn_check_prepare_trace "pc+-file-reader.at:502"
( $at_check_trace; sed 's/default encoding.*For/default encoding. For/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"warning: \`pc+-file.sav': Using default encoding. For best results, specify an encoding explicitly. Use SYSFILE INFO with ENCODING=\"\"DETECT\"\" to analyze the possible encodings.\"
File label: PSPP synthetic test file
Variable,Description,Position
NUM1,Format: F8.0,1
NUM2,Format: F8.0,2
NUM3,Format: F8.0,3
NUM4,Format: F8.0,4
Table: Data List
NUM1,NUM2,NUM3,NUM4
2,3,4,5
File:,pc+-file.sav
Label:,PSPP synthetic test file
Created:,11/28/14 15:11:00 by PCSPSS PSPP synthetic test product
Integer Format:,Little Endian
Real Format:,IEEE 754 LE.
Variables:,4
Cases:,1
Type:,SPSS/PC+ System File
Weight:,Not weighted.
Compression:,None
Encoding:,us-ascii
Variable,Description,Position
NUM1,\"Format: F8.0
Measure: Scale
Role: Input
Display Alignment: Right
Display Width: 8\",1
NUM2,\"Format: F8.0
Measure: Scale
Role: Input
Display Alignment: Right
Display Width: 8\",2
NUM3,\"Format: F8.0
Measure: Scale
Role: Input
Display Alignment: Right
Display Width: 8\",3
NUM4,\"Format: F8.0
Measure: Scale
Role: Input
Display Alignment: Right
Display Width: 8\",4
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:502"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_39
#AT_START_40
at_fn_group_banner 40 'pc+-file-reader.at:553' \
"unexpected fixed values" " " 8
at_xfail=no
(
$as_echo "40. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
>>1; 2;<<
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
0; 0;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
>>1.0<<;
0; >>2<<; i16 1; i16 0;
i16 7;
1;
i16 0; 3;
s8 "11/28/14";
s8 "15:11:00";
s64 "PSPP synthetic test file";
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM1"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM2"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM3"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM4"; PCSYSMIS;
VARS_END:
DATA:
0.0; "11/28/14"; 1.0; 2.0; 3.0; 4.0; 5.0;
DATA_END:
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:596: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:596"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:596"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
GET FILE='pc+-file.sav' ENCODING='us-ascii'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:600: pspp -O format=csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:600"
( $at_check_trace; pspp -O format=csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"warning: \`pc+-file.sav' near offset 0x0: Directory fields have unexpected values (1,2).\"
warning: \`pc+-file.sav' near offset 0x100: Record 0 specifies unexpected system missing value 1 (0x1p+0).
\"warning: \`pc+-file.sav' near offset 0x100: Record 0 reserved fields have unexpected values (1,1,0,2,0,0).\"
warning: \`pc+-file.sav' near offset 0x100: Record 0 case counts differ (1 versus 3).
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:600"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_40
#AT_START_41
at_fn_group_banner 41 'pc+-file-reader.at:611' \
"short main header" " " 8
at_xfail=no
(
$as_echo "41. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
2; 0;
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
0; 0;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
PCSYSMIS;
0; 0; i16 1; i16 0;
i16 7;
1;
i16 0; 1;
s8 "11/28/14";
s8 "15:11:00";
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM1"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM2"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM3"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM4"; PCSYSMIS;
VARS_END:
DATA:
0.0; "11/28/14"; 1.0; 2.0; 3.0; 4.0; 5.0;
DATA_END:
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:653: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:653"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:653"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
GET FILE='pc+-file.sav' ENCODING='us-ascii'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:657: pspp -O format=csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:657"
( $at_check_trace; pspp -O format=csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`pc+-file.sav' near offset 0x100: This is not an SPSS/PC+ system file.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/pc+-file-reader.at:657"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_41
#AT_START_42
at_fn_group_banner 42 'pc+-file-reader.at:662' \
"long main header" " " 8
at_xfail=no
(
$as_echo "42. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
2; 0;
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
0; 0;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
PCSYSMIS;
0; 0; i16 1; i16 0;
i16 7;
1;
i16 0; 1;
s8 "11/28/14";
s8 "15:11:00";
>>s80 "PSPP synthetic test file"<<;
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM1"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM2"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM3"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM4"; PCSYSMIS;
VARS_END:
DATA:
0.0; "11/28/14"; 1.0; 2.0; 3.0; 4.0; 5.0;
DATA_END:
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:705: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:705"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:705"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
GET FILE='pc+-file.sav' ENCODING='us-ascii'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:709: pspp -O format=csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:709"
( $at_check_trace; pspp -O format=csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`pc+-file.sav' near offset 0x100: Record 0 has unexpected length 192.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:709"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_42
#AT_START_43
at_fn_group_banner 43 'pc+-file-reader.at:714' \
"invalid compression type" " " 8
at_xfail=no
(
$as_echo "43. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
2; 0;
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
0; 0;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
PCSYSMIS;
0; 0; i16 1; i16 >>2<<;
i16 7;
1;
i16 0; 1;
s8 "11/28/14";
s8 "15:11:00";
s64 "PSPP synthetic test file";
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM1"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM2"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM3"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM4"; PCSYSMIS;
VARS_END:
DATA:
0.0; "11/28/14"; 1.0; 2.0; 3.0; 4.0; 5.0;
DATA_END:
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:757: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:757"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:757"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
GET FILE='pc+-file.sav' ENCODING='us-ascii'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:761: pspp -O format=csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:761"
( $at_check_trace; pspp -O format=csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`pc+-file.sav' near offset 0x100: Invalid compression type 2.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/pc+-file-reader.at:761"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_43
#AT_START_44
at_fn_group_banner 44 'pc+-file-reader.at:766' \
"unrealistic number of cases" " " 8
at_xfail=no
(
$as_echo "44. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
2; 0;
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
0; 0;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
PCSYSMIS;
0; 0; i16 1; i16 0;
i16 7;
1000;
i16 0; 1000;
s8 "11/28/14";
s8 "15:11:00";
s64 "PSPP synthetic test file";
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM1"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM2"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM3"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM4"; PCSYSMIS;
VARS_END:
DATA:
0.0; "11/28/14"; 1.0; 2.0; 3.0; 4.0; 5.0;
DATA_END:
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:809: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:809"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:809"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
GET FILE='pc+-file.sav' ENCODING='us-ascii'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:813: pspp -O format=csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:813"
( $at_check_trace; pspp -O format=csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`pc+-file.sav' near offset 0x100: Record 0 claims 1000 cases with 7 values per case (requiring at least 56000 bytes) but data record is only 56 bytes long.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:813"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_44
#AT_START_45
at_fn_group_banner 45 'pc+-file-reader.at:818' \
"labels bad offsets" " " 8
at_xfail=no
(
$as_echo "45. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
2; 0;
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
@LABELS; @LABELS_END - @LABELS;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
PCSYSMIS;
0; 0; i16 1; i16 0;
i16 7;
1;
i16 0; 1;
s8 "11/28/14";
s8 "15:11:00";
s64 "PSPP synthetic test file";
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
@N1L - @LOFF; @N1E - @LOFF; 1000; 0x050800; s8 "NUM1"; PCSYSMIS;
@N1L - @LOFF - 1; @LABELS_END - @LOFF; 0; 0x050800; s8 "NUM2"; PCSYSMIS;
@N1L - @LOFF + 1; @LABELS_END - @LOFF; 0; 0x050800; s8 "NUM3"; PCSYSMIS;
0; 0; @LABELS_END - @LOFF - 1; 0x050800; s8 "NUM4"; PCSYSMIS;
VARS_END:
LABELS:
3; i8 0 0 0; LOFF: i8 0;
N1L: PCSYSMIS;
LABELS_END:
DATA:
0.0; "11/28/14"; 1.0; 2.0; 3.0; 4.0; 5.0; N1E:
DATA_END:
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:866: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:866"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:866"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
GET FILE='pc+-file.sav' ENCODING='us-ascii'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:870: pspp -O format=csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:870"
( $at_check_trace; pspp -O format=csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`pc+-file.sav' near offset 0x210: Variable label claimed to start at offset 1007 in labels record but labels record is only 16 bytes.
warning: \`pc+-file.sav' near offset 0x210: Value labels claimed to end at offset 72 in labels record but labels record is only 16 bytes.
\"warning: \`pc+-file.sav' near offset 0x2a0: Value labels end with partial label (0 bytes left in record, label length 255).\"
warning: \`pc+-file.sav' near offset 0x299: 7 leftover bytes following value labels.
warning: \`pc+-file.sav' near offset 0x29f: Variable label with length 255 starting at offset 16 in labels record overruns end of 16-byte labels record.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:870"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_45
#AT_START_46
at_fn_group_banner 46 'pc+-file-reader.at:883' \
"record 1 bad length" " " 8
at_xfail=no
(
$as_echo "46. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
2; 0;
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
0; 0;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
PCSYSMIS;
0; 0; i16 1; i16 0;
i16 7;
1;
i16 0; 1;
s8 "11/28/14";
s8 "15:11:00";
s64 "PSPP synthetic test file";
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM2"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM3"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM4"; PCSYSMIS;
VARS_END:
DATA:
0.0; "11/28/14"; 1.0; 2.0; 3.0; 4.0; 5.0;
DATA_END:
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:925: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:925"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:925"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
GET FILE='pc+-file.sav' ENCODING='us-ascii'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:929: pspp -O format=csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:929"
( $at_check_trace; pspp -O format=csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`pc+-file.sav' near offset 0x1b0: Record 1 has length 192 (expected 224).
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/pc+-file-reader.at:929"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_46
#AT_START_47
at_fn_group_banner 47 'pc+-file-reader.at:934' \
"bad variable format" " " 8
at_xfail=no
(
$as_echo "47. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
2; 0;
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
0; 0;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
PCSYSMIS;
0; 0; i16 1; i16 0;
i16 7;
1;
i16 0; 1;
s8 "11/28/14";
s8 "15:11:00";
s64 "PSPP synthetic test file";
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
0; 0; 0; 0xff0000; s8 "NUM1"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM2"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM3"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM4"; PCSYSMIS;
VARS_END:
DATA:
0.0; "11/28/14"; 1.0; 2.0; 3.0; 4.0; 5.0;
DATA_END:
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:977: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:977"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:977"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
GET FILE='pc+-file.sav' ENCODING='us-ascii'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:981: pspp -O format=csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:981"
( $at_check_trace; pspp -O format=csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`pc+-file.sav' near offset 0x210: Variable 3 has invalid type 255.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/pc+-file-reader.at:981"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_47
#AT_START_48
at_fn_group_banner 48 'pc+-file-reader.at:986' \
"bad variable name" " " 8
at_xfail=no
(
$as_echo "48. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
2; 0;
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
0; 0;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
PCSYSMIS;
0; 0; i16 1; i16 0;
i16 7;
1;
i16 0; 1;
s8 "11/28/14";
s8 "15:11:00";
s64 "PSPP synthetic test file";
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
0; 0; 0; 0x050000; s8 "#NUM"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM2"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM3"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM4"; PCSYSMIS;
VARS_END:
DATA:
0.0; "11/28/14"; 1.0; 2.0; 3.0; 4.0; 5.0;
DATA_END:
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:1029: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:1029"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:1029"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
GET FILE='pc+-file.sav' ENCODING='us-ascii'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:1033: pspp -O format=csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:1033"
( $at_check_trace; pspp -O format=csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`pc+-file.sav' near offset 0x210: Invalid variable name \`#NUM'.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/pc+-file-reader.at:1033"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_48
#AT_START_49
at_fn_group_banner 49 'pc+-file-reader.at:1038' \
"duplicate variable name" " " 8
at_xfail=no
(
$as_echo "49. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
2; 0;
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
0; 0;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
PCSYSMIS;
0; 0; i16 1; i16 0;
i16 7;
1;
i16 0; 1;
s8 "11/28/14";
s8 "15:11:00";
s64 "PSPP synthetic test file";
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
0; 0; 0; 0x050000; s8 "NUM1"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM1"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM1"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM1"; PCSYSMIS;
VARS_END:
DATA:
0.0; "11/28/14"; 1.0; 2.0; 3.0; 4.0; 5.0;
DATA_END:
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:1081: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:1081"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:1081"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
GET FILE='pc+-file.sav' ENCODING='us-ascii'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:1085: pspp -O format=csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:1085"
( $at_check_trace; pspp -O format=csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`pc+-file.sav' near offset 0x230: Renaming variable with duplicate name \`NUM1' to \`VAR001'.
warning: \`pc+-file.sav' near offset 0x250: Renaming variable with duplicate name \`NUM1' to \`VAR002'.
warning: \`pc+-file.sav' near offset 0x270: Renaming variable with duplicate name \`NUM1' to \`VAR003'.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:1085"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_49
#AT_START_50
at_fn_group_banner 50 'pc+-file-reader.at:1094' \
"partial case" " " 8
at_xfail=no
(
$as_echo "50. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
2; 0;
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
0; 0;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
PCSYSMIS;
0; 0; i16 1; i16 0;
i16 7;
3;
i16 0; 3;
s8 "11/28/14";
s8 "15:11:00";
s64 "PSPP synthetic test file";
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
0; 0; 0; 0x050000; s8 "NUM1"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM2"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM3"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM4"; PCSYSMIS;
VARS_END:
DATA:
1.0; "11/28/14"; 1.0; 2.0; 3.0; 4.0; 5.0;
2.0; "11/28/14"; 1.0; 6.0; 7.0; 8.0; 9.0;
3.0; "11/28/14"; 1.0; 10.0;
DATA_END:
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:1139: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:1139"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:1139"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
GET FILE='pc+-file.sav' ENCODING='us-ascii'.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:1144: pspp -O format=csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:1144"
( $at_check_trace; pspp -O format=csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`pc+-file.sav' near offset 0x100: Record 0 claims 3 cases with 7 values per case (requiring at least 168 bytes) but data record is only 144 bytes long.
error: \`pc+-file.sav' near offset 0x320: File ends in partial case.
error: Error reading case from file \`pc+-file.sav'.
Table: Data List
NUM1,NUM2,NUM3,NUM4
2,3,4,5
6,7,8,9
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/pc+-file-reader.at:1144"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_50
#AT_START_51
at_fn_group_banner 51 'pc+-file-reader.at:1158' \
"case extends past end of data record" " " 8
at_xfail=no
(
$as_echo "51. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
2; 0;
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
0; 0;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
PCSYSMIS;
0; 0; i16 1; i16 0;
i16 7;
3;
i16 0; 3;
s8 "11/28/14";
s8 "15:11:00";
s64 "PSPP synthetic test file";
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
0; 0; 0; 0x050000; s8 "NUM1"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM2"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM3"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM4"; PCSYSMIS;
VARS_END:
DATA:
1.0; "11/28/14"; 1.0; 2.0; 3.0; 4.0; 5.0;
2.0; "11/28/14"; 1.0; 6.0; 7.0; 8.0; 9.0;
3.0; "11/28/14"; 1.0; 10.0;
DATA_END:
11.0; 12.0; 13.0;
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:1204: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:1204"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:1204"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
GET FILE='pc+-file.sav' ENCODING='us-ascii'.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:1209: pspp -O format=csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:1209"
( $at_check_trace; pspp -O format=csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`pc+-file.sav' near offset 0x100: Record 0 claims 3 cases with 7 values per case (requiring at least 168 bytes) but data record is only 144 bytes long.
error: \`pc+-file.sav' near offset 0x338: Case beginning at offset 0x00000300 extends past end of data record at offset 0x00000320.
error: Error reading case from file \`pc+-file.sav'.
Table: Data List
NUM1,NUM2,NUM3,NUM4
2,3,4,5
6,7,8,9
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/pc+-file-reader.at:1209"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_51
#AT_START_52
at_fn_group_banner 52 'pc+-file-reader.at:1223' \
"corrupt compressed data" " " 8
at_xfail=no
(
$as_echo "52. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
2; 0;
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
0; 0;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
PCSYSMIS;
0; 0; i16 1; i16 1;
i16 9;
2;
i16 0; 2;
s8 "11/28/14";
s8 "15:11:00";
s64 "PSPP synthetic test file";
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM1"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM2"; PCSYSMIS;
0; 0; 0; 0x010400; s8 "STR4"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "STR8"; PCSYSMIS;
0; 0; 0; 0x010f00; s8 "STR15"; PCSYSMIS;
0 * 8;
VARS_END:
DATA:
i8 101 1 101 100 255 1 1 1;
s8 "11/28/14"; s8 "abcd"; s8 "efghj"; s8 "efghijkl";
i8 1; i8 102 101 101 1 0 1 1;
s8 "ABCDEFG"; 1000.0; s8 "PQRS"; s8 "TUVWXYZa";
i8 1 1 0 0 0 0 0 0;
s16 "bcdefghijklmnop";
DATA_END:
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:1275: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:1275"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:1275"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
GET FILE='pc+-file.sav' ENCODING='us-ascii'.
DISPLAY FILE LABEL.
DISPLAY DICTIONARY.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:1282: pspp -O format=csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:1282"
( $at_check_trace; pspp -O format=csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "File label: PSPP synthetic test file
Variable,Description,Position
NUM1,Format: F8.0,1
NUM2,Format: F8.0,2
STR4,Format: A4,3
STR8,Format: A8,4
STR15,Format: A15,5
warning: \`pc+-file.sav' near offset 0x308: Possible compressed data corruption: string contains compressed integer (opcode 101).
Table: Data List
NUM1,NUM2,STR4,STR8,STR15
-5,150,abcd,efghj ,efghijklABCDEFG
1000,.,PQRS,TUVWXYZa,bcdefghijklmnop
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:1282"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_52
#AT_START_53
at_fn_group_banner 53 'pc+-file-reader.at:1301' \
"invalid weight index" " " 8
at_xfail=no
(
$as_echo "53. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
2; 0;
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
0; 0;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
PCSYSMIS;
0; 0; i16 1; i16 0;
i16 7;
i16 1; i16 10;
i16 0; i16 1; i16 0;
s8 "11/28/14";
s8 "15:11:00";
s64 "PSPP synthetic test file";
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM1"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM2"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM3"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM4"; PCSYSMIS;
VARS_END:
DATA:
0.0; "11/28/14"; 1.0; 2.0; 3.0; 4.0; 5.0;
DATA_END:
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:1344: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:1344"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:1344"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
GET FILE='pc+-file.sav' ENCODING='us-ascii'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:1348: pspp -O format=csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:1348"
( $at_check_trace; pspp -O format=csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`pc+-file.sav': Invalid weight index 10.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:1348"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_53
#AT_START_54
at_fn_group_banner 54 'pc+-file-reader.at:1353' \
"string weight" " " 8
at_xfail=no
(
$as_echo "54. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pc+-file.sack <<'_ATEOF'
2; 0;
@MAIN; @MAIN_END - @MAIN;
@VARS; @VARS_END - @VARS;
0; 0;
@DATA; @DATA_END - @DATA;
(0; 0) * 11;
i8 0 * 128;
MAIN:
i16 1; s62 "PCSPSS PSPP synthetic test product";
PCSYSMIS;
0; 0; i16 1; i16 0;
i16 7;
i16 1; i16 6;
i16 0; i16 1; i16 0;
s8 "11/28/14";
s8 "15:11:00";
s64 "PSPP synthetic test file";
MAIN_END:
VARS:
0; 0; 0; 0x050800; s8 "$CASENUM"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "$DATE"; PCSYSMIS;
0; 0; 0; 0x050802; s8 "$WEIGHT"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM1"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM2"; PCSYSMIS;
0; 0; 0; 0x010800; s8 "STR1"; PCSYSMIS;
0; 0; 0; 0x050800; s8 "NUM4"; PCSYSMIS;
VARS_END:
DATA:
0.0; "11/28/14"; 1.0; s8 "acbdefgh"; 3.0; 4.0; 5.0;
DATA_END:
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:1396: sack --le pc+-file.sack > pc+-file.sav"
at_fn_check_prepare_trace "pc+-file-reader.at:1396"
( $at_check_trace; sack --le pc+-file.sack > pc+-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:1396"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >pc+-file.sps <<'_ATEOF'
GET FILE='pc+-file.sav' ENCODING='us-ascii'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/pc+-file-reader.at:1400: pspp -O format=csv pc+-file.sps"
at_fn_check_prepare_trace "pc+-file-reader.at:1400"
( $at_check_trace; pspp -O format=csv pc+-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`pc+-file.sav' near offset 0x250: Cannot weight by string variable \`STR1'.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/pc+-file-reader.at:1400"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_54
#AT_START_55
at_fn_group_banner 55 'por-file.at:3' \
"overwriting portable file" " " 9
at_xfail=no
(
$as_echo "55. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >output.por <<'_ATEOF'
abcdef
_ATEOF
cp output.por output.por.backup
cat >porfile.sps <<'_ATEOF'
DATA LIST NOTABLE/x 1.
BEGIN DATA.
5
END DATA.
EXPORT OUTFILE='output.por'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/por-file.at:14: pspp -O format=csv porfile.sps"
at_fn_check_prepare_trace "por-file.at:14"
( $at_check_trace; pspp -O format=csv porfile.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/por-file.at:14"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/por-file.at:15: cmp output.por output.por.backup"
at_fn_check_prepare_trace "por-file.at:15"
( $at_check_trace; cmp output.por output.por.backup
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/por-file.at:15"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_55
#AT_START_56
at_fn_group_banner 56 'por-file.at:18' \
"overwriting portable file atomically" " " 9
at_xfail=no
(
$as_echo "56. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >output.por <<'_ATEOF'
abcdef
_ATEOF
cp output.por output.por.backup
cat >porfile.sps <<'_ATEOF'
DATA LIST NOTABLE/x 1.
BEGIN DATA.
5
END DATA.
XEXPORT OUTFILE='output.por'.
HOST COMMAND=['kill -TERM $PPID'].
_ATEOF
{ set +x
$as_echo "$at_srcdir/por-file.at:30: pspp -O format=csv porfile.sps"
at_fn_check_prepare_trace "por-file.at:30"
( $at_check_trace; pspp -O format=csv porfile.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 143 $at_status "$at_srcdir/por-file.at:30"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/por-file.at:31: cmp output.por output.por.backup"
at_fn_check_prepare_trace "por-file.at:31"
( $at_check_trace; cmp output.por output.por.backup
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/por-file.at:31"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/por-file.at:32: for file in *.tmp*; do if test -e \$file; then echo \$file; exit 1; fi; done"
at_fn_check_prepare_dynamic "for file in *.tmp*; do if test -e $file; then echo $file; exit 1; fi; done" "por-file.at:32"
( $at_check_trace; for file in *.tmp*; do if test -e $file; then echo $file; exit 1; fi; done
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/por-file.at:32"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_56
#AT_START_57
at_fn_group_banner 57 'por-file.at:36' \
"write to same portable file being read" " " 9
at_xfail=no
(
$as_echo "57. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >export.sps <<'_ATEOF'
DATA LIST NOTABLE/x 1.
BEGIN DATA.
2
END DATA.
EXPORT OUTFILE='data.por'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/por-file.at:44: pspp -O format=csv export.sps"
at_fn_check_prepare_trace "por-file.at:44"
( $at_check_trace; pspp -O format=csv export.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/por-file.at:44"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/por-file.at:45: test -s data.por"
at_fn_check_prepare_trace "por-file.at:45"
( $at_check_trace; test -s data.por
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/por-file.at:45"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/por-file.at:46: for file in *.tmp*; do if test -e \$file; then echo \$file; exit 1; fi; done"
at_fn_check_prepare_dynamic "for file in *.tmp*; do if test -e $file; then echo $file; exit 1; fi; done" "por-file.at:46"
( $at_check_trace; for file in *.tmp*; do if test -e $file; then echo $file; exit 1; fi; done
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/por-file.at:46"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >export2.sps <<'_ATEOF'
IMPORT FILE='data.por'.
COMPUTE y = x * 2.
EXPORT OUTFILE='data.por'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/por-file.at:53: pspp -O format=csv export2.sps"
at_fn_check_prepare_trace "por-file.at:53"
( $at_check_trace; pspp -O format=csv export2.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/por-file.at:53"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/por-file.at:54: for file in *.tmp*; do if test -e \$file; then echo \$file; exit 1; fi; done"
at_fn_check_prepare_dynamic "for file in *.tmp*; do if test -e $file; then echo $file; exit 1; fi; done" "por-file.at:54"
( $at_check_trace; for file in *.tmp*; do if test -e $file; then echo $file; exit 1; fi; done
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/por-file.at:54"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >export3.sps <<'_ATEOF'
IMPORT FILE='data.por'.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/por-file.at:60: pspp -O format=csv export3.sps"
at_fn_check_prepare_trace "por-file.at:60"
( $at_check_trace; pspp -O format=csv export3.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
X,Y
2,4.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/por-file.at:60"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_57
#AT_START_58
at_fn_group_banner 58 'por-file.at:70' \
"write portable file with value labels" " " 9
at_xfail=no
(
$as_echo "58. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >export.sps <<'_ATEOF'
DATA LIST NOTABLE/var1 TO var5 1-5.
VALUE LABELS
/var1 1 'one'
/var2 2 'two'
/var3 3 'three'
/var4 4 'four'
/var5 5 'five'.
BEGIN DATA.
12345
END DATA.
EXPORT OUTFILE='data.por'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/por-file.at:84: pspp -O format=csv export.sps"
at_fn_check_prepare_trace "por-file.at:84"
( $at_check_trace; pspp -O format=csv export.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/por-file.at:84"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >import.sps <<'_ATEOF'
IMPORT FILE='data.por'.
DISPLAY DICTIONARY.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/por-file.at:90: pspp -O format=csv import.sps"
at_fn_check_prepare_trace "por-file.at:90"
( $at_check_trace; pspp -O format=csv import.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
VAR1,\"Format: F1.0
Value,Label
1,one\",1
VAR2,\"Format: F1.0
Value,Label
2,two\",2
VAR3,\"Format: F1.0
Value,Label
3,three\",3
VAR4,\"Format: F1.0
Value,Label
4,four\",4
VAR5,\"Format: F1.0
Value,Label
5,five\",5
Table: Data List
VAR1,VAR2,VAR3,VAR4,VAR5
1,2,3,4,5
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/por-file.at:90"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file-info.sps <<'_ATEOF'
SYSFILE INFO FILE='data.por'
_ATEOF
{ set +x
$as_echo "$at_srcdir/por-file.at:119: pspp -O format=csv sys-file-info.sps | sed '/Encoding/d
/Integer Format/d
/Real Format/d
/Created/d
/Product/d
'"
at_fn_check_prepare_notrace 'an embedded newline' "por-file.at:119"
( $at_check_trace; pspp -O format=csv sys-file-info.sps | sed '/Encoding/d
/Integer Format/d
/Real Format/d
/Created/d
/Product/d
'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "File:,data.por
Label:,No label.
Variables:,5
Cases:,Unknown
Type:,SPSS Portable File
Weight:,Not weighted.
Compression:,None
Variable,Description,Position
VAR1,\"Format: F1.0
Measure: Scale
Role: Input
Display Alignment: Right
Display Width: 8
Value,Label
1,one\",1
VAR2,\"Format: F1.0
Measure: Scale
Role: Input
Display Alignment: Right
Display Width: 8
Value,Label
2,two\",2
VAR3,\"Format: F1.0
Measure: Scale
Role: Input
Display Alignment: Right
Display Width: 8
Value,Label
3,three\",3
VAR4,\"Format: F1.0
Measure: Scale
Role: Input
Display Alignment: Right
Display Width: 8
Value,Label
4,four\",4
VAR5,\"Format: F1.0
Measure: Scale
Role: Input
Display Alignment: Right
Display Width: 8
Value,Label
5,five\",5
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/por-file.at:119"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_58
#AT_START_59
at_fn_group_banner 59 'sys-file-reader.at:3' \
"variable labels and missing values" " " 10
at_xfail=no
(
$as_echo "59. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 28; 0; 0; 1; 100.0; "01 Jan 11"; "20:53:52";
"PSPP synthetic test file: "; i8 244; i8 245; i8 246; i8 248; s34 "";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2; 0; 1; 0; 0x050800 *2; s8 "NUM2";
32; "Numeric variable 2's label ("; i8 249; i8 250; i8 251; ")";
2; 0; 0; 1; 0x050800 *2; s8 "NUM3";
1.0;
2; 0; 1; 1; 0x050800 *2; s8 "NUM4";
30; "Another numeric variable label"; i8 0 * 2;
1.0;
2; 0; 0; 2; 0x050800 *2; s8 "NUM5"; 1.0; 2.0;
2; 0; 0; 3; 0x050800 *2; s8 "NUM6"; 1.0; 2.0; 3.0;
2; 0; 0; -2; 0x050800 *2; s8 "NUM7"; 1.0; 3.0;
2; 0; 0; -3; 0x050800 *2; s8 "NUM8"; 1.0; 3.0; 5.0;
2; 0; 0; -3; 0x050800 *2; s8 "NUM9"; 1.0; HIGHEST; -5.0;
2; 0; 0; -3; 0x050800 *2; "NUM"; i8 192; i8 200; i8 204; i8 209; i8 210;
LOWEST; 1.0; 5.0;
2; 4; 0; 0; 0x010400 *2; s8 "STR1";
2; 4; 1; 0; 0x010400 *2; s8 "STR2";
25; "String variable 2's label"; i8 0 * 3;
2; 4; 0; 1; 0x010400 *2; s8 "STR3"; s8 "MISS";
2; 4; 1; 1; 0x010400 *2; s8 "STR4";
29; "Another string variable label"; i8 0 * 3;
s8 "OTHR";
2; 4; 0; 2; 0x010400 *2; s8 "STR5"; s8 "MISS"; s8 "OTHR";
2; 4; 0; 3; 0x010400 *2; s8 "STR6"; s8 "MISS"; s8 "OTHR"; s8 "MORE";
2; 11; 0; 1; 0x010b00 *2; s8 "STR7"; "first8by";
2; -1; 0; 0; 0; 0; s8 "";
2; 9; 0; 0; 0x010900 *2; s8 "STR8";
2; -1; 0; 0; 0; 0; s8 "";
2; 10; 0; 0; 0x010a00 *2; s8 "STR9";
2; -1; 0; 0; 0; 0; s8 "";
2; 11; 0; 0; 0x010b00 *2; s8 "STR10";
2; -1; 0; 0; 0; 0; s8 "";
2; 25; 1; 0; 0x011900 *2; s8 "STR11"; 14; "25-byte string"; i8 0 * 2;
( 2; -1; 0; 0; 0; 0; s8 ""; ) * 2;
2; -1; 1; 0; 0; 0; s8 ""; 20; "dummy variable label";
7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 1252;
7; 4; 8; 3; SYSMIS; HIGHEST; LOWEST;
7; 22; 1; COUNT (
COUNT("STR8"); i8 1; 8; "abcdefgh";
COUNT("STR9"); i8 2; 8; "abcdefgh"; 8; "01234567";
COUNT("STR10"); i8 3; 8; "abcdefgh"; 8; "01234567"; 8; "0 ";
);
7; 20; 1; 12; "windows-1252";
999; 0;
1.0; 2.0; 3.0; 4.0; 5.0; 6.0; 7.0; 8.0; 9.0; 10.0;
s8 "abcd"; s8 "efgh"; s8 "ijkl"; s8 "mnop"; s8 "qrst"; s8 "uvwx";
s16 "yzABCDEFGHI"; s16 "JKLMNOPQR"; s16 "STUVWXYZ01";
s16 "23456789abc"; s32 "defghijklmnopqstuvwxyzABC";
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:125: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:125"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:125"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY FILE LABEL.
DISPLAY DICTIONARY.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:132: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:132"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:132"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:133: cat pspp.csv"
at_fn_check_prepare_trace "sys-file-reader.at:133"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "File label: PSPP synthetic test file: ôõöø
Variable,Description,Position
num1,Format: F8.0,1
num2,\"Label: Numeric variable 2's label (ùúû)
Format: F8.0\",2
num3,\"Format: F8.0
Missing Values: 1\",3
num4,\"Label: Another numeric variable label
Format: F8.0
Missing Values: 1\",4
num5,\"Format: F8.0
Missing Values: 1; 2\",5
num6,\"Format: F8.0
Missing Values: 1; 2; 3\",6
num7,\"Format: F8.0
Missing Values: 1 THRU 3\",7
num8,\"Format: F8.0
Missing Values: 1 THRU 3; 5\",8
num9,\"Format: F8.0
Missing Values: 1 THRU HIGHEST; -5\",9
numàèìñò,\"Format: F8.0
Missing Values: LOWEST THRU 1; 5\",10
str1,Format: A4,11
str2,\"Label: String variable 2's label
Format: A4\",12
str3,\"Format: A4
Missing Values: \"\"MISS\"\"\",13
str4,\"Label: Another string variable label
Format: A4
Missing Values: \"\"OTHR\"\"\",14
str5,\"Format: A4
Missing Values: \"\"MISS\"\"; \"\"OTHR\"\"\",15
str6,\"Format: A4
Missing Values: \"\"MISS\"\"; \"\"OTHR\"\"; \"\"MORE\"\"\",16
str7,\"Format: A11
Missing Values: \"\"first8by\"\"\",17
str8,\"Format: A9
Missing Values: \"\"abcdefgh\"\"\",18
str9,\"Format: A10
Missing Values: \"\"abcdefgh\"\"; \"\"01234567\"\"\",19
str10,\"Format: A11
Missing Values: \"\"abcdefgh\"\"; \"\"01234567\"\"; \"\"0 \"\"\",20
str11,\"Label: 25-byte string
Format: A25\",21
Table: Data List
num1,num2,num3,num4,num5,num6,num7,num8,num9,numàèìñò,str1,str2,str3,str4,str5,str6,str7,str8,str9,str10,str11
1,2,3,4,5,6,7,8,9,10,abcd,efgh,ijkl,mnop,qrst,uvwx,yzABCDEFGHI,JKLMNOPQR,STUVWXYZ01,23456789abc,defghijklmnopqstuvwxyzABC
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:133"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_59
#AT_START_60
at_fn_group_banner 60 'sys-file-reader.at:187' \
"unspecified number of variable positions" " " 10
at_xfail=no
(
$as_echo "60. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; -1; 0; 0; 1; 100.0; "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2; 0; 1; 0; 0x050800 *2; s8 "NUM2";
26; "Numeric variable 2's label"; i8 0 *2;
7; 20; 1; 12; "windows-1252";
999; 0;
1.0; 2.0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:218: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:218"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:218"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY DICTIONARY.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:224: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:224"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:224"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:225: cat pspp.csv"
at_fn_check_prepare_trace "sys-file-reader.at:225"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
num1,Format: F8.0,1
num2,\"Label: Numeric variable 2's label
Format: F8.0\",2
Table: Data List
num1,num2
1,2
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:225"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_60
#AT_START_61
at_fn_group_banner 61 'sys-file-reader.at:238' \
"wrong number of variable positions but version 13" "" 10
at_xfail=no
(
$as_echo "61. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; -1; 0; 0; 1; 100.0; "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2; 0; 1; 0; 0x050800 *2; s8 "NUM2";
26; "Numeric variable 2's label"; i8 0 *2;
7; 3; 4; 8; 13; 2; 3; -1; 1; 1; ENDIAN; 1252;
7; 20; 1; 12; "windows-1252";
999; 0;
1.0; 2.0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:272: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:272"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:272"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY DICTIONARY.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:278: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:278"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:278"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:279: cat pspp.csv"
at_fn_check_prepare_trace "sys-file-reader.at:279"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
num1,Format: F8.0,1
num2,\"Label: Numeric variable 2's label
Format: F8.0\",2
Table: Data List
num1,num2
1,2
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:279"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_61
#AT_START_62
at_fn_group_banner 62 'sys-file-reader.at:292' \
"value labels" " " 10
at_xfail=no
(
$as_echo "62. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 22; 0; 0; 1; 100.0; "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
2; 0; 0; 0; 0x050800 *2; s8 "NUM3";
2; 0; 0; 0; 0x050800 *2; s8 "NUM4";
2; 0; 0; 0; 0x050800 *2; s8 "NUM5";
2; 1; 0; 0; 0x010100 *2; s8 "STR1"; 2; 2; 0; 0; 0x010200 *2; s8 "STR2"; 2; 3; 0; 0; 0x010300 *2; s8 "STR3"; 2; 4; 0; 0; 0x010400 *2; s8 "STR4"; 2; 4; 0; 0; 0x010400 *2; s8 "STR5"; 2; 6; 0; 0; 0x010600 *2; s8 "STR6"; 2; 7; 0; 0; 0x010700 *2; s8 "STR7"; 2; 8; 0; 0; 0x010800 *2; s8 "STR8"; 2; 9; 0; 0; 0x010900 *2; "STR9"; i8 230; s3 ""; 2; -1; 0; 0; 0; 0; s8 "";
2; 12; 0; 0; 0x010c00 *2; s8 "STR12"; 2; -1; 0; 0; 0; 0; s8 "";
2; 16; 0; 0; 0x011000 *2; s8 "STR16"; 2; -1; 0; 0; 0; 0; s8 "";
2; 17; 0; 0; 0x011100 *2; s8 "STR17"; ( 2; -1; 0; 0; 0; 0; s8 ""; ) * 2;
3; 1; 1.0; i8 17; i8 238; i8 228; i8 232; i8 237; s19 " (in Russian)"; 4; 1; 1;
3; 2; 1.0; i8 3; s7 "one"; 2.0; i8 3; s7 "two"; 4; 1; 2;
3; 1; 3.0; i8 5; s7 "three"; 4; 1; 3;
3; 1; 4.0; i8 4; s7 "four"; 4; 1; 3;
3; 1; 5.0; i8 4; s7 "five"; 4; 1; 4;
3; 1; 6.0; i8 3; s7 "six"; 4; 1; 5;
3; 2; 7.0; i8 5; s7 "seven"; 8.0; i8 5; s7 "eight"; 4; 2; 4; 5;
3; 1; 9.0; i8 4; s7 "nine"; 4; 1; 4;
3; 1; 10.0; i8 3; s7 "ten"; 4; 1; 5;
3; 1; s8 "a"; i8 19; s23 "value label for `a'"; 4; 1; 6;
3; 2;
s8 "bc"; i8 20; s23 "value label for `bc'";
s8 "de"; i8 20; s23 "value label for `de'";
4; 1; 7;
3; 1; s8 "fgh"; i8 21; s23 "value label for `fgh'"; 4; 1; 8;
3; 1; s8 "ijk"; i8 21; s23 "value label for `ijk'"; 4; 1; 8;
3; 1; s8 "lmno"; i8 22; s23 "value label for `lmno'"; 4; 1; 9;
3; 1; s8 "pqrs"; i8 22; s23 "value label for `pqrs'"; 4; 1; 10;
3; 2;
s8 "tuvw"; i8 22; s23 "value label for `tuvw'";
s8 "xyzA"; i8 22; s23 "value label for `xyzA'";
4; 2; 9; 10;
3; 1; s8 "BCDE"; i8 22; s23 "value label for `BCDE'"; 4; 1; 9;
3; 1; s8 "FGHI"; i8 22; s23 "value label for `FGHI'"; 4; 1; 10;
3; 1; s8 "JKLMNO"; i8 24; s31 "value label for `JKLMNO'"; 4; 1; 11;
3; 1; s8 "JKLMNOP"; i8 25; s31 "value label for `JKLMNOP'"; 4; 1; 12;
3; 1; s8 "JKLMNOPQ"; i8 26; s31 "value label for `JKLMNOPQ'"; 4; 1; 13;
7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 1251;
7; 20; 1; 12; "windows-1251";
7; 21; 1; COUNT (
COUNT("STR9"; i8 230); 9; 1; COUNT("RSTUVWXYZ"); COUNT("value label for `RSTUVWXYZ'");
COUNT("STR12"); 12; 2;
COUNT("0123456789ab"); COUNT("value label for `0123456789ab'");
COUNT("cdefghijklmn"); COUNT("value label for `cdefghijklmn'");
COUNT("STR16"); 16; 3;
COUNT("opqrstuvwxyzABCD"); COUNT("value label for `opqrstuvwxyzABCD'");
COUNT("EFGHIJKLMNOPQRST"); COUNT("value label for `EFGHIJKLMNOPQRST'");
COUNT("UVWXYZ0123456789"); COUNT("value label for `UVWXYZ0123456789' with Cyrillic letters: `"; i8 244; i8 245; i8 246; "'");
COUNT("STR17"); 17; 1;
COUNT("abcdefghijklmnopq"); COUNT("value label for `abcdefghijklmnopq'");
);
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:406: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:406"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:406"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY DICTIONARY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:411: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:411"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:411"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:412: cat pspp.csv"
at_fn_check_prepare_trace "sys-file-reader.at:412"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
num1,\"Format: F8.0
Value,Label
1,один (in Russian)\",1
num2,\"Format: F8.0
Value,Label
1,one
2,two\",2
num3,\"Format: F8.0
Value,Label
3,three
4,four\",3
num4,\"Format: F8.0
Value,Label
5,five
7,seven
8,eight
9,nine\",4
num5,\"Format: F8.0
Value,Label
6,six
7,seven
8,eight
10,ten\",5
str1,\"Format: A1
Value,Label
a,value label for \`a'\",6
str2,\"Format: A2
Value,Label
bc,value label for \`bc'
de,value label for \`de'\",7
str3,\"Format: A3
Value,Label
fgh,value label for \`fgh'
ijk,value label for \`ijk'\",8
str4,\"Format: A4
Value,Label
BCDE,value label for \`BCDE'
lmno,value label for \`lmno'
tuvw,value label for \`tuvw'
xyzA,value label for \`xyzA'\",9
str5,\"Format: A4
Value,Label
FGHI,value label for \`FGHI'
pqrs,value label for \`pqrs'
tuvw,value label for \`tuvw'
xyzA,value label for \`xyzA'\",10
str6,\"Format: A6
Value,Label
JKLMNO,value label for \`JKLMNO'\",11
str7,\"Format: A7
Value,Label
JKLMNOP,value label for \`JKLMNOP'\",12
str8,\"Format: A8
Value,Label
JKLMNOPQ,value label for \`JKLMNOPQ'\",13
str9ж,\"Format: A9
Value,Label
RSTUVWXYZ,value label for \`RSTUVWXYZ'\",14
str12,\"Format: A12
Value,Label
0123456789ab,value label for \`0123456789ab'
cdefghijklmn,value label for \`cdefghijklmn'\",15
str16,\"Format: A16
Value,Label
EFGHIJKLMNOPQRST,value label for \`EFGHIJKLMNOPQRST'
UVWXYZ0123456789,value label for \`UVWXYZ0123456789' with Cyrillic letters: \`фхц'
opqrstuvwxyzABCD,value label for \`opqrstuvwxyzABCD'\",16
str17,\"Format: A17
Value,Label
abcdefghijklmnopq,value label for \`abcdefghijklmnopq'\",17
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:412"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_62
#AT_START_63
at_fn_group_banner 63 'sys-file-reader.at:505' \
"documents" " " 10
at_xfail=no
(
$as_echo "63. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 0; 0; 1; 100.0; "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 1252;
6; 5;
s80 "First line of documents";
s80 "Second line of documents";
"abb"; i8 233; " appliqu"; i8 233; " attach"; i8 233; " blas"; i8 233; " caf"; i8 233; " canap"; i8 233; " clich"; i8 233; " consomm"; i8 233;
s25 "";
s80 "";
s80 "Last line of documents";
7; 20; 1; 12; "windows-1252";
999; 0;
1.0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:544: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:544"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:544"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY DOCUMENTS.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:550: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:550"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:550"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:551: cat pspp.csv"
at_fn_check_prepare_trace "sys-file-reader.at:551"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Documents in the active dataset:
First line of documents
Second line of documents
abbé appliqué attaché blasé café canapé cliché consommé
Last line of documents
Table: Data List
num1
1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:551"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_63
#AT_START_64
at_fn_group_banner 64 'sys-file-reader.at:571' \
"multiple response sets" " " 10
at_xfail=no
(
$as_echo "64. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 16; 0; 0; 0; 100.0; "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; i8 0x82; i8 0xa0; s6 "";
2; 0; 0; 0; 0x050800 *2; s8 "B";
2; 0; 0; 0; 0x050800 *2; s8 "C";
2; 0; 0; 0; 0x050800 *2; s8 "D";
2; 0; 0; 0; 0x050800 *2; s8 "E";
2; 0; 0; 0; 0x050800 *2; s8 "F";
2; 0; 0; 0; 0x050800 *2; s8 "G";
2; 4; 0; 0; 0x010400 *2; s8 "H";
2; 4; 0; 0; 0x010400 *2; s8 "I";
2; 4; 0; 0; 0x010400 *2; s8 "J";
2; 0; 0; 0; 0x050800 *2; s8 "K";
2; 0; 0; 0; 0x050800 *2; s8 "L";
2; 0; 0; 0; 0x050800 *2; s8 "M";
2; 6; 0; 0; 0x010600 *2; s8 "N";
2; 6; 0; 0; 0x010600 *2; s8 "O";
2; 6; 0; 0; 0x010600 *2; s8 "P";
7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 932;
7; 7; 1;
COUNT(
"$a=C 10 my mcgroup "; i8 0x82; i8 0xa0; " b c"; i8 10;
"$b=D2 55 0 g e f d"; i8 10; i8 10;
"$c=D4 "; i8 0x82; i8 0xcd; i8 0x82; i8 0xa2; " 10 mdgroup #2 h i j"; i8 10);
7; 19; 1;
COUNT(
i8 10;
"$d=E 1 2 34 13 third mdgroup k l m"; i8 10;
"$e=E 11 6 choice 0 n o p"; i8 10; i8 10; i8 10; i8 10);
7; 20; 1; 9; "shift_jis";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:633: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:633"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:633"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
MRSETS /DISPLAY NAME=ALL.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:638: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:638"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:638"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:639: cat pspp.csv"
at_fn_check_prepare_trace "sys-file-reader.at:639"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Multiple Response Sets
Name,Variables,Details
\$a,\"あ
b
c
\",\"Multiple category set
Label: my mcgroup
\"
\$b,\"g
e
f
d
\",\"Multiple dichotomy set
Counted value: 55
Category label source: Variable labels
\"
\$c,\"h
i
j
\",\"Multiple dichotomy set
Label: mdgroup #2
Label source: Provided by user
Counted value: \`はい'
Category label source: Variable labels
\"
\$d,\"k
l
m
\",\"Multiple dichotomy set
Label: third mdgroup
Label source: Provided by user
Counted value: 34
Category label source: Value labels of counted value
\"
\$e,\"n
o
p
\",\"Multiple dichotomy set
Label source: First variable label among variables
Counted value: \`choice'
Category label source: Value labels of counted value
\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:639"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_64
#AT_START_65
at_fn_group_banner 65 'sys-file-reader.at:688' \
"extra product info" " " 10
at_xfail=no
(
$as_echo "65. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 4; 0; 0; 0; 100.0; "01 Jan 11"; "20:53:52"; "PSPP synthetic"; i8 13; s49 "test file";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "A";
2; 0; 0; 0; 0x050800 *2; s8 "B";
2; 0; 0; 0; 0x050800 *2; s8 "C";
2; 0; 0; 0; 0x050800 *2; s8 "D";
7; 10; 1; COUNT ("Extra product info"; i8 13; "another line"; i8 13; "blah");
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:718: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:718"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:718"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
SYSFILE INFO FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:722: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:722"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:722"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:723: sed 7q pspp.csv"
at_fn_check_prepare_trace "sys-file-reader.at:723"
( $at_check_trace; sed 7q pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "File:,sys-file.sav
Label:,\"PSPP synthetic
test file\"
Created:,01 Jan 11 20:53:52 by \$(#) SPSS DATA FILE PSPP synthetic test file
Product:,\"Extra product info
another line
blah\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:723"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_65
#AT_START_66
at_fn_group_banner 66 'sys-file-reader.at:735' \
"variable display parameters, without width" " " 10
at_xfail=no
(
$as_echo "66. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 19; 0; 0; 0; 100.0; "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "A";
2; 0; 0; 0; 0x050800 *2; s8 "B";
2; 0; 0; 0; 0x050800 *2; s8 "C";
2; 0; 0; 0; 0x050800 *2; s8 "D";
2; 3; 0; 0; 0x010300 *2; s8 "H";
2; 3; 0; 0; 0x010300 *2; s8 "I";
2; 3; 0; 0; 0x010300 *2; s8 "J";
2; 3; 0; 0; 0x010300 *2; s8 "K";
2; 9; 0; 0; 0x010900 *2; s8 "L";
2; -1; 0; 0; 0; 0; s8 "";
2; 10; 0; 0; 0x010a00 *2; s8 "M";
2; -1; 0; 0; 0; 0; s8 "";
2; 17; 0; 0; 0x011100 *2; s8 "N";
( 2; -1; 0; 0; 0; 0; s8 "" ) * 2;
2; 25; 0; 0; 0x011900 *2; s8 "O";
( 2; -1; 0; 0; 0; 0; s8 "" ) * 3;
7; 11; 4; 24;
1; 0;
2; 0;
3; 0;
1; 1;
2; 1;
3; 1;
1; 2;
2; 2;
3; 2;
0; 0;
0; 1;
0; 2;
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:793: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:793"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:793"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY DICTIONARY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:798: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:798"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:798"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:799: cat pspp.csv"
at_fn_check_prepare_trace "sys-file-reader.at:799"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
a,\"Format: F8.0
Measure: Nominal
Display Alignment: Left\",1
b,\"Format: F8.0
Measure: Ordinal
Display Alignment: Left\",2
c,\"Format: F8.0
Measure: Scale
Display Alignment: Left\",3
d,\"Format: F8.0
Measure: Nominal
Display Alignment: Right\",4
h,\"Format: A3
Measure: Ordinal
Display Alignment: Right\",5
i,\"Format: A3
Measure: Scale
Display Alignment: Right\",6
j,\"Format: A3
Measure: Nominal
Display Alignment: Center\",7
k,\"Format: A3
Measure: Ordinal
Display Alignment: Center\",8
l,\"Format: A9
Measure: Scale
Display Alignment: Center\",9
m,\"Format: A10
Measure: Nominal
Display Alignment: Left\",10
n,\"Format: A17
Measure: Nominal
Display Alignment: Right\",11
o,\"Format: A25
Measure: Nominal
Display Alignment: Center\",12
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:799"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_66
#AT_START_67
at_fn_group_banner 67 'sys-file-reader.at:841' \
"variable display parameters, with width" " " 10
at_xfail=no
(
$as_echo "67. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 19; 0; 0; 0; 100.0; "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "A";
2; 0; 0; 0; 0x050800 *2; s8 "B";
2; 0; 0; 0; 0x050800 *2; s8 "C";
2; 0; 0; 0; 0x050800 *2; s8 "D";
2; 3; 0; 0; 0x010300 *2; s8 "H";
2; 3; 0; 0; 0x010300 *2; s8 "I";
2; 3; 0; 0; 0x010300 *2; s8 "J";
2; 3; 0; 0; 0x010300 *2; s8 "K";
2; 9; 0; 0; 0x010900 *2; s8 "L";
2; -1; 0; 0; 0; 0; s8 "";
2; 10; 0; 0; 0x010a00 *2; s8 "M";
2; -1; 0; 0; 0; 0; s8 "";
2; 17; 0; 0; 0x011100 *2; s8 "N";
( 2; -1; 0; 0; 0; 0; s8 "" ) * 2;
2; 25; 0; 0; 0x011900 *2; s8 "O";
( 2; -1; 0; 0; 0; 0; s8 "" ) * 3;
7; 11; 4; 36;
1; 1; 0;
2; 2; 0;
3; 3; 0;
1; 4; 1;
2; 5; 1;
3; 6; 1;
1; 7; 2;
2; 8; 2;
3; 9; 2;
0; 10; 0;
0; 11; 1;
0; 12; 2;
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:899: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:899"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:899"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY DICTIONARY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:904: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:904"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:904"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:905: cat pspp.csv"
at_fn_check_prepare_trace "sys-file-reader.at:905"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
a,\"Format: F8.0
Measure: Nominal
Display Alignment: Left
Display Width: 1\",1
b,\"Format: F8.0
Measure: Ordinal
Display Alignment: Left
Display Width: 2\",2
c,\"Format: F8.0
Measure: Scale
Display Alignment: Left
Display Width: 3\",3
d,\"Format: F8.0
Measure: Nominal
Display Alignment: Right
Display Width: 4\",4
h,\"Format: A3
Measure: Ordinal
Display Alignment: Right
Display Width: 5\",5
i,\"Format: A3
Measure: Scale
Display Alignment: Right
Display Width: 6\",6
j,\"Format: A3
Measure: Nominal
Display Alignment: Center
Display Width: 7\",7
k,\"Format: A3
Measure: Ordinal
Display Alignment: Center
Display Width: 8\",8
l,\"Format: A9
Measure: Scale
Display Alignment: Center
Display Width: 9\",9
m,\"Format: A10
Measure: Nominal
Display Alignment: Left
Display Width: 10\",10
n,\"Format: A17
Measure: Nominal
Display Alignment: Right
Display Width: 11\",11
o,\"Format: A25
Measure: Nominal
Display Alignment: Center
Display Width: 12\",12
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:905"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_67
#AT_START_68
at_fn_group_banner 68 'sys-file-reader.at:959' \
"long variable names" " " 10
at_xfail=no
(
$as_echo "68. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 7; 0; 0; 0; 100.0; "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "LONGVARI";
2; 0; 0; 0; 0x050800 *2; s8 "LONGVA_A";
2; 0; 0; 0; 0x050800 *2; s8 "LONGVA_B";
2; 0; 0; 0; 0x050800 *2; s8 "LONGVA_C";
2; 0; 0; 0; 0x050800 *2; "CO"; i8 214; "RDINA";
2; 0; 0; 0; 0x050800 *2; "CO"; i8 214; "RDI_A";
2; 0; 0; 0; 0x050800 *2; "CO"; i8 214; "RDI_B";
7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 1252;
7; 4; 8; 3; SYSMIS; HIGHEST; LOWEST;
7; 13; 1; COUNT (
"LONGVARI=LongVariableName1"; i8 9;
"LONGVA_A=LongVariableName2"; i8 9;
"LONGVA_B=LongVariableName3"; i8 9;
"LONGVA_C=LongVariableName4"; i8 9;
"CO"; i8 214; "RDINA=Co"; i8 246; "rdinate_X"; i8 9;
"CO"; i8 214; "RDI_A=Co"; i8 246; "rdinate_Y"; i8 9;
"CO"; i8 214; "RDI_B=Co"; i8 246; "rdinate_Z";
);
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1006: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1006"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1006"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY DICTIONARY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1011: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1011"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1011"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1012: cat pspp.csv"
at_fn_check_prepare_trace "sys-file-reader.at:1012"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
LongVariableName1,Format: F8.0,1
LongVariableName2,Format: F8.0,2
LongVariableName3,Format: F8.0,3
LongVariableName4,Format: F8.0,4
Coördinate_X,Format: F8.0,5
Coördinate_Y,Format: F8.0,6
Coördinate_Z,Format: F8.0,7
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1012"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_68
#AT_START_69
at_fn_group_banner 69 'sys-file-reader.at:1025' \
"very long strings" " " 10
at_xfail=no
(
$as_echo "69. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 109; 0; 0; 1; 100.0; "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
i8 0 *3;
2; 255; 0; 0; 0x01FF00 *2; "S"; i8 201; s6 "Q256";
(2; -1; 0; 0; 0; 0; s8 "") * 31;
2; 4; 0; 0; 0x010400 *2; "S"; i8 201; "Q256_1";
2; 255; 0; 0; 0x01FF00 *2; s8 "STR600";
(2; -1; 0; 0; 0; 0; s8 "") * 31;
2; 255; 0; 0; 0x01FF00 *2; s8 "STR600_1";
(2; -1; 0; 0; 0; 0; s8 "") * 31;
2; 96; 0; 0; 0x016000 *2; s8 "STR600_2";
(2; -1; 0; 0; 0; 0; s8 "") * 11;
7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 1252;
7; 14; 1; COUNT (
"S"; i8 201; "Q256=00256"; i8 0; i8 9;
"STR600=00600"; i8 0; i8 9;
);
7; 20; 1; 12; "windows-1252";
999; 0;
"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#" * 4;
"abcdefgh";
"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#" * 9;
"abcdefghijklmnopqrstuvwxyzABCDEF";
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1074: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1074"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1074"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY DICTIONARY.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1080: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1080"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1080"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1081: cat pspp.csv"
at_fn_check_prepare_trace "sys-file-reader.at:1081"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
séq256,Format: A256,1
str600,Format: A600,2
Table: Data List
séq256,str600
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@a,abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyz
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1081"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_69
#AT_START_70
at_fn_group_banner 70 'sys-file-reader.at:1093' \
"data file and variable attributes" " " 10
at_xfail=no
(
$as_echo "70. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 2; 0; 0; 0; 100.0; "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "FIRSTVAR";
2; 0; 0; 0; 0x050800 *2; s8 "SECONDVA";
7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 1252;
7; 13; 1; COUNT (
"FIRSTVAR=FirstVariable"; i8 9;
"SECONDVA=S"; i8 233; "condVariable"; i8 9;
);
7; 17; 1; COUNT (
"Attr1('Value1'"; i8 10; "''d"; i8 233; "claration''"; i8 10; ")";
"S"; i8 233; "condAttr('123'"; i8 10; "'456'"; i8 10; ")";
);
7; 18; 1; COUNT (
"FirstVariable:";
"ad"; i8 232; "le('23'"; i8 10; "'34'"; i8 10; ")";
"bert('123'"; i8 10; ")";
"$@Role('1'"; i8 10; ")";
"/S"; i8 233; "condVariable:";
"xyzzy('quux'"; i8 10; ")";
);
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1144: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1144"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1144"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY @ATTRIBUTES.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1149: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1149"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1149"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1150: cat pspp.csv"
at_fn_check_prepare_trace "sys-file-reader.at:1150"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description
FirstVariable,\"Attribute,Value
\$@Role,1
adèle[1],23
adèle[2],34
bert,123\"
SécondVariable,\"Attribute,Value
xyzzy,quux\"
Table: Custom data file attributes.
Attribute,Value
Attr1[1],Value1
Attr1[2],'déclaration'
SécondAttr[1],123
SécondAttr[2],456
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1150"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY DICTIONARY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1171: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1171"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1171"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1172: cat pspp.csv"
at_fn_check_prepare_trace "sys-file-reader.at:1172"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
FirstVariable,\"Format: F8.0
Role: Output
Attribute,Value
adèle[1],23
adèle[2],34
bert,123\",1
SécondVariable,\"Format: F8.0
Role: Input
Attribute,Value
xyzzy,quux\",2
Table: Custom data file attributes.
Attribute,Value
Attr1[1],Value1
Attr1[2],'déclaration'
SécondAttr[1],123
SécondAttr[2],456
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1172"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_70
#AT_START_71
at_fn_group_banner 71 'sys-file-reader.at:1197' \
"variable roles" " " 10
at_xfail=no
(
$as_echo "71. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 7; 0; 0; 0; 100.0; "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "I";
2; 0; 0; 0; 0x050800 *2; s8 "O";
2; 0; 0; 0; 0x050800 *2; s8 "B";
2; 0; 0; 0; 0x050800 *2; s8 "N";
2; 0; 0; 0; 0x050800 *2; s8 "P";
2; 0; 0; 0; 0x050800 *2; s8 "S";
2; 0; 0; 0; 0x050800 *2; s8 "X";
7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 1252;
7; 18; 1; COUNT (
"I:$@Role('0'"; i8 10; ")";
"/O:$@Role('1'"; i8 10; ")";
"/B:$@Role('2'"; i8 10; ")";
"/N:$@Role('3'"; i8 10; ")";
"/P:$@Role('4'"; i8 10; ")";
"/S:$@Role('5'"; i8 10; ")";
"/X:$@Role('6'"; i8 10; ")";
);
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1241: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1241"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1241"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY DICTIONARY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1246: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1246"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav': Invalid role for variable x.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1246"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1249: cat pspp.csv"
at_fn_check_prepare_trace "sys-file-reader.at:1249"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav': Invalid role for variable x.
Variable,Description,Position
i,\"Format: F8.0
Role: Input\",1
o,\"Format: F8.0
Role: Output\",2
b,\"Format: F8.0
Role: Both\",3
n,\"Format: F8.0
Role: None\",4
p,\"Format: F8.0
Role: Partition\",5
s,\"Format: F8.0
Role: Split\",6
x,\"Format: F8.0
Role: Input\",7
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1249"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_71
#AT_START_72
at_fn_group_banner 72 'sys-file-reader.at:1271' \
"compressed data" " " 10
at_xfail=no
(
$as_echo "72. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 6; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
2; 4; 0; 0; 0x010400 *2; s8 "STR4";
2; 8; 0; 0; 0x010800 *2; s8 "STR8";
2; 15; 0; 0; 0x010f00 *2; s8 "STR15";
2; -1; 0; 0; 0; 0; s8 "";
7; 20; 1; 12; "windows-1252";
999; 0;
i8 1 100 254 253 254 253; i8 255 251; "abcdefgh"; s8 "0123";
i8 253 253 253 254; i8 101 102 253 253; s8 "jklm"; s8 "nopqrstu";
s8 "vwxyzABC"; s8 "DEFG"; s8 "HIJKLMNO";
i8 254 253 252 0 0 0 0 0; s8 "PQRSTUVW";
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1309: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1309"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1309"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY DICTIONARY.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1315: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1315"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1315"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1316: cat pspp.csv"
at_fn_check_prepare_trace "sys-file-reader.at:1316"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
num1,Format: F8.0,1
num2,Format: F8.0,2
str4,Format: A4,3
str8,Format: A8,4
str15,Format: A15,5
Table: Data List
num1,num2,str4,str8,str15
-99,0,,abcdefgh,0123
.,151,jklm,nopqrstu,vwxyzABC
1,2,DEFG,HIJKLMNO,PQRSTUV
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1316"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_72
#AT_START_73
at_fn_group_banner 73 'sys-file-reader.at:1333' \
"compressed data, zero bias" " " 10
at_xfail=no
(
$as_echo "73. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 6; 1; 0; -1; 0.0; "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
2; 4; 0; 0; 0x010400 *2; s8 "STR4";
2; 8; 0; 0; 0x010800 *2; s8 "STR8";
2; 15; 0; 0; 0x010f00 *2; s8 "STR15";
2; -1; 0; 0; 0; 0; s8 "";
7; 20; 1; 12; "windows-1252";
999; 0;
i8 1 100 254 253 254 253; i8 255 251; "abcdefgh"; s8 "0123";
i8 253 253 253 254; i8 101 102 253 253; s8 "jklm"; s8 "nopqrstu";
s8 "vwxyzABC"; s8 "DEFG"; s8 "HIJKLMNO";
i8 254 253 252 0 0 0 0 0; s8 "PQRSTUVW";
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1371: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1371"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1371"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY DICTIONARY.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1377: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1377"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1377"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1378: cat pspp.csv"
at_fn_check_prepare_trace "sys-file-reader.at:1378"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
num1,Format: F8.0,1
num2,Format: F8.0,2
str4,Format: A4,3
str8,Format: A8,4
str15,Format: A15,5
Table: Data List
num1,num2,str4,str8,str15
1,100,,abcdefgh,0123
.,251,jklm,nopqrstu,vwxyzABC
101,102,DEFG,HIJKLMNO,PQRSTUV
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1378"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_73
#AT_START_74
at_fn_group_banner 74 'sys-file-reader.at:1395' \
"compressed data, other bias" " " 10
at_xfail=no
(
$as_echo "74. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 6; 1; 0; -1; 50.0; "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
2; 4; 0; 0; 0x010400 *2; s8 "STR4";
2; 8; 0; 0; 0x010800 *2; s8 "STR8";
2; 15; 0; 0; 0x010f00 *2; s8 "STR15";
2; -1; 0; 0; 0; 0; s8 "";
7; 20; 1; 12; "windows-1252";
999; 0;
i8 1 100 254 253 254 253; i8 255 251; "abcdefgh"; s8 "0123";
i8 253 253 253 254; i8 101 102 253 253; s8 "jklm"; s8 "nopqrstu";
s8 "vwxyzABC"; s8 "DEFG"; s8 "HIJKLMNO";
i8 254 253 252 0 0 0 0 0; s8 "PQRSTUVW";
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1433: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1433"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1433"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY DICTIONARY.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1439: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1439"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0x54: Compression bias is not the usual value of 100, or system file uses unrecognized floating-point format.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1439"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1442: cat pspp.csv"
at_fn_check_prepare_trace "sys-file-reader.at:1442"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"warning: \`sys-file.sav' near offset 0x54: Compression bias is not the usual value of 100, or system file uses unrecognized floating-point format.\"
Variable,Description,Position
num1,Format: F8.0,1
num2,Format: F8.0,2
str4,Format: A4,3
str8,Format: A8,4
str15,Format: A15,5
Table: Data List
num1,num2,str4,str8,str15
-49,50,,abcdefgh,0123
.,201,jklm,nopqrstu,vwxyzABC
51,52,DEFG,HIJKLMNO,PQRSTUV
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1442"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_74
#AT_START_75
at_fn_group_banner 75 'sys-file-reader.at:1530' \
"zcompressed data" " " 10
at_xfail=no
(
$as_echo "75. $at_setup_line: testing $at_desc ..."
$at_traceon
zcompressed_sack > sys-file.sack
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1534: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1534"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1534"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY DICTIONARY.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1540: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1540"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1540"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1541: cat pspp.csv"
at_fn_check_prepare_trace "sys-file-reader.at:1541"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
num1,Format: F8.0,1
num2,Format: F8.0,2
str4,Format: A4,3
str8,Format: A8,4
str15,Format: A15,5
Table: Data List
num1,num2,str4,str8,str15
-99,0,,abcdefgh,0123
.,151,jklm,nopqrstu,vwxyzABC
1,2,DEFG,HIJKLMNO,PQRSTUV
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1541"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_75
#AT_START_76
at_fn_group_banner 76 'sys-file-reader.at:1560' \
"unspecified character encoding" " " 11
at_xfail=no
(
$as_echo "76. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 4; 0; 0; 0; 100.0; "01 Jan 11"; "20:53:52";
"PSPP synthetic test file: "; i8 244; i8 245; i8 246; i8 248; s34 "";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "A";
2; 0; 0; 0; 0x050800 *2; s8 "B";
2; 0; 0; 0; 0x050800 *2; s8 "C";
2; 0; 0; 0; 0x050800 *2; s8 "D";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1585: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1585"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1585"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET 'sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1589: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1589"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1589"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1590: sed 's/default encoding.*For/default encoding. For/' stdout"
at_fn_check_prepare_trace "sys-file-reader.at:1590"
( $at_check_trace; sed 's/default encoding.*For/default encoding. For/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"warning: \`sys-file.sav': This system file does not indicate its own character encoding. Using default encoding. For best results, specify an encoding explicitly. Use SYSFILE INFO with ENCODING=\"\"DETECT\"\" to analyze the possible encodings.\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1590"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_76
#AT_START_77
at_fn_group_banner 77 'sys-file-reader.at:1596' \
"misplaced type 4 record" " " 11
at_xfail=no
(
$as_echo "77. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
>>4<<;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1610: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1610"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1610"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1613: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1613"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0xd4: Misplaced type 4 record.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:1613"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_77
#AT_START_78
at_fn_group_banner 78 'sys-file-reader.at:1619' \
"bad record type" " " 11
at_xfail=no
(
$as_echo "78. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
>>8<<;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1633: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1633"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1633"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1636: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1636"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0xd4: Unrecognized record type 8.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:1636"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_78
#AT_START_79
at_fn_group_banner 79 'sys-file-reader.at:1642' \
"wrong number of variable positions" " " 11
at_xfail=no
(
$as_echo "79. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; >>2<<; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1659: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1659"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1659"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1662: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1662"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav': File header claims 2 variable positions but 1 were read from file.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1662"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_79
#AT_START_80
at_fn_group_banner 80 'sys-file-reader.at:1668' \
"variable name may not begin with \`#'" " " 11
at_xfail=no
(
$as_echo "80. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 >>"$UM1"<<;
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1685: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1685"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1685"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1688: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1688"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0xb4: Invalid variable name \`\$UM1'.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:1688"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_80
#AT_START_81
at_fn_group_banner 81 'sys-file-reader.at:1694' \
"variable name may not be reserved word" " " 11
at_xfail=no
(
$as_echo "81. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 >>"TO"<<;
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1711: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1711"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1711"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1714: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1714"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0xb4: Invalid variable name \`TO'.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:1714"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_81
#AT_START_82
at_fn_group_banner 82 'sys-file-reader.at:1720' \
"variable width must be between 0 and 255" " " 11
at_xfail=no
(
$as_echo "82. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 256; 0; 0; 0x050800 *2; s8 "VAR1";
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1737: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1737"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1737"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1740: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1740"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0xb4: Bad width 256 for variable VAR1.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:1740"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_82
#AT_START_83
at_fn_group_banner 83 'sys-file-reader.at:1748' \
"duplicate variable name" " " 11
at_xfail=no
(
$as_echo "83. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "VAR1";
2; 0; 0; 0; 0x050800 *2; s8 "VAR1";
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1766: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1766"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1766"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY DICTIONARY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1770: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1770"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0xd4: Renaming variable with duplicate name \`VAR1' to \`VAR001'.
Variable,Description,Position
var1,Format: F8.0,1
var001,Format: F8.0,2
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1770"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_83
#AT_START_84
at_fn_group_banner 84 'sys-file-reader.at:1780' \
"variable label indicator not 0 or 1" " " 11
at_xfail=no
(
$as_echo "84. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; >>2<<; 0; 0x050800 *2; s8 "VAR1";
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1797: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1797"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1797"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1800: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1800"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0xb4: Variable label indicator field is not 0 or 1.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:1800"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_84
#AT_START_85
at_fn_group_banner 85 'sys-file-reader.at:1806' \
"invalid numeric missing value indicator" " " 11
at_xfail=no
(
$as_echo "85. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; >>-1<<; 0x050800 *2; s8 "VAR1";
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1823: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1823"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1823"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1826: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1826"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"error: \`sys-file.sav' near offset 0xb4: Numeric missing value indicator field is not -3, -2, 0, 1, 2, or 3.\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:1826"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_85
#AT_START_86
at_fn_group_banner 86 'sys-file-reader.at:1832' \
"invalid string missing value indicator" " " 11
at_xfail=no
(
$as_echo "86. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 8; 0; >>4<<; 0x010800 *2; s8 "VAR1";
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1849: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1849"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1849"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1852: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1852"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"error: \`sys-file.sav' near offset 0xb4: String missing value indicator field is not 0, 1, 2, or 3.\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:1852"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_86
#AT_START_87
at_fn_group_banner 87 'sys-file-reader.at:1858' \
"missing string continuation record" " " 11
at_xfail=no
(
$as_echo "87. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 10; 0; 0; 0x010a00 *2; s8 "VAR1";
>>2; 0; 0; 0; 0x050800 *2; s8 "VAR2";<<
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1876: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1876"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1876"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1879: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1879"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0xb4: Missing string continuation record.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:1879"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_87
#AT_START_88
at_fn_group_banner 88 'sys-file-reader.at:1885' \
"invalid variable format" " " 11
at_xfail=no
(
$as_echo "88. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 4; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; >>0xff0800; 0<<; s8 "NUM1";
2; 0; 0; 0; >>0x010800<<; >>0x021000<<; s8 "VAR1";
2; 4; 0; 0; >>0x050800<<; >>0x110a01<<; s8 "STR1";
2; 4; 0; 0; >>0x010800<<; >>0x020400<<; s8 "STR2";
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1913: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1913"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1913"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1916: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:1916"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0xc0: Variable NUM1 with width 0 has invalid print format 0xff0800.
warning: \`sys-file.sav' near offset 0xe0: Variable VAR1 with width 0 has invalid print format 0x10800.
warning: \`sys-file.sav' near offset 0xe4: Variable VAR1 with width 0 has invalid write format 0x21000.
warning: \`sys-file.sav' near offset 0x100: Variable STR1 with width 4 has invalid print format 0x50800.
warning: \`sys-file.sav' near offset 0x104: Variable STR1 with width 4 has invalid write format 0x110a01.
warning: \`sys-file.sav' near offset 0x120: Variable STR2 with width 4 has invalid print format 0x10800.
warning: \`sys-file.sav' near offset 0x124: Variable STR2 with width 4 has invalid write format 0x20400.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1916"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_88
#AT_START_89
at_fn_group_banner 89 'sys-file-reader.at:1934' \
"invalid long string missing values" " " 11
at_xfail=no
(
$as_echo "89. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 7; 0; 0; 1; 100.0; "01 Jan 11"; "20:53:52";
"PSPP synthetic test file: "; i8 244; i8 245; i8 246; i8 248; s34 "";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2; 9; 0; 0; 0x010900 *2; s8 "STR1";
2; -1; 0; 0; 0; 0; s8 "";
2; 10; 0; 0; 0x010a00 *2; s8 "STR2";
2; -1; 0; 0; 0; 0; s8 "";
2; 11; 0; 0; 0x010b00 *2; s8 "STR3";
2; -1; 0; 0; 0; 0; s8 "";
7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 1252;
7; 4; 8; 3; SYSMIS; HIGHEST; LOWEST;
7; 22; 1; COUNT (
COUNT("STR1"); i8 >>0<<;
COUNT("STR2"); i8 4;
8; "abcdefgh"; 8; "ijklmnop"; 8; "qrstuvwx"; 8; "yz012345";
COUNT(>>"Nonexistent"<<); i8 1; 8; "abcdefgh";
COUNT(>>"NUM1"<<); i8 1; 8; "abcdefgh";
COUNT("STR3"); i8 1; >>COUNT("abcdefghijkl")<<;
);
7; 20; 1; 12; "windows-1252";
999; 0;
s8 "abcd"; s8 "efgh"; s8 "ijkl"; s8 "mnop"; s8 "qrst"; s8 "uvwx";
s16 "yzABCDEFGHI"; s16 "JKLMNOPQR"; s16 "STUVWXYZ01";
s16 "23456789abc"; s32 "defghijklmnopqstuvwxyzABC";
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:1997: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:1997"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:1997"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY DICTIONARY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2002: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2002"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"warning: \`sys-file.sav' near offset 0x1f8: Long string missing values record says variable STR1 has 0 missing values, but only 1 to 3 missing values are allowed.\"
\"warning: \`sys-file.sav' near offset 0x201: Long string missing values record says variable STR2 has 4 missing values, but only 1 to 3 missing values are allowed.\"
warning: \`sys-file.sav' near offset 0x242: Ignoring long string missing value record for unknown variable Nonexistent.
warning: \`sys-file.sav' near offset 0x257: Ignoring long string missing value record for numeric variable NUM1.
\"warning: \`sys-file.sav' near offset 0x270: Ignoring long string missing value 0 for variable str3, with width 11, that has bad value width 12.\"
Variable,Description,Position
num1,Format: F8.0,1
str1,Format: A9,2
str2,\"Format: A10
Missing Values: \"\"abcdefgh\"\"; \"\"ijklmnop\"\"; \"\"qrstuvwx\"\"\",3
str3,Format: A11,4
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2002"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_89
#AT_START_90
at_fn_group_banner 90 'sys-file-reader.at:2023' \
"weighting variable must be numeric" " " 11
at_xfail=no
(
$as_echo "90. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 2; 1; >>2<<; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2; 4; 0; 0; 0x010400 *2; s8 "STR1";
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2043: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2043"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2043"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY DICTIONARY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2047: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2047"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav': Ignoring string variable \`STR1' set as weighting variable.
Variable,Description,Position
num1,Format: F8.0,1
str1,Format: A4,2
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2047"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_90
#AT_START_91
at_fn_group_banner 91 'sys-file-reader.at:2057' \
"bad weighting variable index" " " 11
at_xfail=no
(
$as_echo "91. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 2; 1; >>3<<; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2; 4; 0; 0; 0x010400 *2; s8 "STR1";
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2077: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2077"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2077"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2080: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2080"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0x4c: Variable index 3 not in valid range 1...2.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:2080"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_91
#AT_START_92
at_fn_group_banner 92 'sys-file-reader.at:2086' \
"variable index is long string contination" " " 11
at_xfail=no
(
$as_echo "92. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 3; 1; >>3<<; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2; 9; 0; 0; 0x010900 *2; s8 "STR1";
(2; -1; 0; 0; 0; 0; s8 "");
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2107: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2107"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2107"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2110: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2110"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0x4c: Variable index 3 refers to long string continuation.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:2110"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_92
#AT_START_93
at_fn_group_banner 93 'sys-file-reader.at:2116' \
"multiple documents records" " " 11
at_xfail=no
(
$as_echo "93. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
(6; 1; s80 "One line of documents") >>* 2<<;
999; 0;
7; 20; 1; 12; "windows-1252";
1.0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2139: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2139"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2139"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2143: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2143"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0x12c: Duplicate type 6 (document) record.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:2143"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_93
#AT_START_94
at_fn_group_banner 94 'sys-file-reader.at:2150' \
"empty document record" " " 11
at_xfail=no
(
$as_echo "94. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
6; >>0<<;
999; 0;
1.0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2170: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2170"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2170"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2174: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2174"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0xd4: Number of document lines (0) must be greater than 0 and less than 26843545.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:2174"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_94
#AT_START_95
at_fn_group_banner 95 'sys-file-reader.at:2180' \
"extension record too large" " " 11
at_xfail=no
(
$as_echo "95. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 3; >>0xfffff000 * 2<<;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2194: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2194"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2194"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2198: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2198"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0xd8: Record type 7 subtype 3 too large.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:2198"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_95
#AT_START_96
at_fn_group_banner 96 'sys-file-reader.at:2204' \
"unknown extension record" " " 11
at_xfail=no
(
$as_echo "96. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 30; 1; 1; i8 0;
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2224: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2224"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2224"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2228: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2228"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"warning: \`sys-file.sav' near offset 0xd8: Unrecognized record type 7, subtype 30. Please send a copy of this file, and the syntax which created it to bug-gnu-pspp@gnu.org.\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2228"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_96
#AT_START_97
at_fn_group_banner 97 'sys-file-reader.at:2234' \
"bad machine integer info size" " " 11
at_xfail=no
(
$as_echo "97. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 3; 4; >>9<<; 1; 2; 3; -1; 1; 1; ENDIAN; 1252; >>1234<<;
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2254: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2254"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2254"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2258: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2258"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"warning: \`sys-file.sav' near offset 0xd8: Record type 7, subtype 3 has bad count 9 (expected 8).\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2258"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_97
#AT_START_98
at_fn_group_banner 98 'sys-file-reader.at:2264' \
"bad machine integer info float format" " " 11
at_xfail=no
(
$as_echo "98. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 3; 4; 8; 1; 2; 3; -1; >>2<<; 1; ENDIAN; 1252;
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2284: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2284"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2284"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2288: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2288"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0xd8: Floating-point representation indicated by system file (2) differs from expected (1).
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:2288"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_98
#AT_START_99
at_fn_group_banner 99 'sys-file-reader.at:2294' \
"bad machine integer info endianness" " " 11
at_xfail=no
(
$as_echo "99. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 3; 4; 8; 1; 2; 3; -1; 1; 1; >>3<<; 1252;
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in "be 1" "le 2"; do
set $variant
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2315: sack --\$1 sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$1 sys-file.sack > sys-file.sav" "sys-file-reader.at:2315"
( $at_check_trace; sack --$1 sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2315"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
DISPLAY DICTIONARY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2320: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2320"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0xd8: Integer format indicated by system file (3) differs from expected ($2).
Variable,Description,Position
num1,Format: F8.0,1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2320"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_99
#AT_START_100
at_fn_group_banner 100 'sys-file-reader.at:2330' \
"bad machine floating-point info size" " " 11
at_xfail=no
(
$as_echo "100. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 4; 8; >>4<<; SYSMIS; HIGHEST; LOWEST; 0.0;
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2350: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2350"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2350"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2354: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2354"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"warning: \`sys-file.sav' near offset 0xd8: Record type 7, subtype 4 has bad count 4 (expected 3).\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2354"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_100
#AT_START_101
at_fn_group_banner 101 'sys-file-reader.at:2360' \
"wrong special floating point values" " " 11
at_xfail=no
(
$as_echo "101. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 4; 8; 3; >>0.0<<; >>1.0<<; >>2.0<<;
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2380: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2380"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2380"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2383: pspp -O format=csv sys-file.sps | sed 's/ (.*/.../'"
at_fn_check_prepare_notrace 'a shell pipeline' "sys-file-reader.at:2383"
( $at_check_trace; pspp -O format=csv sys-file.sps | sed 's/ (.*/.../'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"warning: \`sys-file.sav' near offset 0xd8: File specifies unexpected value 0...
\"warning: \`sys-file.sav' near offset 0xd8: File specifies unexpected value 1...
\"warning: \`sys-file.sav' near offset 0xd8: File specifies unexpected value 2...
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2383"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_101
#AT_START_102
at_fn_group_banner 102 'sys-file-reader.at:2393' \
"bad mrsets name" " " 11
at_xfail=no
(
$as_echo "102. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 16; 0; 0; 0; 100.0; "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; i8 0x82; i8 0xa0; s6 "";
2; 0; 0; 0; 0x050800 *2; s8 "B";
2; 0; 0; 0; 0x050800 *2; s8 "C";
2; 0; 0; 0; 0x050800 *2; s8 "D";
2; 0; 0; 0; 0x050800 *2; s8 "E";
2; 0; 0; 0; 0x050800 *2; s8 "F";
2; 0; 0; 0; 0x050800 *2; s8 "G";
2; 4; 0; 0; 0x010400 *2; s8 "H";
2; 4; 0; 0; 0x010400 *2; s8 "I";
2; 4; 0; 0; 0x010400 *2; s8 "J";
2; 0; 0; 0; 0x050800 *2; s8 "K";
2; 0; 0; 0; 0x050800 *2; s8 "L";
2; 0; 0; 0; 0x050800 *2; s8 "M";
2; 6; 0; 0; 0x010600 *2; s8 "N";
2; 6; 0; 0; 0x010600 *2; s8 "O";
2; 6; 0; 0; 0x010600 *2; s8 "P";
7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 932;
7; 7; 1;
COUNT(
"$a=C 10 my mcgroup "; i8 0x82; i8 0xa0; " b c"; i8 10;
"b=D2 55 0 g e f d"; i8 10;
"$c=D4 "; i8 0x82; i8 0xcd; i8 0x82; i8 0xa2; " 10 mdgroup #2 h i j"; i8 10);
7; 19; 1;
COUNT(
"$d=E 1 2 34 13 third mdgroup k l m"; i8 10;
"e=E 11 6 choice 0 n o p"; i8 10);
7; 20; 1; 9; "shift_jis";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2454: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2454"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2454"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
MRSETS /DISPLAY NAME=ALL.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2458: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2458"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav': Multiple response set name \`b' does not begin with \`\$'.
warning: \`sys-file.sav': Multiple response set name \`e' does not begin with \`\$'.
Table: Multiple Response Sets
Name,Variables,Details
\$a,\"あ
b
c
\",\"Multiple category set
Label: my mcgroup
\"
\$c,\"h
i
j
\",\"Multiple dichotomy set
Label: mdgroup #2
Label source: Provided by user
Counted value: \`はい'
Category label source: Variable labels
\"
\$d,\"k
l
m
\",\"Multiple dichotomy set
Label: third mdgroup
Label source: Provided by user
Counted value: 34
Category label source: Value labels of counted value
\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2458"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_102
#AT_START_103
at_fn_group_banner 103 'sys-file-reader.at:2493' \
"missing space after C in mrsets" " " 11
at_xfail=no
(
$as_echo "103. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 7; 1; COUNT("$a=Cx");
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2512: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2512"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2512"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2515: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2515"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0xd8: Missing space following \`C' at offset 4 in MRSETS record.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2515"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_103
#AT_START_104
at_fn_group_banner 104 'sys-file-reader.at:2521' \
"missing space after E in mrsets" " " 11
at_xfail=no
(
$as_echo "104. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 7; 1; COUNT("$a=Ex");
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2540: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2540"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2540"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2543: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2543"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0xd8: Missing space following \`E' at offset 4 in MRSETS record.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2543"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_104
#AT_START_105
at_fn_group_banner 105 'sys-file-reader.at:2549' \
"unexpected label source in mrsets" " " 11
at_xfail=no
(
$as_echo "105. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 7; 1; COUNT("$a=E 2");
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2568: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2568"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2568"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2571: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2571"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0xd8: Unexpected label source value following \`E' at offset 7 in MRSETS record.
warning: \`sys-file.sav' near offset 0xd8: Expecting digit at offset 7 in MRSETS record.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2571"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_105
#AT_START_106
at_fn_group_banner 106 'sys-file-reader.at:2579' \
"bad type character in mrsets" " " 11
at_xfail=no
(
$as_echo "106. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 7; 1; COUNT("$a=");
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2598: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2598"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2598"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2601: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2601"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"warning: \`sys-file.sav' near offset 0xd8: Missing \`C', \`D', or \`E' at offset 3 in MRSETS record.\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2601"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_106
#AT_START_107
at_fn_group_banner 107 'sys-file-reader.at:2607' \
"bad counted string length in mrsets" " " 11
at_xfail=no
(
$as_echo "107. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 7; 1; COUNT("$a=Dx");
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2626: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2626"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2626"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2629: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2629"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0xd8: Expecting digit at offset 4 in MRSETS record.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2629"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_107
#AT_START_108
at_fn_group_banner 108 'sys-file-reader.at:2635' \
"missing space in counted string in mrsets" " " 11
at_xfail=no
(
$as_echo "108. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 7; 1; COUNT("$a=D1x");
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2654: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2654"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2654"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2657: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2657"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0xd8: Expecting space at offset 5 in MRSETS record.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2657"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_108
#AT_START_109
at_fn_group_banner 109 'sys-file-reader.at:2663' \
"counted string too long in mrsets" " " 11
at_xfail=no
(
$as_echo "109. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 7; 1; COUNT("$a=D4 abc");
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2682: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2682"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2682"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2685: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2685"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0xd8: 4-byte string starting at offset 6 exceeds record length 9.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2685"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_109
#AT_START_110
at_fn_group_banner 110 'sys-file-reader.at:2691' \
"missing space after counted string in mrsets" " " 11
at_xfail=no
(
$as_echo "110. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 7; 1; COUNT("$a=D3 abcx");
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2710: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2710"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2710"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2713: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2713"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0xd8: Expecting space at offset 9 following 3-byte string.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2713"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_110
#AT_START_111
at_fn_group_banner 111 'sys-file-reader.at:2719' \
"missing newline after variable name in mrsets" " " 11
at_xfail=no
(
$as_echo "111. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 7; 1; COUNT("$a=C 0 NUM1");
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2738: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2738"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2738"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2741: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2741"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0xd8: Missing new-line parsing variable names at offset 13 in MRSETS record.
warning: \`sys-file.sav': MRSET \$a has only one variable.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2741"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_111
#AT_START_112
at_fn_group_banner 112 'sys-file-reader.at:2749' \
"duplicate variable name in mrsets" " " 11
at_xfail=no
(
$as_echo "112. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 7; 1; COUNT("$a=C 0 NUM1 NUM1"; i8 10);
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2768: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2768"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2768"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2771: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2771"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav': MRSET \$a contains duplicate variable name NUM1.
warning: \`sys-file.sav': MRSET \$a has only one variable.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2771"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_112
#AT_START_113
at_fn_group_banner 113 'sys-file-reader.at:2779' \
"mixed variable types in mrsets" " " 11
at_xfail=no
(
$as_echo "113. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2; 8; 0; 0; 0x010800 *2; s8 "STR1";
7; 7; 1; COUNT("$a=C 0 NUM1 STR1"; i8 10);
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2799: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2799"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2799"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2802: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2802"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav': MRSET \$a contains both string and numeric variables.
warning: \`sys-file.sav': MRSET \$a has only one variable.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2802"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_113
#AT_START_114
at_fn_group_banner 114 'sys-file-reader.at:2810' \
"missing newline after variable name in mrsets" " " 11
at_xfail=no
(
$as_echo "114. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 7; 1; COUNT("$a=C 0 NUM1"; i8 10);
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2829: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2829"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2829"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2832: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2832"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav': MRSET \$a has only one variable.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2832"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_114
#AT_START_115
at_fn_group_banner 115 'sys-file-reader.at:2838' \
"zero or one variable in mrset" " " 11
at_xfail=no
(
$as_echo "115. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 7; 1; COUNT("$a=C 0 NUM1"; i8 10; "$b=C 0 "; i8 10);
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2857: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2857"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2857"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2860: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2860"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav': MRSET \$a has only one variable.
warning: \`sys-file.sav': MRSET \$b has no variables.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2860"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_115
#AT_START_116
at_fn_group_banner 116 'sys-file-reader.at:2868' \
"wrong display parameter size" " " 11
at_xfail=no
(
$as_echo "116. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 11; >>8<<; 2; 1.0; 1.0;
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2888: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2888"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2888"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2891: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2891"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"warning: \`sys-file.sav' near offset 0xd8: Record type 7, subtype 11 has bad size 8 (expected 4).\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2891"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_116
#AT_START_117
at_fn_group_banner 117 'sys-file-reader.at:2897' \
"wrong display parameter count" " " 11
at_xfail=no
(
$as_echo "117. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 11; 4; >>4<<; 1; 1; 2; 2;
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2917: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2917"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2917"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2920: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2920"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0xd8: Extension 11 has bad count 4 (for 1 variables).
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2920"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_117
#AT_START_118
at_fn_group_banner 118 'sys-file-reader.at:2926' \
"wrong display measurement level" " " 11
at_xfail=no
(
$as_echo "118. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 11; 4; 2; >>4<<; 0;
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2946: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2946"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2946"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2949: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2949"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0xd8: Invalid variable display parameters for variable 0 (NUM1). Default parameters substituted.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2949"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_118
#AT_START_119
at_fn_group_banner 119 'sys-file-reader.at:2955' \
"wrong display alignment" " " 11
at_xfail=no
(
$as_echo "119. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 11; 4; 2; 1; >>-1<<;
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2975: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:2975"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2975"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:2978: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:2978"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0xd8: Invalid variable display parameters for variable 0 (NUM1). Default parameters substituted.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:2978"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_119
#AT_START_120
at_fn_group_banner 120 'sys-file-reader.at:2984' \
"bad variable name in variable/value pair" " " 11
at_xfail=no
(
$as_echo "120. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "LONGVARI";
7; 13; 1; COUNT (>>"xyzzy"<<);
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3004: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3004"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3004"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3008: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3008"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0xde: Dictionary record refers to unknown variable xyzzy.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3008"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_120
#AT_START_121
at_fn_group_banner 121 'sys-file-reader.at:3014' \
"duplicate long variable name" " " 11
at_xfail=no
(
$as_echo "121. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 4; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "LONGVARI";
2; 0; 0; 0; 0x050800 *2; s8 "LONGVA_A";
2; 0; 0; 0; 0x050800 *2; s8 "LONGVA_B";
2; 0; 0; 0; 0x050800 *2; s8 "LONGVA_C";
7; 13; 1; COUNT (
"LONGVARI=_Invalid"; i8 9;
"LONGVA_A=LongVariableName"; i8 9;
"LONGVA_B=LONGVARIABLENAME"; i8 9;
);
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3041: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3041"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3041"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3045: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3045"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0x138: Long variable mapping from LONGVARI to invalid variable name \`_Invalid'.
warning: \`sys-file.sav' near offset 0x138: Duplicate long variable name \`LONGVARIABLENAME'.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3045"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_121
#AT_START_122
at_fn_group_banner 122 'sys-file-reader.at:3053' \
"bad very long string length" " " 11
at_xfail=no
(
$as_echo "122. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
7; 14; 1; COUNT (
"NUM1=00000"; i8 0; i8 9;
"NUM1=00255"; i8 0; i8 9;
"NUM1=00256"; i8 0; i8 9;
);
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3077: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3077"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3077"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3081: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3081"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0xd8: NUM1 listed as string of invalid length 00000 in very long string record.
\"warning: \`sys-file.sav' near offset 0xd8: NUM1 listed in very long string record with width 00255, which requires only one segment.\"
error: \`sys-file.sav' near offset 0xd8: Very long string NUM1 overflows dictionary.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3081"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_122
#AT_START_123
at_fn_group_banner 123 'sys-file-reader.at:3091' \
"bad very long string segment width" " " 11
at_xfail=no
(
$as_echo "123. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 255; 0; 0; 0x01ff00 *2; s8 "STR1";
(2; -1; 0; 0; 0; 0; s8 "") * 31;
2; >>9<<; 0; 0; 0x010900 *2; s8 "STR1_A";
>>2; -1; 0; 0; 0; 0; s8 "";<<
7; 14; 1; COUNT (
"STR1=00256"; i8 0; i8 9;
);
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3116: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3116"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3116"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3120: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3120"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0x4f8: Very long string with width 256 has segment 1 of width 9 (expected 4).
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3120"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_123
#AT_START_124
at_fn_group_banner 124 'sys-file-reader.at:3126' \
"too many value labels" " " 11
at_xfail=no
(
$as_echo "124. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3; >>0x7fffffff<<;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3138: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3138"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3138"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3142: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3142"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0xd4: Invalid number of labels 2147483647.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3142"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_124
#AT_START_125
at_fn_group_banner 125 'sys-file-reader.at:3148' \
"missing type 4 record" " " 11
at_xfail=no
(
$as_echo "125. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3; 1; 1.0; i8 3; s7 "one";
7; 20; 1; 12; "windows-1252";
>>999; 0<<;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3168: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3168"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3168"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3172: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3172"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0xe8: Variable index record (type 4) does not immediately follow value label record (type 3) as it should.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3172"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_125
#AT_START_126
at_fn_group_banner 126 'sys-file-reader.at:3178' \
"value label with no associated variables" " " 11
at_xfail=no
(
$as_echo "126. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3; 1; 1.0; i8 3; s7 "one"; 4; >>0<<;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3192: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3192"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3192"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3196: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3196"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0xec: Number of variables associated with a value label (0) is not between 1 and the number of variables (1).
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3196"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_126
#AT_START_127
at_fn_group_banner 127 'sys-file-reader.at:3202' \
"type 4 record names long string variable" " " 11
at_xfail=no
(
$as_echo "127. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 9; 0; 0; 0x010900 *2; s8 "STR1";
2; -1; 0; 0; 0; 0; s8 "";
3; 1; s8 "xyzzy"; i8 3; s7 "one"; 4; 1; >>1<<;
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3223: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3223"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3223"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3227: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3227"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0xf4: Value labels may not be added to long string variables (e.g. STR1) using records types 3 and 4.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3227"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_127
#AT_START_128
at_fn_group_banner 128 'sys-file-reader.at:3233' \
"variables for value label must all be same type" "" 11
at_xfail=no
(
$as_echo "128. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 6; 0; 0; 0x010600 *2; s8 "STR1";
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3; 1; s8 "xyzzy"; i8 3; s7 "one"; 4; 2; >>1; 2<<;
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3254: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3254"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3254"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3258: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3258"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"error: \`sys-file.sav' near offset 0xf4: Variables associated with value label are not all of identical type. Variable STR1 is string, but variable NUM1 is numeric.\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3258"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_128
#AT_START_129
at_fn_group_banner 129 'sys-file-reader.at:3264' \
"duplicate value labels type" " " 11
at_xfail=no
(
$as_echo "129. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 6; 0; 0; 0x010600 *2; s8 "STR1";
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3; 1; s8 "xyzzy"; i8 3; s7 "one"; 4; 2; >>1; 1<<;
3; 1; 1.0; i8 3; s7 "one"; 4; 2; >>2; 2<<;
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3286: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3286"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3286"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3290: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3290"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0xf4: Duplicate value label for \`xyzzy ' on STR1.
warning: \`sys-file.sav' near offset 0x11c: Duplicate value label for 1 on NUM1.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3290"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_129
#AT_START_130
at_fn_group_banner 130 'sys-file-reader.at:3298' \
"missing attribute value" " " 11
at_xfail=no
(
$as_echo "130. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "FIRSTVAR";
7; 17; 1; COUNT (
"Attr1("
);
7; 18; 1; COUNT (
"FIRSTVAR:";
"fred('23'"; i8 10
);
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3326: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3326"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3326"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3330: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3330"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0xde: Error parsing attribute value Attr1[1].
warning: \`sys-file.sav' near offset 0x101: Error parsing attribute value fred[2].
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3330"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_130
#AT_START_131
at_fn_group_banner 131 'sys-file-reader.at:3338' \
"unquoted attribute value" " " 11
at_xfail=no
(
$as_echo "131. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "FIRSTVAR";
7; 17; 1; COUNT (
"Attr1(value"; i8 10;
")"
);
7; 18; 1; COUNT (
"FIRSTVAR:";
"fred(23"; i8 10; ")"
);
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3367: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3367"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3367"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3371: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3371"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0xe4: Attribute value Attr1[1] is not quoted: value.
warning: \`sys-file.sav' near offset 0x106: Attribute value fred[1] is not quoted: 23.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3371"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_131
#AT_START_132
at_fn_group_banner 132 'sys-file-reader.at:3379' \
"bad variable name in long string value label" " " 11
at_xfail=no
(
$as_echo "132. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 3; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2; 14; 0; 0; 0x010e00 *2; s8 "STR14";
2; -1; 0; 0; 0; 0; s8 "";
7; 21; 1; COUNT (
COUNT(>>"STR9"<<); 9;
1; COUNT("RSTUVWXYZ"); COUNT("value label for `RSTUVWXYZ'");
COUNT(>>"NUM1"<<); 0;
1; COUNT("xyz"); COUNT("value label for 1.0");
COUNT("STR14"); >>9<<;
1; COUNT("RSTUVWXYZ"); COUNT("value label for `RSTUVWXYZ'");
COUNT("STR14"); 14;
1; COUNT(>>"RSTUVWXYZ"<<); COUNT("value label for `RSTUVWXYZ'");
COUNT("STR14"); 14; 2;
COUNT("abcdefghijklmn"); COUNT("value label for `abcdefghijklmn'");
>>COUNT("abcdefghijklmn"); COUNT("another value label for `abcdefghijklmn'")<<;
);
7; 20; 1; 12; "windows-1252";
999; 0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3421: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3421"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3421"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3424: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3424"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0x128: Ignoring long string value label record for unknown variable STR9.
warning: \`sys-file.sav' near offset 0x164: Ignoring long string value label record for numeric variable NUM1.
warning: \`sys-file.sav' near offset 0x193: Ignoring long string value label record for variable STR14 because the record's width (9) does not match the variable's width (14).
\"warning: \`sys-file.sav' near offset 0x1d4: Ignoring long string value label 0 for variable str14, with width 14, that has bad value width 9.\"
warning: \`sys-file.sav' near offset 0x259: Duplicate value label for \`abcdefghijklmn' on str14.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3424"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_132
#AT_START_133
at_fn_group_banner 133 'sys-file-reader.at:3438' \
"fewer data records than indicated by file header" "" 11
at_xfail=no
(
$as_echo "133. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 2; 0; 0; >>5<<; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
7; 20; 1; 12; "windows-1252";
999; 0;
1.0; 2.0;
3.0; 4.0;
5.0; 6.0;
7.0; 8.0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3461: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3461"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3461"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3465: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3465"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: Error reading case from file \`sys-file.sav'.
Table: Data List
num1,num2
1,2
3,4
5,6
7,8
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3465"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_133
#AT_START_134
at_fn_group_banner 134 'sys-file-reader.at:3478' \
"partial data record between variables" " " 11
at_xfail=no
(
$as_echo "134. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 2; 0; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
7; 20; 1; 12; "windows-1252";
999; 0;
1.0; 2.0;
3.0;
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3498: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3498"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3498"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3502: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3502"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0x12c: File ends in partial case.
Table: Data List
num1,num2
1,2
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3502"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_134
#AT_START_135
at_fn_group_banner 135 'sys-file-reader.at:3512' \
"partial data record within long string" " " 11
at_xfail=no
(
$as_echo "135. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 2; 0; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2; 14; 0; 0; 0x010e00 *2; s8 "STR14";
2; -1; 0; 0; 0; 0; s8 "";
7; 20; 1; 12; "windows-1252";
999; 0;
s14 "one data item";
s8 "partial";
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3532: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3532"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3532"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3536: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3536"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0x12a: Unexpected end of file.
Table: Data List
str14
one data item
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3536"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_135
#AT_START_136
at_fn_group_banner 136 'sys-file-reader.at:3546' \
"partial compressed data record" " " 11
at_xfail=no
(
$as_echo "136. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 6; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
2; 4; 0; 0; 0x010400 *2; s8 "STR4";
2; 8; 0; 0; 0x010800 *2; s8 "STR8";
2; 15; 0; 0; 0x010f00 *2; s8 "STR15";
2; -1; 0; 0; 0; 0; s8 "";
7; 20; 1; 12; "windows-1252";
999; 0;
i8 1 100 254 253 254 253; i8 255 251; "abcdefgh"; s8 "0123";
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3580: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3580"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3580"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3584: pspp -O format=csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3584"
( $at_check_trace; pspp -O format=csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0x1ac: File ends in partial case.
Table: Data List
num1,num2,str4,str8,str15
-99,0,,abcdefgh,0123
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3584"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_136
#AT_START_137
at_fn_group_banner 137 'sys-file-reader.at:3594' \
"zcompressed data - bad zheader_ofs" " " 11
at_xfail=no
(
$as_echo "137. $at_setup_line: testing $at_desc ..."
$at_traceon
zcompressed_sack | sed 's/.*zheader_ofs.*/>>i64 0<<;/' > sys-file.sack
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3598: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3598"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3598"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3601: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3601"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0x194: Wrong ZLIB data header offset 0 (expected 0x194).
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3601"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_137
#AT_START_138
at_fn_group_banner 138 'sys-file-reader.at:3606' \
"zcompressed data - bad ztrailer_ofs" " " 11
at_xfail=no
(
$as_echo "138. $at_setup_line: testing $at_desc ..."
$at_traceon
zcompressed_sack | sed 's/.*ztrailer_ofs.*/>>i64 0<<;/' > sys-file.sack
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3610: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3610"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3610"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3613: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3613"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0x194: Impossible ZLIB trailer offset 0x0.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3613"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_138
#AT_START_139
at_fn_group_banner 139 'sys-file-reader.at:3620' \
"zcompressed data - invalid ztrailer_len" " " 11
at_xfail=no
(
$as_echo "139. $at_setup_line: testing $at_desc ..."
$at_traceon
zcompressed_sack | sed 's/.*ztrailer_len.*/>>i64 12<<;/' > sys-file.sack
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3624: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3624"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3624"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3627: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3627"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0x194: Invalid ZLIB trailer length 12.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3627"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_139
#AT_START_140
at_fn_group_banner 140 'sys-file-reader.at:3633' \
"zcompressed data - wrong ztrailer_len" " " 11
at_xfail=no
(
$as_echo "140. $at_setup_line: testing $at_desc ..."
$at_traceon
zcompressed_sack | sed 's/.*ztrailer_len.*/>>i64 72<<;/' > sys-file.sack
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3637: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3637"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3637"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3640: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3640"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0x1ac: End of ZLIB trailer (0x24d) is not file size (0x235).
error: \`sys-file.sav' near offset 0x21d: 72-byte ZLIB trailer specifies 1 data blocks (expected 2).
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3640"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_140
#AT_START_141
at_fn_group_banner 141 'sys-file-reader.at:3646' \
"zcompressed data - wrong ztrailer_bias" " " 11
at_xfail=no
(
$as_echo "141. $at_setup_line: testing $at_desc ..."
$at_traceon
zcompressed_sack | sed 's/.*ztrailer_bias.*/>>i64 0<<;/' > sys-file.sack
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3650: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3650"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3650"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3653: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3653"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0x20d: ZLIB trailer bias (0) differs from file header bias (100.00).
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3653"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_141
#AT_START_142
at_fn_group_banner 142 'sys-file-reader.at:3658' \
"zcompressed data - wrong ztrailer_zero" " " 11
at_xfail=no
(
$as_echo "142. $at_setup_line: testing $at_desc ..."
$at_traceon
zcompressed_sack | sed 's/.*ztrailer_zero.*/>>i64 100<<;/' > sys-file.sack
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3662: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3662"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3662"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3665: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3665"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0x215: ZLIB trailer \"zero\" field has nonzero value 100.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3665"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_142
#AT_START_143
at_fn_group_banner 143 'sys-file-reader.at:3670' \
"zcompressed data - wrong block_size" " " 11
at_xfail=no
(
$as_echo "143. $at_setup_line: testing $at_desc ..."
$at_traceon
zcompressed_sack | sed 's/.*block_size.*/>>0x1000<<;/' > sys-file.sack
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3674: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3674"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3674"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3677: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3677"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0x219: ZLIB trailer specifies unexpected 4096-byte block size.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3677"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_143
#AT_START_144
at_fn_group_banner 144 'sys-file-reader.at:3682' \
"zcompressed data - wrong n_blocks" " " 11
at_xfail=no
(
$as_echo "144. $at_setup_line: testing $at_desc ..."
$at_traceon
zcompressed_sack | sed 's/.*n_blocks.*/>>2<<;/' > sys-file.sack
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3686: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3686"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3686"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3689: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3689"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0x21d: 48-byte ZLIB trailer specifies 2 data blocks (expected 1).
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3689"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_144
#AT_START_145
at_fn_group_banner 145 'sys-file-reader.at:3694' \
"zcompressed data - wrong uncompressed_ofs" " " 11
at_xfail=no
(
$as_echo "145. $at_setup_line: testing $at_desc ..."
$at_traceon
zcompressed_sack | sed 's/.*uncompressed_ofs.*/i64 >>0x177<<;/' > sys-file.sack
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3698: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3698"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3698"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3701: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3701"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0x21d: ZLIB block descriptor 0 reported uncompressed data offset 0x177, when 0x194 was expected.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3701"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_145
#AT_START_146
at_fn_group_banner 146 'sys-file-reader.at:3706' \
"zcompressed data - wrong compressed_ofs" " " 11
at_xfail=no
(
$as_echo "146. $at_setup_line: testing $at_desc ..."
$at_traceon
zcompressed_sack | sed 's/.*# compressed_ofs.*/i64 >>0x191<<;/' > sys-file.sack
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3710: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3710"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3710"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3713: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3713"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0x21d: ZLIB block descriptor 0 reported compressed data offset 0x191, when 0x1ac was expected.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3713"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_146
#AT_START_147
at_fn_group_banner 147 'sys-file-reader.at:3718' \
"zcompressed data - compressed sizes don't add up" "" 11
at_xfail=no
(
$as_echo "147. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sys-file.sack <<'_ATEOF'
"$FL3"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2; 6; 2; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
i8 0 *3;
2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
2; 4; 0; 0; 0x010400 *2; s8 "STR4";
2; 8; 0; 0; 0x010800 *2; s8 "STR8";
2; 15; 0; 0; 0x010f00 *2; s8 "STR15";
2; -1; 0; 0; 0; 0; s8 "";
7; 20; 1; 12; "windows-1252";
999; 0;
i64 0x194; # zheader_ofs
i64 0x1ac; # ztrailer_ofs
i64 72; # ztrailer_len
i64 -100; # ztrailer_bias
i64 0; # ztrailer_zero
0x3ff000; # block_size
2; # n_blocks
i64 0x194; # uncompressed_ofs
i64 0x1ac; # compressed_ofs
0x100000; # uncompressed_size
0x12345; # compressed_size
i64 0x100194; # uncompressed_ofs
i64 0x12421; # compressed_ofs
0x100000; # uncompressed_size
0x12345; # compressed_size
_ATEOF
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3775: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3775"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3775"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3778: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3778"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0x1c4: ZLIB block descriptor 0 reported block size 0x100000, when 0x3ff000 was expected.
error: \`sys-file.sav' near offset 0x1dc: ZLIB block descriptor 1 reported compressed data offset 0x12421, when 0x124f1 was expected.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3778"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_147
#AT_START_148
at_fn_group_banner 148 'sys-file-reader.at:3784' \
"zcompressed data - uncompressed_size > block_size" "" 11
at_xfail=no
(
$as_echo "148. $at_setup_line: testing $at_desc ..."
$at_traceon
zcompressed_sack | sed 's/.*uncompressed_size.*/>>0x400000<<;/' > sys-file.sack
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3788: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3788"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3788"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3791: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3791"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: \`sys-file.sav' near offset 0x21d: ZLIB block descriptor 0 reported block size 0x400000, when at most 0x3ff000 was expected.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3791"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_148
#AT_START_149
at_fn_group_banner 149 'sys-file-reader.at:3796' \
"zcompressed data - compression expands data too much" "" 11
at_xfail=no
(
$as_echo "149. $at_setup_line: testing $at_desc ..."
$at_traceon
zcompressed_sack | sed 's/.*uncompressed_size.*/>>50<<;/
s/.*# compressed_size.*/>>100<<;/' > sys-file.sack
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3801: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3801"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3801"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3804: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3804"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0x21d: ZLIB block descriptor 0 reports compressed size 100 and uncompressed size 50.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3804"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_149
#AT_START_150
at_fn_group_banner 150 'sys-file-reader.at:3809' \
"zcompressed data - compressed sizes don't add up" "" 11
at_xfail=no
(
$as_echo "150. $at_setup_line: testing $at_desc ..."
$at_traceon
zcompressed_sack | sed 's/.*# compressed_size.*/>>88<<;/' > sys-file.sack
for variant in be le; do
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3813: sack --\$variant sys-file.sack > sys-file.sav"
at_fn_check_prepare_dynamic "sack --$variant sys-file.sack > sys-file.sav" "sys-file-reader.at:3813"
( $at_check_trace; sack --$variant sys-file.sack > sys-file.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-reader.at:3813"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='sys-file.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-reader.at:3816: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file-reader.at:3816"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: \`sys-file.sav' near offset 0x235: ZLIB trailer is at offset 0x205 but 0x204 would be expected from block descriptors.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file-reader.at:3816"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_150
#AT_START_151
at_fn_group_banner 151 'sys-file.at:4' \
"write and read numeric data" " " 12
at_xfail=no
(
$as_echo "151. $at_setup_line: testing $at_desc ..."
$at_traceon
for variant in 'UNCOMPRESSED $FL2' 'ZCOMPRESSED $FL3'; do
set $variant
compression=$1 magic=$2
cat >sysfile.sps <>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:28"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:29: cat pspp.csv"
at_fn_check_prepare_trace "sys-file.at:29"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
variable001,variable002,variable003,variable004
1.00,1.00,1.00,2.00
1.00,1.00,2.00,30.00
1.00,2.00,1.00,8.00
1.00,2.00,2.00,20.00
2.00,1.00,1.00,2.00
2.00,1.00,2.00,22.00
2.00,2.00,1.00,1.00
2.00,2.00,2.00,3.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:29"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:41: dd if=foo.sav bs=1 count=4; echo"
at_fn_check_prepare_trace "sys-file.at:41"
( $at_check_trace; dd if=foo.sav bs=1 count=4; echo
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo >>"$at_stdout"; $as_echo "$magic
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:41"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_151
#AT_START_152
at_fn_group_banner 152 'sys-file.at:46' \
"write and read long string value labels and missing values" "" 12
at_xfail=no
(
$as_echo "152. $at_setup_line: testing $at_desc ..."
$at_traceon
for variant in 'UNCOMPRESSED $FL2' 'ZCOMPRESSED $FL3'; do
set $variant
compression=$1 magic=$2
cat >sysfile.sps <>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:74"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:75: cat pspp.csv"
at_fn_check_prepare_trace "sys-file.at:75"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
s1,\"Format: A9
Missing Values: \"\"0 \"\"
Value,Label
abc ,First value label
abcdefgh ,Second value label
abcdefghi,Third value label\",1
s2,\"Format: A9
Missing Values: \"\"12 \"\"; \"\"123 \"\"
Value,Label
0 ,Fourth value label
01234567 ,Fifth value label
012345678,Sixth value label\",2
s3,\"Format: A9
Missing Values: \"\"1234 \"\"; \"\"12345 \"\"; \"\"12345678\"\"\",3
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:75"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:94: dd if=foo.sav bs=1 count=4; echo"
at_fn_check_prepare_trace "sys-file.at:94"
( $at_check_trace; dd if=foo.sav bs=1 count=4; echo
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo >>"$at_stdout"; $as_echo "$magic
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:94"
$at_failed && at_fn_log_failure
$at_traceon; }
done
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_152
#AT_START_153
at_fn_group_banner 153 'sys-file.at:99' \
"write and read compressed files" " " 12
at_xfail=no
(
$as_echo "153. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sysfile.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /x * y (a200).
BEGIN DATA.
1.2 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
. yyyyyyyyyyyyyyy
0 ddddddddddddddddddddddddddddddd
101 z
END DATA.
SAVE OUTFILE='com.sav' /COMPRESS .
GET FILE='com.sav'.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file.at:116: pspp -o pspp.csv sysfile.sps"
at_fn_check_prepare_trace "sys-file.at:116"
( $at_check_trace; pspp -o pspp.csv sysfile.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:116"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:118: dd if=com.sav bs=1 skip=72 count=4 2> /dev/null > com.sav.subset"
at_fn_check_prepare_trace "sys-file.at:118"
( $at_check_trace; dd if=com.sav bs=1 skip=72 count=4 2> /dev/null > com.sav.subset
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:118"
$at_failed && at_fn_log_failure
$at_traceon; }
od com.sav.subset
{ set +x
$as_echo "$at_srcdir/sys-file.at:120: (printf '\\000\\000\\000\\001' | cmp -l com.sav.subset -) ||
(printf '\\001\\000\\000\\000' | cmp -l com.sav.subset -)"
at_fn_check_prepare_notrace 'an embedded newline' "sys-file.at:120"
( $at_check_trace; (printf '\000\000\000\001' | cmp -l com.sav.subset -) ||
(printf '\001\000\000\000' | cmp -l com.sav.subset -)
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:120"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_153
#AT_START_154
at_fn_group_banner 154 'sys-file.at:126' \
"overwriting system file" " " 12
at_xfail=no
(
$as_echo "154. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >output.sav <<'_ATEOF'
abcdef
_ATEOF
cp output.sav output.sav.backup
cat >sysfile.sps <<'_ATEOF'
DATA LIST NOTABLE/x 1.
BEGIN DATA.
5
END DATA.
SAVE OUTFILE='output.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file.at:137: pspp -O format=csv sysfile.sps"
at_fn_check_prepare_trace "sys-file.at:137"
( $at_check_trace; pspp -O format=csv sysfile.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:137"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:138: cmp output.sav output.sav.backup"
at_fn_check_prepare_trace "sys-file.at:138"
( $at_check_trace; cmp output.sav output.sav.backup
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/sys-file.at:138"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_154
#AT_START_155
at_fn_group_banner 155 'sys-file.at:141' \
"overwriting system file atomically" " " 12
at_xfail=no
(
$as_echo "155. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >output.sav <<'_ATEOF'
abcdef
_ATEOF
cp output.sav output.sav.backup
cat >sysfile.sps <<'_ATEOF'
DATA LIST NOTABLE/x 1.
BEGIN DATA.
5
END DATA.
XSAVE OUTFILE='output.sav'.
HOST COMMAND=['kill -TERM $PPID'].
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file.at:153: pspp -O format=csv sysfile.sps"
at_fn_check_prepare_trace "sys-file.at:153"
( $at_check_trace; pspp -O format=csv sysfile.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 143 $at_status "$at_srcdir/sys-file.at:153"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:154: cmp output.sav output.sav.backup"
at_fn_check_prepare_trace "sys-file.at:154"
( $at_check_trace; cmp output.sav output.sav.backup
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:155: for file in *.tmp*; do if test -e \$file; then echo \$file; exit 1; fi; done"
at_fn_check_prepare_dynamic "for file in *.tmp*; do if test -e $file; then echo $file; exit 1; fi; done" "sys-file.at:155"
( $at_check_trace; for file in *.tmp*; do if test -e $file; then echo $file; exit 1; fi; done
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:155"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_155
#AT_START_156
at_fn_group_banner 156 'sys-file.at:160' \
"write to same system file being read" " " 12
at_xfail=no
(
$as_echo "156. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >save.sps <<'_ATEOF'
DATA LIST NOTABLE/x 1.
BEGIN DATA.
3
END DATA.
SAVE OUTFILE='data.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file.at:168: pspp -O format=csv save.sps"
at_fn_check_prepare_trace "sys-file.at:168"
( $at_check_trace; pspp -O format=csv save.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:168"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:169: test -s data.sav"
at_fn_check_prepare_trace "sys-file.at:169"
( $at_check_trace; test -s data.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:169"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:170: for file in *.tmp*; do if test -e \$file; then echo \$file; exit 1; fi; done"
at_fn_check_prepare_dynamic "for file in *.tmp*; do if test -e $file; then echo $file; exit 1; fi; done" "sys-file.at:170"
( $at_check_trace; for file in *.tmp*; do if test -e $file; then echo $file; exit 1; fi; done
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:170"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >save2.sps <<'_ATEOF'
GET FILE='data.sav'.
COMPUTE y = x * 3.
SAVE OUTFILE='data.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file.at:177: pspp -O format=csv save2.sps"
at_fn_check_prepare_trace "sys-file.at:177"
( $at_check_trace; pspp -O format=csv save2.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:177"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:178: for file in *.tmp*; do if test -e \$file; then echo \$file; exit 1; fi; done"
at_fn_check_prepare_dynamic "for file in *.tmp*; do if test -e $file; then echo $file; exit 1; fi; done" "sys-file.at:178"
( $at_check_trace; for file in *.tmp*; do if test -e $file; then echo $file; exit 1; fi; done
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:178"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >save3.sps <<'_ATEOF'
GET FILE='data.sav'.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file.at:184: pspp -O format=csv save3.sps"
at_fn_check_prepare_trace "sys-file.at:184"
( $at_check_trace; pspp -O format=csv save3.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
x,y
3,9.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:184"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_156
#AT_START_157
at_fn_group_banner 157 'sys-file.at:191' \
"nonempty case_map doesn't crash" " " 12
at_xfail=no
(
$as_echo "157. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >save.sps <<'_ATEOF'
INPUT PROGRAM.
COMPUTE #I = 1.
COMPUTE X = #I + 1.
END CASE.
END FILE.
END INPUT PROGRAM.
SAVE OUTFILE='tiny.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file.at:203: pspp -O format=csv save.sps"
at_fn_check_prepare_trace "sys-file.at:203"
( $at_check_trace; pspp -O format=csv save.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:203"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >get.sps <<'_ATEOF'
GET FILE='tiny.sav'.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file.at:208: pspp -O format=csv get.sps"
at_fn_check_prepare_trace "sys-file.at:208"
( $at_check_trace; pspp -O format=csv get.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
X
2.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:208"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_157
#AT_START_158
at_fn_group_banner 158 'sys-file.at:217' \
"system files with -1 case_size" " " 12
at_xfail=no
(
$as_echo "158. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >save.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /cont (A32) size pop count.
VAR LABEL
cont 'continents of the world'
size 'sq km'
pop 'population'
count 'number of countries'.
SAVE OUTFILE='cont.sav'.
BEGIN DATA.
Asia, 44579000, 3.7E+009, 44.00
Africa, 30065000, 7.8E+008, 53.00
"North America", 24256000, 4.8E+008, 23.00
"South America", 17819000, 3.4E+008, 12.00
Antarctica, 13209000, .00, .00
Europe, 9938000, 7.3E+008, 46.00
Australia/Oceania, 7687000, 31000000, 14.00
END DATA.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file.at:237: pspp -O format=csv save.sps"
at_fn_check_prepare_trace "sys-file.at:237"
( $at_check_trace; pspp -O format=csv save.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:237"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:238: test -f cont.sav"
at_fn_check_prepare_trace "sys-file.at:238"
( $at_check_trace; test -f cont.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:238"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:242: (dd if=cont.sav bs=1 count=68;
printf '\\377\\377\\377\\377';
dd if=cont.sav bs=1 skip=72) > cont2.sav"
at_fn_check_prepare_notrace 'an embedded newline' "sys-file.at:242"
( $at_check_trace; (dd if=cont.sav bs=1 count=68;
printf '\377\377\377\377';
dd if=cont.sav bs=1 skip=72) > cont2.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:242"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:246: cmp cont.sav cont2.sav"
at_fn_check_prepare_trace "sys-file.at:246"
( $at_check_trace; cmp cont.sav cont2.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "cont.sav cont2.sav differ: char 69, line 1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file.at:246"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >get.sps <<'_ATEOF'
GET FILE='cont2.sav'.
DISPLAY LABELS.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file.at:255: pspp -o pspp.csv get.sps"
at_fn_check_prepare_trace "sys-file.at:255"
( $at_check_trace; pspp -o pspp.csv get.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:255"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:256: cat pspp.csv"
at_fn_check_prepare_trace "sys-file.at:256"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Label,Position
cont,continents of the world,1
size,sq km,2
pop,population,3
count,number of countries,4
Table: Data List
cont,size,pop,count
Asia ,44579000,3.7E+009,44.00
Africa ,30065000,7.8E+008,53.00
North America ,24256000,4.8E+008,23.00
South America ,17819000,3.4E+008,12.00
Antarctica ,13209000,.00,.00
Europe ,9938000,7.3E+008,46.00
Australia/Oceania ,7687000,31000000,14.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:256"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_158
#AT_START_159
at_fn_group_banner 159 'sys-file.at:275' \
"write v2 system file" " " 12
at_xfail=no
(
$as_echo "159. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sysfile.sps <<'_ATEOF'
DATA LIST LIST NOTABLE / X * variable001 * variable002 * variable003 * .
BEGIN DATA.
1.00 1.00 1.0 2.00
1.00 1.00 2.0 30.00
1.00 2.00 1.0 8.00
1.00 2.00 2.0 20.00
2.00 1.00 1.0 2.00
2.00 1.00 2.0 22.00
2.00 2.00 1.0 1.00
2.00 2.00 2.0 3.00
END DATA.
SAVE /OUTFILE='foo.sav'
/VERSION=2
.
GET /FILE='foo.sav'.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file.at:298: pspp -O format=csv sysfile.sps"
at_fn_check_prepare_trace "sys-file.at:298"
( $at_check_trace; pspp -O format=csv sysfile.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
x,variable,variab_a,variab_b
1.00,1.00,1.00,2.00
1.00,1.00,2.00,30.00
1.00,2.00,1.00,8.00
1.00,2.00,2.00,20.00
2.00,1.00,1.00,2.00
2.00,1.00,2.00,22.00
2.00,2.00,1.00,1.00
2.00,2.00,2.00,3.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:298"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:311: grep 'X=X' foo.sav"
at_fn_check_prepare_trace "sys-file.at:311"
( $at_check_trace; grep 'X=X' foo.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/sys-file.at:311"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_159
#AT_START_160
at_fn_group_banner 160 'sys-file.at:316' \
"read very long strings written by SPSS 13" " " 13
at_xfail=no
(
$as_echo "160. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sys-file.at:317: cp \$top_srcdir/tests/data/v13.sav ."
at_fn_check_prepare_dynamic "cp $top_srcdir/tests/data/v13.sav ." "sys-file.at:317"
( $at_check_trace; cp $top_srcdir/tests/data/v13.sav .
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:317"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='v13.sav' ENCODING='utf-8'.
DISPLAY VARIABLES.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file.at:323: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file.at:323"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:323"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:324: cat pspp.csv"
at_fn_check_prepare_trace "sys-file.at:324"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
N,\"Format: F8.2
Display Width: 10\",1
A255,\"Format: A255
Display Width: 32\",2
A258,\"Format: A258
Display Width: 32\",3
A2000,\"Format: A2000
Display Width: 32\",4
Table: Data List
N,A255,A258,A2000
1.00,a1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA,b1BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB,c1CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
2.00,a2XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX,b2YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY,c2ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:324"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_160
#AT_START_161
at_fn_group_banner 161 'sys-file.at:342' \
"read very long strings written by SPSS 14" " " 13
at_xfail=no
(
$as_echo "161. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sys-file.at:343: cp \$top_srcdir/tests/data/v14.sav ."
at_fn_check_prepare_dynamic "cp $top_srcdir/tests/data/v14.sav ." "sys-file.at:343"
( $at_check_trace; cp $top_srcdir/tests/data/v14.sav .
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:343"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sys-file.sps <<'_ATEOF'
GET FILE='v14.sav' ENCODING='utf-8'.
DISPLAY VARIABLES.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file.at:349: pspp -o pspp.csv sys-file.sps"
at_fn_check_prepare_trace "sys-file.at:349"
( $at_check_trace; pspp -o pspp.csv sys-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:349"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:350: cat pspp.csv"
at_fn_check_prepare_trace "sys-file.at:350"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
vl255,\"Format: A255
Display Width: 26\",1
vl256,\"Format: A256
Display Width: 26\",2
vl1335,\"Format: A1335
Display Width: 26\",3
vl2000,\"Format: A2000
Display Width: 26\",4
Table: Data List
vl255,vl256,vl1335,vl2000
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM,MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM,MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM,MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:350"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_161
#AT_START_162
at_fn_group_banner 162 'sys-file.at:411' \
"save very long string -- uncompressed" " " 13
at_xfail=no
(
$as_echo "162. $at_setup_line: testing $at_desc ..."
$at_traceon
vls_gen_data
cat >save.sps <<'_ATEOF'
DATA LIST FIXED NOTABLE FILE='data.txt'
/a 2-11 (a)
b (a256)
c (a200)
d (a32767).
SAVE OUTFILE='foo.sav' /UNCOMPRESSED.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file.at:411: pspp -O format=csv save.sps"
at_fn_check_prepare_trace "sys-file.at:411"
( $at_check_trace; pspp -O format=csv save.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:411"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >get.sps <<'_ATEOF'
GET FILE='foo.sav'.
DISPLAY VARIABLES.
PRINT OUTFILE='out.txt'
/a (a10) b (a256) c (a200)
d (a32767)
.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file.at:411: pspp -o pspp.csv get.sps"
at_fn_check_prepare_trace "sys-file.at:411"
( $at_check_trace; pspp -o pspp.csv get.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:411"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:411: cat pspp.csv"
at_fn_check_prepare_trace "sys-file.at:411"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
a,Format: A10,1
b,Format: A256,2
c,Format: A200,3
d,Format: A32767,4
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:411"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_162
#AT_START_163
at_fn_group_banner 163 'sys-file.at:412' \
"save very long string -- compressed" " " 13
at_xfail=no
(
$as_echo "163. $at_setup_line: testing $at_desc ..."
$at_traceon
vls_gen_data
cat >save.sps <<'_ATEOF'
DATA LIST FIXED NOTABLE FILE='data.txt'
/a 2-11 (a)
b (a256)
c (a200)
d (a32767).
SAVE OUTFILE='foo.sav' /COMPRESSED.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file.at:412: pspp -O format=csv save.sps"
at_fn_check_prepare_trace "sys-file.at:412"
( $at_check_trace; pspp -O format=csv save.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:412"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >get.sps <<'_ATEOF'
GET FILE='foo.sav'.
DISPLAY VARIABLES.
PRINT OUTFILE='out.txt'
/a (a10) b (a256) c (a200)
d (a32767)
.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file.at:412: pspp -o pspp.csv get.sps"
at_fn_check_prepare_trace "sys-file.at:412"
( $at_check_trace; pspp -o pspp.csv get.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:412"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:412: cat pspp.csv"
at_fn_check_prepare_trace "sys-file.at:412"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
a,Format: A10,1
b,Format: A256,2
c,Format: A200,3
d,Format: A32767,4
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:412"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_163
#AT_START_164
at_fn_group_banner 164 'sys-file.at:417' \
"system file character encoding" " " 13
at_xfail=no
(
$as_echo "164. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sys-file.at:418: i18n-test supports_encodings windows-1252"
at_fn_check_prepare_trace "sys-file.at:418"
( $at_check_trace; i18n-test supports_encodings windows-1252
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:418"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >save.sps <<'_ATEOF'
SET LOCALE='windows-1252'.
DATA LIST LIST NOTABLE /àéîöçxyzabc * roué (A9) croûton (A1000).
FILE LABEL 'clientèle confrère cortège crèche'.
DOCUMENT coördinate smörgåsbord
épée séance soufflé soirée
jalapeño vicuña.
VALUE LABEL
/àéîöçxyzabc 1 'éclair élan'
/roué 'abcdefghi' 'sauté précis'.
VARIABLE LABEL
roué 'Provençal soupçon'.
DATAFILE ATTRIBUTE
ATTRIBUTE=Furtwängler('kindergärtner').
VARIABLE ATTRIBUTE
VARIABLES=àéîöçxyzabc
ATTRIBUTE=Atatürk('Düsseldorf Gewürztraminer').
BEGIN DATA.
1 a x
2 b y
3 c z
END DATA.
SAVE OUTFILE='foo.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file.at:443: pspp -O format=csv save.sps"
at_fn_check_prepare_trace "sys-file.at:443"
( $at_check_trace; pspp -O format=csv save.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:443"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >get.sps <<'_ATEOF'
GET FILE='foo.sav'.
DISPLAY FILE LABEL.
DISPLAY DOCUMENTS.
DISPLAY DICTIONARY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file.at:450: pspp -o pspp.csv get.sps"
at_fn_check_prepare_trace "sys-file.at:450"
( $at_check_trace; pspp -o pspp.csv get.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:450"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file.at:451: sed 's/(Entered [^)]*)/(Entered )/' pspp.csv"
at_fn_check_prepare_trace "sys-file.at:451"
( $at_check_trace; sed 's/(Entered [^)]*)/(Entered )/' pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "File label: clientèle confrère cortège crèche
Documents in the active dataset:
DOCUMENT coördinate smörgåsbord
épée séance soufflé soirée
jalapeño vicuña.
(Entered )
Variable,Description,Position
àéîöçxyzabc,\"Format: F8.2
Value,Label
1.00,éclair élan
Attribute,Value
Atatürk,Düsseldorf Gewürztraminer\",1
roué,\"Label: Provençal soupçon
Format: A9
Value,Label
abcdefghi,sauté précis\",2
croûton,Format: A1000,3
Table: Custom data file attributes.
Attribute,Value
Furtwängler,kindergärtner
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file.at:451"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_164
#AT_START_165
at_fn_group_banner 165 'sys-file-encryption.at:3' \
"decrypt an encrypted system file" " " 14
at_xfail=no
(
$as_echo "165. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sys-file-encryption.at:5: pspp-convert \$srcdir/data/hotel-encrypted.sav hotel.sav -p pspp"
at_fn_check_prepare_dynamic "pspp-convert $srcdir/data/hotel-encrypted.sav hotel.sav -p pspp" "sys-file-encryption.at:5"
( $at_check_trace; pspp-convert $srcdir/data/hotel-encrypted.sav hotel.sav -p pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-encryption.at:5"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-encryption.at:6: pspp-convert hotel.sav hotel.csv"
at_fn_check_prepare_trace "sys-file-encryption.at:6"
( $at_check_trace; pspp-convert hotel.sav hotel.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-encryption.at:6"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-encryption.at:7: cat hotel.csv"
at_fn_check_prepare_trace "sys-file-encryption.at:7"
( $at_check_trace; cat hotel.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "v1,v2,v3,v4,v5
4,2,3,4,1
1,1,3,1,1
5,2,2,3,4
3,1,3,1,2
5,3,1,5,3
1,2,5,4,2
3,2,4,3,1
1,4,5,2,1
3,2,3,1,2
2,5,4,2,1
4,2,2,3,5
2,1,4,1,1
1,2,5,5,2
2,3,3,3,1
4,1,1,1,3
1,1,5,1,2
2,5,5,2,2
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-encryption.at:7"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_165
#AT_START_166
at_fn_group_banner 166 'command.at:4' \
"command parser crash bug" " " 15
at_xfail=no
(
$as_echo "166. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >command.sps <<'_ATEOF'
DATA rubbish.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/command.at:9: pspp -O format=csv command.sps"
at_fn_check_prepare_trace "command.at:9"
( $at_check_trace; pspp -O format=csv command.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "command.sps:1: error: Unknown command \`DATA rubbish'.
command.sps:2: error: EXECUTE: EXECUTE is allowed only after the active dataset has been defined.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/command.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_166
#AT_START_167
at_fn_group_banner 167 'command.at:20' \
"FINISH executes immediately" " " 15
at_xfail=no
(
$as_echo "167. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/command.at:21: (echo \"FINISH.\"; while :; do echo; done) | pspp"
at_fn_check_prepare_notrace 'a shell pipeline' "command.at:21"
( $at_check_trace; (echo "FINISH."; while :; do echo; done) | pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/command.at:21"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_167
#AT_START_168
at_fn_group_banner 168 'command.at:26' \
"ERASE -- safer mode" " " 16
at_xfail=no
(
$as_echo "168. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >foobar <<'_ATEOF'
contents
_ATEOF
cat >erase.sps <<'_ATEOF'
set safer on
erase FILE='foobar'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/command.at:34: pspp -O format=csv erase.sps"
at_fn_check_prepare_trace "command.at:34"
( $at_check_trace; pspp -O format=csv erase.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "erase.sps:3: error: ERASE: This command not allowed when the SAFER option is set.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/command.at:34"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/command.at:37: cat foobar"
at_fn_check_prepare_trace "command.at:37"
( $at_check_trace; cat foobar
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "contents
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/command.at:37"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_168
#AT_START_169
at_fn_group_banner 169 'command.at:41' \
"ERASE -- not safer mode" " " 16
at_xfail=no
(
$as_echo "169. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >foobar <<'_ATEOF'
contents
_ATEOF
{ set +x
$as_echo "$at_srcdir/command.at:44: test -e foobar"
at_fn_check_prepare_trace "command.at:44"
( $at_check_trace; test -e foobar
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/command.at:44"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >erase.sps <<'_ATEOF'
erase FILE='foobar'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/command.at:48: pspp -O format=csv erase.sps"
at_fn_check_prepare_trace "command.at:48"
( $at_check_trace; pspp -O format=csv erase.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/command.at:48"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/command.at:49: test ! -e foobar"
at_fn_check_prepare_trace "command.at:49"
( $at_check_trace; test ! -e foobar
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/command.at:49"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_169
#AT_START_170
at_fn_group_banner 170 'command.at:54' \
"N OF CASES" " " 17
at_xfail=no
(
$as_echo "170. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >n-of-cases.sps <<'_ATEOF'
INPUT PROGRAM.
LOOP #i = 1 TO 100.
COMPUTE x=#i.
END CASE.
END LOOP.
END FILE.
END INPUT PROGRAM.
N OF CASES 15.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/command.at:68: pspp -O format=csv n-of-cases.sps"
at_fn_check_prepare_trace "command.at:68"
( $at_check_trace; pspp -O format=csv n-of-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
x
1.00
2.00
3.00
4.00
5.00
6.00
7.00
8.00
9.00
10.00
11.00
12.00
13.00
14.00
15.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/command.at:68"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_170
#AT_START_171
at_fn_group_banner 171 'command.at:93' \
"COMMENT at end of file" " " 18
at_xfail=no
(
$as_echo "171. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >comment.sps <<'_ATEOF'
COMMENT this is a comment at end of file.
_ATEOF
{ set +x
$as_echo "$at_srcdir/command.at:97: pspp -O format=csv comment.sps"
at_fn_check_prepare_trace "command.at:97"
( $at_check_trace; pspp -O format=csv comment.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/command.at:97"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_171
#AT_START_172
at_fn_group_banner 172 'do-if.at:3' \
"DO IF" " " 19
at_xfail=no
(
$as_echo "172. $at_setup_line: testing $at_desc ..."
$at_traceon
(for a in 0 1 ' '; do
for b in 0 1 ' '; do
for c in 0 1 ' '; do
for d in 0 1 ' '; do
abcd=$a$b$c$d
echo "$abcd" 1>&3
if test "$a" = "1"; then
echo " $abcd A"
elif test "$a" = " "; then
:
elif test "$b" = "1"; then
echo " $abcd B"
elif test "$b" = " "; then
:
elif test "$c" = "1"; then
echo " $abcd C"
elif test "$c" = " "; then
:
elif test "$d" = "1"; then
echo " $abcd D"
elif test "$d" = " "; then
:
else
echo " $abcd E"
fi
done
done
done
done) >expout 3>do-if.txt || exit 99
cat >do-if.sps <<'_ATEOF'
DATA LIST FILE="do-if.txt"/A B C D 1-4 ABCD 1-4 (A).
DO IF A.
PRINT OUTFILE="do-if.out"/ABCD 'A'.
ELSE IF B.
PRINT OUTFILE="do-if.out"/ABCD 'B'.
ELSE IF C.
PRINT OUTFILE="do-if.out"/ABCD 'C'.
ELSE IF D.
PRINT OUTFILE="do-if.out"/ABCD 'D'.
ELSE.
PRINT OUTFILE="do-if.out"/ABCD 'E'.
END IF.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/do-if.at:48: pspp do-if.sps"
at_fn_check_prepare_trace "do-if.at:48"
( $at_check_trace; pspp do-if.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/do-if.at:48"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/do-if.at:49: cat do-if.out"
at_fn_check_prepare_trace "do-if.at:49"
( $at_check_trace; cat do-if.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/do-if.at:49"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_172
#AT_START_173
at_fn_group_banner 173 'do-if.at:52' \
"unpaired END IF crash" " " 19
at_xfail=no
(
$as_echo "173. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >do-if.sps <<'_ATEOF'
DATA LIST LIST NOTABLE/a b c.
END IF.
_ATEOF
{ set +x
$as_echo "$at_srcdir/do-if.at:57: pspp -O format=csv do-if.sps"
at_fn_check_prepare_trace "do-if.at:57"
( $at_check_trace; pspp -O format=csv do-if.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "do-if.sps:2: error: END IF: This command cannot appear outside DO IF...END IF.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/do-if.at:57"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_173
#AT_START_174
at_fn_group_banner 174 'do-repeat.at:3' \
"DO REPEAT -- simple" " " 20
at_xfail=no
(
$as_echo "174. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >do-repeat.sps <<'_ATEOF'
INPUT PROGRAM.
STRING y(A1).
DO REPEAT xval = 1 2 3 / yval = 'a' 'b' 'c' / var = a b c.
COMPUTE x=xval.
COMPUTE y=yval.
COMPUTE var=xval.
END CASE.
END REPEAT.
END FILE.
END INPUT PROGRAM.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/do-repeat.at:17: pspp -o pspp.csv do-repeat.sps"
at_fn_check_prepare_trace "do-repeat.at:17"
( $at_check_trace; pspp -o pspp.csv do-repeat.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/do-repeat.at:17"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/do-repeat.at:18: cat pspp.csv"
at_fn_check_prepare_trace "do-repeat.at:18"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
y,x,a,b,c
a,1.00,1.00,. ,.
b,2.00,. ,2.00,.
c,3.00,. ,. ,3.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/do-repeat.at:18"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_174
#AT_START_175
at_fn_group_banner 175 'do-repeat.at:27' \
"DO REPEAT -- containing BEGIN DATA" " " 20
at_xfail=no
(
$as_echo "175. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >do-repeat.sps <<'_ATEOF'
DO REPEAT offset = 1 2 3.
DATA LIST NOTABLE /x 1-2.
BEGIN DATA.
10
20
30
END DATA.
COMPUTE x = x + offset.
LIST.
END REPEAT.
_ATEOF
{ set +x
$as_echo "$at_srcdir/do-repeat.at:40: pspp -o pspp.csv do-repeat.sps"
at_fn_check_prepare_trace "do-repeat.at:40"
( $at_check_trace; pspp -o pspp.csv do-repeat.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/do-repeat.at:40"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/do-repeat.at:41: cat pspp.csv"
at_fn_check_prepare_trace "do-repeat.at:41"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
x
11
21
31
Table: Data List
x
12
22
32
Table: Data List
x
13
23
33
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/do-repeat.at:41"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_175
#AT_START_176
at_fn_group_banner 176 'do-repeat.at:62' \
"DO REPEAT -- dummy vars not expanded in include files" "" 20
at_xfail=no
(
$as_echo "176. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >include.sps <<'_ATEOF'
COMPUTE y = y + x + 10.
_ATEOF
cat >do-repeat.sps <<'_ATEOF'
INPUT PROGRAM.
COMPUTE x = 0.
COMPUTE y = 0.
END CASE.
END FILE.
END INPUT PROGRAM.
DO REPEAT x = 1 2 3.
INCLUDE 'include.sps'.
END REPEAT.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/do-repeat.at:80: pspp -o pspp.csv do-repeat.sps"
at_fn_check_prepare_trace "do-repeat.at:80"
( $at_check_trace; pspp -o pspp.csv do-repeat.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "do-repeat.sps:8: warning: DO REPEAT: Dummy variable name \`x' hides dictionary variable \`x'.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/do-repeat.at:80"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/do-repeat.at:83: cat pspp.csv"
at_fn_check_prepare_trace "do-repeat.at:83"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "do-repeat.sps:8: warning: DO REPEAT: Dummy variable name \`x' hides dictionary variable \`x'.
Table: Data List
x,y
.00,30.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/do-repeat.at:83"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_176
#AT_START_177
at_fn_group_banner 177 'do-repeat.at:92' \
"DO REPEAT -- nested" " " 20
at_xfail=no
(
$as_echo "177. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >do-repeat.sps <<'_ATEOF'
DATA LIST NOTABLE /a 1.
BEGIN DATA.
0
END DATA.
DO REPEAT h = h0 TO h3 / x = 0 TO 3 / y = 8, 7.5, 6, 5.
COMPUTE h = x + y.
END REPEAT.
VECTOR v(6).
COMPUTE #idx = 0.
DO REPEAT i = 1 TO 2.
DO REPEAT j = 3 TO 5.
COMPUTE #x = i + j.
COMPUTE #idx = #idx + 1.
COMPUTE v(#idx) = #x.
END REPEAT.
END REPEAT.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/do-repeat.at:115: pspp -o pspp.csv do-repeat.sps"
at_fn_check_prepare_trace "do-repeat.at:115"
( $at_check_trace; pspp -o pspp.csv do-repeat.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/do-repeat.at:115"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/do-repeat.at:116: cat pspp.csv"
at_fn_check_prepare_trace "do-repeat.at:116"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
a,h0,h1,h2,h3,v1,v2,v3,v4,v5,v6
0,8.00,8.50,8.00,8.00,4.00,5.00,6.00,5.00,6.00,7.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/do-repeat.at:116"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_177
#AT_START_178
at_fn_group_banner 178 'do-repeat.at:125' \
"DO REPEAT -- empty" " " 20
at_xfail=no
(
$as_echo "178. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >do-repeat.sps <<'_ATEOF'
DATA LIST NOTABLE /a 1.
BEGIN DATA.
0
END DATA.
DO REPEAT h = a.
END REPEAT.
_ATEOF
{ set +x
$as_echo "$at_srcdir/do-repeat.at:135: pspp -o pspp.csv do-repeat.sps"
at_fn_check_prepare_trace "do-repeat.at:135"
( $at_check_trace; pspp -o pspp.csv do-repeat.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/do-repeat.at:135"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/do-repeat.at:136: cat pspp.csv"
at_fn_check_prepare_trace "do-repeat.at:136"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/do-repeat.at:136"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_178
#AT_START_179
at_fn_group_banner 179 'do-repeat.at:142' \
"DO REPEAT -- missing END REPEAT" " " 20
at_xfail=no
(
$as_echo "179. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >do-repeat.sps <<'_ATEOF'
DATA LIST NOTABLE /x 1.
DO REPEAT y = 1 TO 10.
_ATEOF
{ set +x
$as_echo "$at_srcdir/do-repeat.at:147: pspp -O format=csv do-repeat.sps"
at_fn_check_prepare_trace "do-repeat.at:147"
( $at_check_trace; pspp -O format=csv do-repeat.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: DO REPEAT: Syntax error at end of input: expecting END.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/do-repeat.at:147"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_179
#AT_START_180
at_fn_group_banner 180 'loop.at:13' \
"LOOP with index" " " 21
at_xfail=no
(
$as_echo "180. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >loop.sps <<'_ATEOF'
data list notable /x 1 y 2 z 3.
begin data.
121
252
393
404
end data.
loop #i=x to y by z.
print /#i.
end loop.
print/'--------'.
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/loop.at:22: pspp -o pspp.csv loop.sps"
at_fn_check_prepare_trace "loop.at:22"
( $at_check_trace; pspp -o pspp.csv loop.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/loop.at:22"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/loop.at:23: cat pspp.csv"
at_fn_check_prepare_trace "loop.at:23"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1.00
2.00
--------
2.00
4.00
--------
3.00
6.00
9.00
--------
--------
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/loop.at:23"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_180
#AT_START_181
at_fn_group_banner 181 'loop.at:48' \
"LOOP with IF condition" " " 21
at_xfail=no
(
$as_echo "181. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >loop.sps <<'_ATEOF'
data list notable /x 1 y 2 z 3.
begin data.
121
252
393
404
end data.
compute #j=x.
loop if #j <= y.
print /#j.
compute #j = #j + z.
end loop.
print/'--------'.
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/loop.at:59: pspp -o pspp.csv loop.sps"
at_fn_check_prepare_trace "loop.at:59"
( $at_check_trace; pspp -o pspp.csv loop.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/loop.at:59"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/loop.at:60: cat pspp.csv"
at_fn_check_prepare_trace "loop.at:60"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1.00
2.00
--------
2.00
4.00
--------
3.00
6.00
9.00
--------
--------
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/loop.at:60"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_181
#AT_START_182
at_fn_group_banner 182 'loop.at:85' \
"LOOP with END IF condition" " " 21
at_xfail=no
(
$as_echo "182. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >loop.sps <<'_ATEOF'
data list notable /x 1 y 2 z 3.
begin data.
121
252
393
404
end data.
compute #k=x.
loop.
print /#k.
compute #k = #k + z.
end loop if #k > y.
print/'--------'.
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/loop.at:96: pspp -o pspp.csv loop.sps"
at_fn_check_prepare_trace "loop.at:96"
( $at_check_trace; pspp -o pspp.csv loop.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/loop.at:96"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/loop.at:97: cat pspp.csv"
at_fn_check_prepare_trace "loop.at:97"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1.00
2.00
--------
2.00
4.00
--------
3.00
6.00
9.00
--------
4.00
--------
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/loop.at:97"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_182
#AT_START_183
at_fn_group_banner 183 'loop.at:124' \
"LOOP with index and IF based on index" " " 21
at_xfail=no
(
$as_echo "183. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >loop.sps <<'_ATEOF'
data list notable /x 1 y 2 z 3.
begin data.
121
252
393
404
end data.
loop #m=x to y by z if #m < 4.
print /#m.
end loop.
print/'--------'.
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/loop.at:133: pspp -o pspp.csv loop.sps"
at_fn_check_prepare_trace "loop.at:133"
( $at_check_trace; pspp -o pspp.csv loop.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/loop.at:133"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/loop.at:134: cat pspp.csv"
at_fn_check_prepare_trace "loop.at:134"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1.00
2.00
--------
2.00
--------
3.00
--------
--------
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/loop.at:134"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_183
#AT_START_184
at_fn_group_banner 184 'loop.at:153' \
"LOOP with index and END IF based on index" " " 21
at_xfail=no
(
$as_echo "184. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >loop.sps <<'_ATEOF'
data list notable /x 1 y 2 z 3.
begin data.
121
252
393
404
end data.
loop #n=x to y by z.
print /#n.
end loop if #n >= 4.
print/'--------'.
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/loop.at:162: pspp -o pspp.csv loop.sps"
at_fn_check_prepare_trace "loop.at:162"
( $at_check_trace; pspp -o pspp.csv loop.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/loop.at:162"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/loop.at:163: cat pspp.csv"
at_fn_check_prepare_trace "loop.at:163"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1.00
2.00
--------
2.00
4.00
--------
3.00
6.00
--------
--------
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/loop.at:163"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_184
#AT_START_185
at_fn_group_banner 185 'loop.at:186' \
"LOOP with index and IF and END IF based on index" "" 21
at_xfail=no
(
$as_echo "185. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >loop.sps <<'_ATEOF'
data list notable /x 1 y 2 z 3.
begin data.
121
252
393
404
end data.
loop #o=x to y by z if mod(#o,2) = 0.
print /#o.
end loop if #o >= 4.
print/'--------'.
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/loop.at:195: pspp -o pspp.csv loop.sps"
at_fn_check_prepare_trace "loop.at:195"
( $at_check_trace; pspp -o pspp.csv loop.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/loop.at:195"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/loop.at:196: cat pspp.csv"
at_fn_check_prepare_trace "loop.at:196"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "--------
2.00
4.00
--------
--------
--------
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/loop.at:196"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_185
#AT_START_186
at_fn_group_banner 186 'loop.at:211' \
"LOOP with no conditions containing BREAK" " " 21
at_xfail=no
(
$as_echo "186. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >loop.sps <<'_ATEOF'
data list notable /x 1 y 2 z 3.
begin data.
121
252
393
404
end data.
compute #p = x.
loop.
print /#p.
compute #p = #p + z.
do if #p >= y.
break.
end if.
end loop.
print/'--------'.
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/loop.at:225: pspp -o pspp.csv loop.sps"
at_fn_check_prepare_trace "loop.at:225"
( $at_check_trace; pspp -o pspp.csv loop.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/loop.at:225"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/loop.at:226: cat pspp.csv"
at_fn_check_prepare_trace "loop.at:226"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1.00
--------
2.00
4.00
--------
3.00
6.00
--------
4.00
--------
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/loop.at:226"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_186
#AT_START_187
at_fn_group_banner 187 'loop.at:249' \
"LOOP with no conditions that ends due to MXLOOPS" "" 21
at_xfail=no
(
$as_echo "187. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >loop.sps <<'_ATEOF'
data list notable /x 1 y 2 z 3.
begin data.
121
252
393
404
end data.
set mxloops=2.
loop.
compute #p = #p + 1.
print /x #p.
end loop.
print/'--------'.
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/loop.at:260: pspp -o pspp.csv loop.sps"
at_fn_check_prepare_trace "loop.at:260"
( $at_check_trace; pspp -o pspp.csv loop.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/loop.at:260"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/loop.at:261: cat pspp.csv"
at_fn_check_prepare_trace "loop.at:261"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1 1.00
1 2.00
--------
2 3.00
2 4.00
--------
3 5.00
3 6.00
--------
4 7.00
4 8.00
--------
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/loop.at:261"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_187
#AT_START_188
at_fn_group_banner 188 'temporary.at:4' \
"TEMPORARY as first transformation" " " 22
at_xfail=no
(
$as_echo "188. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >temporary.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /X *.
BEGIN DATA.
1
2
3
4
5
6
7
8
9
END DATA.
TEMPORARY.
SELECT IF x > 5 .
LIST.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/temporary.at:25: pspp -o pspp.csv temporary.sps"
at_fn_check_prepare_trace "temporary.at:25"
( $at_check_trace; pspp -o pspp.csv temporary.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/temporary.at:25"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/temporary.at:26: cat pspp.csv"
at_fn_check_prepare_trace "temporary.at:26"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
X
6.00
7.00
8.00
9.00
Table: Data List
X
1.00
2.00
3.00
4.00
5.00
6.00
7.00
8.00
9.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/temporary.at:26"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_188
#AT_START_189
at_fn_group_banner 189 'add-files.at:105' \
"ADD FILES -- interleave sav with sav" " " 23
at_xfail=no
(
$as_echo "189. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >a.data <<'_ATEOF'
1aB
8aM
3aE
5aG
0aA
5aH
6aI
7aJ
2aD
7aK
1aC
7aL
4aF
_ATEOF
cat >b.data <<'_ATEOF'
1bN
3bO
4bP
6bQ
7bR
9bS
_ATEOF
cat >save-a.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='a.data' /a b c 1-3 (A).
SAVE OUTFILE='a.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/add-files.at:105: pspp -O format=csv save-a.sps"
at_fn_check_prepare_trace "add-files.at:105"
( $at_check_trace; pspp -O format=csv save-a.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/add-files.at:105"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >save-b.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='b.data' /a b c 1-3 (A).
SAVE OUTFILE='b.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/add-files.at:105: pspp -O format=csv save-b.sps"
at_fn_check_prepare_trace "add-files.at:105"
( $at_check_trace; pspp -O format=csv save-b.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/add-files.at:105"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >add-files.sps <<'_ATEOF'
ADD FILES
FILE='a.sav' /IN=InA /SORT
FILE='b.sav' /IN=InB /RENAME c=d
/BY a /FIRST=first /LAST=last.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/add-files.at:105: pspp -O format=csv add-files.sps"
at_fn_check_prepare_trace "add-files.at:105"
( $at_check_trace; pspp -O format=csv add-files.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
a,b,c,d,InA,InB,first,last
0,a,A,,1,0,1,1
1,a,B,,1,0,1,0
1,a,C,,1,0,0,0
1,b,,N,0,1,0,1
2,a,D,,1,0,1,1
3,a,E,,1,0,1,0
3,b,,O,0,1,0,1
4,a,F,,1,0,1,0
4,b,,P,0,1,0,1
5,a,G,,1,0,1,0
5,a,H,,1,0,0,1
6,a,I,,1,0,1,0
6,b,,Q,0,1,0,1
7,a,J,,1,0,1,0
7,a,K,,1,0,0,0
7,a,L,,1,0,0,0
7,b,,R,0,1,0,1
8,a,M,,1,0,1,1
9,b,,S,0,1,1,1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/add-files.at:105"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_189
#AT_START_190
at_fn_group_banner 190 'add-files.at:106' \
"ADD FILES -- interleave sav with inline" " " 23
at_xfail=no
(
$as_echo "190. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >a.data <<'_ATEOF'
1aB
8aM
3aE
5aG
0aA
5aH
6aI
7aJ
2aD
7aK
1aC
7aL
4aF
_ATEOF
cat >b.data <<'_ATEOF'
1bN
3bO
4bP
6bQ
7bR
9bS
_ATEOF
cat >save-a.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='a.data' /a b c 1-3 (A).
SAVE OUTFILE='a.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/add-files.at:106: pspp -O format=csv save-a.sps"
at_fn_check_prepare_trace "add-files.at:106"
( $at_check_trace; pspp -O format=csv save-a.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/add-files.at:106"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >add-files.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='b.data' /a b c 1-3 (A).
ADD FILES
FILE='a.sav' /IN=InA /SORT
FILE=* /IN=InB /RENAME c=d
/BY a /FIRST=first /LAST=last.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/add-files.at:106: pspp -O format=csv add-files.sps"
at_fn_check_prepare_trace "add-files.at:106"
( $at_check_trace; pspp -O format=csv add-files.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
a,b,c,d,InA,InB,first,last
0,a,A,,1,0,1,1
1,a,B,,1,0,1,0
1,a,C,,1,0,0,0
1,b,,N,0,1,0,1
2,a,D,,1,0,1,1
3,a,E,,1,0,1,0
3,b,,O,0,1,0,1
4,a,F,,1,0,1,0
4,b,,P,0,1,0,1
5,a,G,,1,0,1,0
5,a,H,,1,0,0,1
6,a,I,,1,0,1,0
6,b,,Q,0,1,0,1
7,a,J,,1,0,1,0
7,a,K,,1,0,0,0
7,a,L,,1,0,0,0
7,b,,R,0,1,0,1
8,a,M,,1,0,1,1
9,b,,S,0,1,1,1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/add-files.at:106"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_190
#AT_START_191
at_fn_group_banner 191 'add-files.at:107' \
"ADD FILES -- interleave inline with sav" " " 23
at_xfail=no
(
$as_echo "191. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >a.data <<'_ATEOF'
1aB
8aM
3aE
5aG
0aA
5aH
6aI
7aJ
2aD
7aK
1aC
7aL
4aF
_ATEOF
cat >b.data <<'_ATEOF'
1bN
3bO
4bP
6bQ
7bR
9bS
_ATEOF
cat >save-b.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='b.data' /a b c 1-3 (A).
SAVE OUTFILE='b.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/add-files.at:107: pspp -O format=csv save-b.sps"
at_fn_check_prepare_trace "add-files.at:107"
( $at_check_trace; pspp -O format=csv save-b.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/add-files.at:107"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >add-files.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='a.data' /a b c 1-3 (A).
ADD FILES
FILE=* /IN=InA /SORT
FILE='b.sav' /IN=InB /RENAME c=d
/BY a /FIRST=first /LAST=last.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/add-files.at:107: pspp -O format=csv add-files.sps"
at_fn_check_prepare_trace "add-files.at:107"
( $at_check_trace; pspp -O format=csv add-files.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
a,b,c,d,InA,InB,first,last
0,a,A,,1,0,1,1
1,a,B,,1,0,1,0
1,a,C,,1,0,0,0
1,b,,N,0,1,0,1
2,a,D,,1,0,1,1
3,a,E,,1,0,1,0
3,b,,O,0,1,0,1
4,a,F,,1,0,1,0
4,b,,P,0,1,0,1
5,a,G,,1,0,1,0
5,a,H,,1,0,0,1
6,a,I,,1,0,1,0
6,b,,Q,0,1,0,1
7,a,J,,1,0,1,0
7,a,K,,1,0,0,0
7,a,L,,1,0,0,0
7,b,,R,0,1,0,1
8,a,M,,1,0,1,1
9,b,,S,0,1,1,1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/add-files.at:107"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_191
#AT_START_192
at_fn_group_banner 192 'add-files.at:108' \
"ADD FILES -- concatenate sav with sav" " " 23
at_xfail=no
(
$as_echo "192. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >a.data <<'_ATEOF'
1aB
8aM
3aE
5aG
0aA
5aH
6aI
7aJ
2aD
7aK
1aC
7aL
4aF
_ATEOF
cat >b.data <<'_ATEOF'
1bN
3bO
4bP
6bQ
7bR
9bS
_ATEOF
cat >save-a.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='a.data' /a b c 1-3 (A).
SAVE OUTFILE='a.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/add-files.at:108: pspp -O format=csv save-a.sps"
at_fn_check_prepare_trace "add-files.at:108"
( $at_check_trace; pspp -O format=csv save-a.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/add-files.at:108"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >save-b.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='b.data' /a b c 1-3 (A).
SAVE OUTFILE='b.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/add-files.at:108: pspp -O format=csv save-b.sps"
at_fn_check_prepare_trace "add-files.at:108"
( $at_check_trace; pspp -O format=csv save-b.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/add-files.at:108"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >add-files.sps <<'_ATEOF'
ADD FILES
FILE='a.sav' /IN=InA
FILE='b.sav' /IN=InB /RENAME c=d
.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/add-files.at:108: pspp -O format=csv add-files.sps"
at_fn_check_prepare_trace "add-files.at:108"
( $at_check_trace; pspp -O format=csv add-files.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
a,b,c,d,InA,InB
1,a,B,,1,0
8,a,M,,1,0
3,a,E,,1,0
5,a,G,,1,0
0,a,A,,1,0
5,a,H,,1,0
6,a,I,,1,0
7,a,J,,1,0
2,a,D,,1,0
7,a,K,,1,0
1,a,C,,1,0
7,a,L,,1,0
4,a,F,,1,0
1,b,,N,0,1
3,b,,O,0,1
4,b,,P,0,1
6,b,,Q,0,1
7,b,,R,0,1
9,b,,S,0,1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/add-files.at:108"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_192
#AT_START_193
at_fn_group_banner 193 'add-files.at:109' \
"ADD FILES -- concatenate sav with inline" " " 23
at_xfail=no
(
$as_echo "193. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >a.data <<'_ATEOF'
1aB
8aM
3aE
5aG
0aA
5aH
6aI
7aJ
2aD
7aK
1aC
7aL
4aF
_ATEOF
cat >b.data <<'_ATEOF'
1bN
3bO
4bP
6bQ
7bR
9bS
_ATEOF
cat >save-a.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='a.data' /a b c 1-3 (A).
SAVE OUTFILE='a.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/add-files.at:109: pspp -O format=csv save-a.sps"
at_fn_check_prepare_trace "add-files.at:109"
( $at_check_trace; pspp -O format=csv save-a.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/add-files.at:109"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >add-files.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='b.data' /a b c 1-3 (A).
ADD FILES
FILE='a.sav' /IN=InA
FILE=* /IN=InB /RENAME c=d
.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/add-files.at:109: pspp -O format=csv add-files.sps"
at_fn_check_prepare_trace "add-files.at:109"
( $at_check_trace; pspp -O format=csv add-files.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
a,b,c,d,InA,InB
1,a,B,,1,0
8,a,M,,1,0
3,a,E,,1,0
5,a,G,,1,0
0,a,A,,1,0
5,a,H,,1,0
6,a,I,,1,0
7,a,J,,1,0
2,a,D,,1,0
7,a,K,,1,0
1,a,C,,1,0
7,a,L,,1,0
4,a,F,,1,0
1,b,,N,0,1
3,b,,O,0,1
4,b,,P,0,1
6,b,,Q,0,1
7,b,,R,0,1
9,b,,S,0,1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/add-files.at:109"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_193
#AT_START_194
at_fn_group_banner 194 'add-files.at:110' \
"ADD FILES -- concatenate inline with sav" " " 23
at_xfail=no
(
$as_echo "194. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >a.data <<'_ATEOF'
1aB
8aM
3aE
5aG
0aA
5aH
6aI
7aJ
2aD
7aK
1aC
7aL
4aF
_ATEOF
cat >b.data <<'_ATEOF'
1bN
3bO
4bP
6bQ
7bR
9bS
_ATEOF
cat >save-b.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='b.data' /a b c 1-3 (A).
SAVE OUTFILE='b.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/add-files.at:110: pspp -O format=csv save-b.sps"
at_fn_check_prepare_trace "add-files.at:110"
( $at_check_trace; pspp -O format=csv save-b.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/add-files.at:110"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >add-files.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='a.data' /a b c 1-3 (A).
ADD FILES
FILE=* /IN=InA
FILE='b.sav' /IN=InB /RENAME c=d
.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/add-files.at:110: pspp -O format=csv add-files.sps"
at_fn_check_prepare_trace "add-files.at:110"
( $at_check_trace; pspp -O format=csv add-files.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
a,b,c,d,InA,InB
1,a,B,,1,0
8,a,M,,1,0
3,a,E,,1,0
5,a,G,,1,0
0,a,A,,1,0
5,a,H,,1,0
6,a,I,,1,0
7,a,J,,1,0
2,a,D,,1,0
7,a,K,,1,0
1,a,C,,1,0
7,a,L,,1,0
4,a,F,,1,0
1,b,,N,0,1
3,b,,O,0,1
4,b,,P,0,1
6,b,,Q,0,1
7,b,,R,0,1
9,b,,S,0,1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/add-files.at:110"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_194
#AT_START_195
at_fn_group_banner 195 'data-list.at:3' \
"DATA LIST LIST with empty fields" " " 24
at_xfail=no
(
$as_echo "195. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data-list.pspp <<'_ATEOF'
DATA LIST LIST NOTABLE /A B C (F1.0).
BEGIN DATA.
,,
,,3
,2,
,2,3
1,,
1,,3
1,2,
1,2,3
END DATA.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-list.at:19: pspp -O format=csv data-list.pspp"
at_fn_check_prepare_trace "data-list.at:19"
( $at_check_trace; pspp -O format=csv data-list.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
A,B,C
.,.,.
.,.,3
.,2,.
.,2,3
1,.,.
1,.,3
1,2,.
1,2,3
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-list.at:19"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_195
#AT_START_196
at_fn_group_banner 196 'data-list.at:34' \
"DATA LIST LIST with explicit delimiters" " " 24
at_xfail=no
(
$as_echo "196. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data-list.pspp <<'_ATEOF'
data list list ('|','X') /A B C D.
begin data.
1|23X45|2.03x
2X22|34|23|
3|34|34X34
end data.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-list.at:45: pspp -O format=csv data-list.pspp"
at_fn_check_prepare_trace "data-list.at:45"
( $at_check_trace; pspp -O format=csv data-list.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
A,F8.0
B,F8.0
C,F8.0
D,F8.0
data-list.pspp:3.9-3.13: warning: Data for variable D is not valid as format F: Number followed by garbage.
Table: Data List
A,B,C,D
1.00,23.00,45.00,.
2.00,22.00,34.00,23.00
3.00,34.00,34.00,34.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-list.at:45"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_196
#AT_START_197
at_fn_group_banner 197 'data-list.at:63' \
"DATA LIST FREE with SKIP" " " 24
at_xfail=no
(
$as_echo "197. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data-list.pspp <<'_ATEOF'
data list free skip=1/A B C D.
begin data.
# This record is ignored.
,1,2,x
,4,,5
6
7,
8 9
0,1 ,,,
,,,,
2
3
4
5
end data.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-list.at:83: pspp -O format=csv data-list.pspp"
at_fn_check_prepare_trace "data-list.at:83"
( $at_check_trace; pspp -O format=csv data-list.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "data-list.pspp:4.6: warning: Data for variable D is not valid as format F: Field contents are not numeric.
Table: Data List
A,B,C,D
. ,1.00,2.00,.
. ,4.00,. ,5.00
6.00,7.00,8.00,9.00
.00,1.00,. ,.
. ,. ,. ,.
2.00,3.00,4.00,5.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-list.at:83"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_197
#AT_START_198
at_fn_group_banner 198 'data-list.at:97' \
"DATA LIST LIST with SKIP and tab delimiter" " " 24
at_xfail=no
(
$as_echo "198. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data-list.pspp <<'_ATEOF'
data list list (tab) notable skip=2/A B C D.
begin data.
# These records
# are skipped.
1 2 3 4
1 2 3
1 2 4
1 2
1 3 4
1 3
1 4
1
2 3 4
2 3
2 4
2
3 4
3
4
end data.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-list.at:122: pspp -O format=csv data-list.pspp"
at_fn_check_prepare_trace "data-list.at:122"
( $at_check_trace; pspp -O format=csv data-list.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
A,B,C,D
1.00,2.00,3.00,4.00
1.00,2.00,3.00,.
1.00,2.00,. ,4.00
1.00,2.00,. ,.
1.00,. ,3.00,4.00
1.00,. ,3.00,.
1.00,. ,. ,4.00
1.00,. ,. ,.
. ,2.00,3.00,4.00
. ,2.00,3.00,.
. ,2.00,. ,4.00
. ,2.00,. ,.
. ,. ,3.00,4.00
. ,. ,3.00,.
. ,. ,. ,4.00
. ,. ,. ,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-list.at:122"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_198
#AT_START_199
at_fn_group_banner 199 'data-list.at:146' \
"DATA LIST FREE with explicit delimiter at end of line" "" 24
at_xfail=no
(
$as_echo "199. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data-list.pspp <<'_ATEOF'
DATA LIST FREE(',')/x y z.
BEGIN DATA.
1,2,3
4,5,6
7,8,9
END DATA.
LIST.
DATA LIST FREE(',')/x y z.
BEGIN DATA.
11,12,13,
14,15,16,
17,18,19,
END DATA.
LIST.
DATA LIST FREE(TAB)/x y z.
BEGIN DATA.
21 22 23
24 25 26
27 28 29
END DATA.
LIST.
DATA LIST FREE(TAB)/x y z.
BEGIN DATA.
31 32 33
34 35 36
37 38 39
END DATA.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-list.at:180: pspp -O format=csv data-list.pspp"
at_fn_check_prepare_trace "data-list.at:180"
( $at_check_trace; pspp -O format=csv data-list.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
x,y,z
1.00,2.00,3.00
4.00,5.00,6.00
7.00,8.00,9.00
Table: Data List
x,y,z
11.00,12.00,13.00
14.00,15.00,16.00
17.00,18.00,19.00
Table: Data List
x,y,z
21.00,22.00,23.00
24.00,25.00,26.00
27.00,28.00,29.00
Table: Data List
x,y,z
31.00,32.00,33.00
34.00,35.00,36.00
37.00,38.00,39.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-list.at:180"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_199
#AT_START_200
at_fn_group_banner 200 'data-list.at:207' \
"DATA LIST FIXED with multiple records per case" " " 24
at_xfail=no
(
$as_echo "200. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data-list.pspp <<'_ATEOF'
data list fixed notable
/1 start 1-20 (adate)
/2 end 1-20 (adate)
/3 count 1-3.
begin data.
07-22-2007
10-06-2007
x
07-14-1789
08-26-1789
xy
01-01-1972
12-31-1999
682
end data.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-list.at:226: pspp -O format=csv data-list.pspp"
at_fn_check_prepare_trace "data-list.at:226"
( $at_check_trace; pspp -O format=csv data-list.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "data-list.pspp:8.1-8.3: warning: Data for variable count is not valid as format F: Field contents are not numeric.
data-list.pspp:11.1-11.3: warning: Data for variable count is not valid as format F: Field contents are not numeric.
Table: Data List
start,end,count
07/22/2007,10/06/2007,.
07/14/1789,08/26/1789,.
01/01/1972,12/31/1999,682
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-list.at:226"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_200
#AT_START_201
at_fn_group_banner 201 'data-list.at:239' \
"DATA LIST FIXED with empty trailing record" " " 24
at_xfail=no
(
$as_echo "201. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data-list.pspp <<'_ATEOF'
data list fixed notable records=2/x 1 y 2.
begin data.
12
34
56
78
90
end data.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-list.at:256: pspp -O format=csv data-list.pspp"
at_fn_check_prepare_trace "data-list.at:256"
( $at_check_trace; pspp -O format=csv data-list.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
x,y
1,2
3,4
5,6
7,8
9,0
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-list.at:256"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_201
#AT_START_202
at_fn_group_banner 202 'data-list.at:269' \
"DATA LIST with various line-ends" " " 24
at_xfail=no
(
$as_echo "202. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data-list.sps <<'_ATEOF'
data list list notable file='input.txt'/a b c.
list.
_ATEOF
printf '1 2 3\n4 5 6\r\n7\r8\r9\r\n10 11 12\n13 14 15 \r\n16\r\r17\r18\n' > input.txt
{ set +x
$as_echo "$at_srcdir/data-list.at:278: cksum input.txt"
at_fn_check_prepare_trace "data-list.at:278"
( $at_check_trace; cksum input.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1732021750 50 input.txt
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-list.at:278"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-list.at:280: pspp -o pspp.csv data-list.sps"
at_fn_check_prepare_trace "data-list.at:280"
( $at_check_trace; pspp -o pspp.csv data-list.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-list.at:280"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-list.at:281: cat pspp.csv"
at_fn_check_prepare_trace "data-list.at:281"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
a,b,c
1.00,2.00,3.00
4.00,5.00,6.00
7.00,8.00,9.00
10.00,11.00,12.00
13.00,14.00,15.00
16.00,17.00,18.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-list.at:281"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_202
#AT_START_203
at_fn_group_banner 203 'data-list.at:293' \
"DATA LIST properly expands tabs in input" " " 24
at_xfail=no
(
$as_echo "203. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data-list.sps <<'_ATEOF'
data list notable /X 1-50 (a).
begin data.
1 12 123 1234 12345 .
end data.
print /x.
print outfile='print.txt' /x.
write outfile='write.txt' /x.
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-list.at:304: sed -n '/12345/l' data-list.sps"
at_fn_check_prepare_trace "data-list.at:304"
( $at_check_trace; sed -n '/12345/l' data-list.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\\t1\\t12\\t123\\t1234\\t12345 .\$
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-list.at:304"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-list.at:307: pspp -o pspp.csv data-list.sps"
at_fn_check_prepare_trace "data-list.at:307"
( $at_check_trace; pspp -o pspp.csv data-list.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-list.at:307"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-list.at:309: cat pspp.csv"
at_fn_check_prepare_trace "data-list.at:309"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1 12 123 1234 12345 .
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-list.at:309"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-list.at:314: cat print.txt"
at_fn_check_prepare_trace "data-list.at:314"
( $at_check_trace; cat print.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 1 12 123 1234 12345 .
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-list.at:314"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-list.at:318: cat write.txt"
at_fn_check_prepare_trace "data-list.at:318"
( $at_check_trace; cat write.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 1 12 123 1234 12345 .
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-list.at:318"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_203
#AT_START_204
at_fn_group_banner 204 'data-list.at:323' \
"DATA LIST FREE and LIST report missing delimiters" "" 24
at_xfail=no
(
$as_echo "204. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data-list.sps <<'_ATEOF'
DATA LIST FREE NOTABLE/s (a10).
LIST.
BEGIN DATA.
'y'z
END DATA.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-list.at:331: pspp -O format=csv data-list.sps"
at_fn_check_prepare_trace "data-list.at:331"
( $at_check_trace; pspp -O format=csv data-list.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "data-list.sps:4: warning: Missing delimiter following quoted string.
Table: Data List
s
y
z
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-list.at:331"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_204
#AT_START_205
at_fn_group_banner 205 'data-list.at:341' \
"DATA LIST FREE and LIST assume a width if omitted" "" 24
at_xfail=no
(
$as_echo "205. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data-list.sps <<'_ATEOF'
DATA LIST FREE TABLE/s (a) d (datetime) f (f).
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-list.at:345: pspp -O format=csv data-list.sps"
at_fn_check_prepare_trace "data-list.at:345"
( $at_check_trace; pspp -O format=csv data-list.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
s,A1
d,DATETIME17.0
f,F1.0
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-list.at:345"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_205
#AT_START_206
at_fn_group_banner 206 'data-reader.at:5' \
"BEGIN DATA as part of a procedure" " " 25
at_xfail=no
(
$as_echo "206. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >begin-data.sps <<'_ATEOF'
TITLE 'Test BEGIN DATA ... END DATA'.
DATA LIST /a b 1-2.
LIST.
BEGIN DATA.
12
34
56
78
90
END DATA.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-reader.at:19: pspp -O format=csv begin-data.sps"
at_fn_check_prepare_trace "data-reader.at:19"
( $at_check_trace; pspp -O format=csv begin-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Title: Test BEGIN DATA ... END DATA
Table: Reading 1 record from INLINE.
Variable,Record,Columns,Format
a,1,1- 1,F1.0
b,1,2- 2,F1.0
Table: Data List
a,b
1,2
3,4
5,6
7,8
9,0
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:19"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_206
#AT_START_207
at_fn_group_banner 207 'data-reader.at:38' \
"BEGIN DATA as an independent command" " " 25
at_xfail=no
(
$as_echo "207. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >begin-data.sps <<'_ATEOF'
data list /A B 1-2.
begin data.
09
87
65
43
21
end data.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-reader.at:50: pspp -O format=csv begin-data.sps"
at_fn_check_prepare_trace "data-reader.at:50"
( $at_check_trace; pspp -O format=csv begin-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading 1 record from INLINE.
Variable,Record,Columns,Format
A,1,1- 1,F1.0
B,1,2- 2,F1.0
Table: Data List
A,B
0,9
8,7
6,5
4,3
2,1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:50"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_207
#AT_START_208
at_fn_group_banner 208 'data-reader.at:195' \
"read and write files with MODE=BINARY" " " 25
at_xfail=no
(
$as_echo "208. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input.txt <<'_ATEOF'
07-22-2007
10-06-2007
321
07-14-1789
08-26-1789
4
01-01-1972
12-31-1999
682
_ATEOF
cat >make-binary.pl <<'_ATEOF'
use strict;
use warnings;
# ASCII to EBCDIC translation table
our ($ascii2ebcdic) = ""
. "\x00\x01\x02\x03\x37\x2d\x2e\x2f"
. "\x16\x05\x25\x0b\x0c\x0d\x0e\x0f"
. "\x10\x11\x12\x13\x3c\x3d\x32\x26"
. "\x18\x19\x3f\x27\x1c\x1d\x1e\x1f"
. "\x40\x5a\x7f\x7b\x5b\x6c\x50\x7d"
. "\x4d\x5d\x5c\x4e\x6b\x60\x4b\x61"
. "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
. "\xf8\xf9\x7a\x5e\x4c\x7e\x6e\x6f"
. "\x7c\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
. "\xc8\xc9\xd1\xd2\xd3\xd4\xd5\xd6"
. "\xd7\xd8\xd9\xe2\xe3\xe4\xe5\xe6"
. "\xe7\xe8\xe9\xad\xe0\xbd\x9a\x6d"
. "\x79\x81\x82\x83\x84\x85\x86\x87"
. "\x88\x89\x91\x92\x93\x94\x95\x96"
. "\x97\x98\x99\xa2\xa3\xa4\xa5\xa6"
. "\xa7\xa8\xa9\xc0\x4f\xd0\x5f\x07"
. "\x20\x21\x22\x23\x24\x15\x06\x17"
. "\x28\x29\x2a\x2b\x2c\x09\x0a\x1b"
. "\x30\x31\x1a\x33\x34\x35\x36\x08"
. "\x38\x39\x3a\x3b\x04\x14\x3e\xe1"
. "\x41\x42\x43\x44\x45\x46\x47\x48"
. "\x49\x51\x52\x53\x54\x55\x56\x57"
. "\x58\x59\x62\x63\x64\x65\x66\x67"
. "\x68\x69\x70\x71\x72\x73\x74\x75"
. "\x76\x77\x78\x80\x8a\x8b\x8c\x8d"
. "\x8e\x8f\x90\x6a\x9b\x9c\x9d\x9e"
. "\x9f\xa0\xaa\xab\xac\x4a\xae\xaf"
. "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
. "\xb8\xb9\xba\xbb\xbc\xa1\xbe\xbf"
. "\xca\xcb\xcc\xcd\xce\xcf\xda\xdb"
. "\xdc\xdd\xde\xdf\xea\xeb\xec\xed"
. "\xee\xef\xfa\xfb\xfc\xfd\xfe\xff";
length ($ascii2ebcdic) == 256 || die;
open (INPUT, '<', 'input.txt') or die "input.txt: open: $!\n";
my (@data) = or die;
close (INPUT) or die;
chomp $_ foreach @data;
our @records;
for $_ (@data) {
my ($reclen) = pack ("V", length);
print $reclen, $_, $reclen;
}
sub a2e {
local ($_) = @_;
my ($s) = "";
foreach (split (//)) {
$s .= substr ($ascii2ebcdic, ord, 1);
}
return $s;
}
sub min {
my ($a, $b) = @_;
return $a < $b ? $a : $b
}
sub dump_records {
while (@records) {
my ($n) = min (int (rand (5)) + 1, scalar (@records));
my (@r) = splice (@records, 0, $n);
my ($len) = 0;
$len += length foreach @r;
print pack ("n xx", $len + 4);
print foreach @r;
}
}
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-reader.at:195: \$PERL make-binary.pl < input.txt > input.bin"
at_fn_check_prepare_dynamic "$PERL make-binary.pl < input.txt > input.bin" "data-reader.at:195"
( $at_check_trace; $PERL make-binary.pl < input.txt > input.bin
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:195"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >data-reader.sps <<'_ATEOF'
FILE HANDLE input/NAME='input.bin'/MODE=BINARY.
DATA LIST FIXED FILE=input NOTABLE
/1 start 1-10 (ADATE)
/2 end 1-10 (ADATE)
/3 count 1-3.
LIST.
* Output the data to a new file in the same format.
FILE HANDLE OUTPUT/NAME='output.bin'/MODE=BINARY.
COMPUTE count=count + 1.
PRINT OUTFILE=output/start end count.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-reader.at:195: pspp -O format=csv data-reader.sps"
at_fn_check_prepare_trace "data-reader.at:195"
( $at_check_trace; pspp -O format=csv data-reader.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
start,end,count
07/22/2007,10/06/2007,321
07/14/1789,08/26/1789,4
01/01/1972,12/31/1999,682
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:195"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-reader.at:195: test -s output.bin"
at_fn_check_prepare_trace "data-reader.at:195"
( $at_check_trace; test -s output.bin
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:195"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >data-reader-2.sps <<'_ATEOF'
* Re-read the new data and list it, to verify that it was written correctly.
FILE HANDLE OUTPUT/NAME='output.bin'/MODE=BINARY.
DATA LIST FIXED FILE=output NOTABLE/
start 2-11 (ADATE)
end 13-22 (ADATE)
count 24-26.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-reader.at:195: pspp -O format=csv data-reader-2.sps"
at_fn_check_prepare_trace "data-reader.at:195"
( $at_check_trace; pspp -O format=csv data-reader-2.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
start,end,count
07/22/2007,10/06/2007,322
07/14/1789,08/26/1789,5
01/01/1972,12/31/1999,683
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:195"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_208
#AT_START_209
at_fn_group_banner 209 'data-reader.at:201' \
"read and write files with MODE=360 /RECFORM=FIXED /LRECL=32" "" 25
at_xfail=no
(
$as_echo "209. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/data-reader.at:201: i18n-test supports_encodings EBCDIC-US"
at_fn_check_prepare_trace "data-reader.at:201"
( $at_check_trace; i18n-test supports_encodings EBCDIC-US
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:201"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >input.txt <<'_ATEOF'
07-22-2007
10-06-2007
321
07-14-1789
08-26-1789
4
01-01-1972
12-31-1999
682
_ATEOF
cat >make-binary.pl <<'_ATEOF'
use strict;
use warnings;
# ASCII to EBCDIC translation table
our ($ascii2ebcdic) = ""
. "\x00\x01\x02\x03\x37\x2d\x2e\x2f"
. "\x16\x05\x25\x0b\x0c\x0d\x0e\x0f"
. "\x10\x11\x12\x13\x3c\x3d\x32\x26"
. "\x18\x19\x3f\x27\x1c\x1d\x1e\x1f"
. "\x40\x5a\x7f\x7b\x5b\x6c\x50\x7d"
. "\x4d\x5d\x5c\x4e\x6b\x60\x4b\x61"
. "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
. "\xf8\xf9\x7a\x5e\x4c\x7e\x6e\x6f"
. "\x7c\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
. "\xc8\xc9\xd1\xd2\xd3\xd4\xd5\xd6"
. "\xd7\xd8\xd9\xe2\xe3\xe4\xe5\xe6"
. "\xe7\xe8\xe9\xad\xe0\xbd\x9a\x6d"
. "\x79\x81\x82\x83\x84\x85\x86\x87"
. "\x88\x89\x91\x92\x93\x94\x95\x96"
. "\x97\x98\x99\xa2\xa3\xa4\xa5\xa6"
. "\xa7\xa8\xa9\xc0\x4f\xd0\x5f\x07"
. "\x20\x21\x22\x23\x24\x15\x06\x17"
. "\x28\x29\x2a\x2b\x2c\x09\x0a\x1b"
. "\x30\x31\x1a\x33\x34\x35\x36\x08"
. "\x38\x39\x3a\x3b\x04\x14\x3e\xe1"
. "\x41\x42\x43\x44\x45\x46\x47\x48"
. "\x49\x51\x52\x53\x54\x55\x56\x57"
. "\x58\x59\x62\x63\x64\x65\x66\x67"
. "\x68\x69\x70\x71\x72\x73\x74\x75"
. "\x76\x77\x78\x80\x8a\x8b\x8c\x8d"
. "\x8e\x8f\x90\x6a\x9b\x9c\x9d\x9e"
. "\x9f\xa0\xaa\xab\xac\x4a\xae\xaf"
. "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
. "\xb8\xb9\xba\xbb\xbc\xa1\xbe\xbf"
. "\xca\xcb\xcc\xcd\xce\xcf\xda\xdb"
. "\xdc\xdd\xde\xdf\xea\xeb\xec\xed"
. "\xee\xef\xfa\xfb\xfc\xfd\xfe\xff";
length ($ascii2ebcdic) == 256 || die;
open (INPUT, '<', 'input.txt') or die "input.txt: open: $!\n";
my (@data) = or die;
close (INPUT) or die;
chomp $_ foreach @data;
our @records;
my ($lrecl) = 32;
for $_ (@data) {
my ($out) = substr ($_, 0, $lrecl);
$out .= ' ' x ($lrecl - length ($out));
length ($out) == 32 or die;
print +a2e ($out);
}
sub a2e {
local ($_) = @_;
my ($s) = "";
foreach (split (//)) {
$s .= substr ($ascii2ebcdic, ord, 1);
}
return $s;
}
sub min {
my ($a, $b) = @_;
return $a < $b ? $a : $b
}
sub dump_records {
while (@records) {
my ($n) = min (int (rand (5)) + 1, scalar (@records));
my (@r) = splice (@records, 0, $n);
my ($len) = 0;
$len += length foreach @r;
print pack ("n xx", $len + 4);
print foreach @r;
}
}
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-reader.at:201: \$PERL make-binary.pl < input.txt > input.bin"
at_fn_check_prepare_dynamic "$PERL make-binary.pl < input.txt > input.bin" "data-reader.at:201"
( $at_check_trace; $PERL make-binary.pl < input.txt > input.bin
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:201"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >data-reader.sps <<'_ATEOF'
FILE HANDLE input/NAME='input.bin'/MODE=360 /RECFORM=FIXED /LRECL=32.
DATA LIST FIXED FILE=input NOTABLE
/1 start 1-10 (ADATE)
/2 end 1-10 (ADATE)
/3 count 1-3.
LIST.
* Output the data to a new file in the same format.
FILE HANDLE OUTPUT/NAME='output.bin'/MODE=360 /RECFORM=FIXED /LRECL=32.
COMPUTE count=count + 1.
PRINT OUTFILE=output/start end count.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-reader.at:201: pspp -O format=csv data-reader.sps"
at_fn_check_prepare_trace "data-reader.at:201"
( $at_check_trace; pspp -O format=csv data-reader.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
start,end,count
07/22/2007,10/06/2007,321
07/14/1789,08/26/1789,4
01/01/1972,12/31/1999,682
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:201"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-reader.at:201: test -s output.bin"
at_fn_check_prepare_trace "data-reader.at:201"
( $at_check_trace; test -s output.bin
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:201"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >data-reader-2.sps <<'_ATEOF'
* Re-read the new data and list it, to verify that it was written correctly.
FILE HANDLE OUTPUT/NAME='output.bin'/MODE=360 /RECFORM=FIXED /LRECL=32.
DATA LIST FIXED FILE=output NOTABLE/
start 2-11 (ADATE)
end 13-22 (ADATE)
count 24-26.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-reader.at:201: pspp -O format=csv data-reader-2.sps"
at_fn_check_prepare_trace "data-reader.at:201"
( $at_check_trace; pspp -O format=csv data-reader-2.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
start,end,count
07/22/2007,10/06/2007,322
07/14/1789,08/26/1789,5
01/01/1972,12/31/1999,683
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:201"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_209
#AT_START_210
at_fn_group_banner 210 'data-reader.at:211' \
"read and write files with MODE=360 /RECFORM=VARIABLE" "" 25
at_xfail=no
(
$as_echo "210. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/data-reader.at:211: i18n-test supports_encodings EBCDIC-US"
at_fn_check_prepare_trace "data-reader.at:211"
( $at_check_trace; i18n-test supports_encodings EBCDIC-US
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:211"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >input.txt <<'_ATEOF'
07-22-2007
10-06-2007
321
07-14-1789
08-26-1789
4
01-01-1972
12-31-1999
682
_ATEOF
cat >make-binary.pl <<'_ATEOF'
use strict;
use warnings;
# ASCII to EBCDIC translation table
our ($ascii2ebcdic) = ""
. "\x00\x01\x02\x03\x37\x2d\x2e\x2f"
. "\x16\x05\x25\x0b\x0c\x0d\x0e\x0f"
. "\x10\x11\x12\x13\x3c\x3d\x32\x26"
. "\x18\x19\x3f\x27\x1c\x1d\x1e\x1f"
. "\x40\x5a\x7f\x7b\x5b\x6c\x50\x7d"
. "\x4d\x5d\x5c\x4e\x6b\x60\x4b\x61"
. "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
. "\xf8\xf9\x7a\x5e\x4c\x7e\x6e\x6f"
. "\x7c\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
. "\xc8\xc9\xd1\xd2\xd3\xd4\xd5\xd6"
. "\xd7\xd8\xd9\xe2\xe3\xe4\xe5\xe6"
. "\xe7\xe8\xe9\xad\xe0\xbd\x9a\x6d"
. "\x79\x81\x82\x83\x84\x85\x86\x87"
. "\x88\x89\x91\x92\x93\x94\x95\x96"
. "\x97\x98\x99\xa2\xa3\xa4\xa5\xa6"
. "\xa7\xa8\xa9\xc0\x4f\xd0\x5f\x07"
. "\x20\x21\x22\x23\x24\x15\x06\x17"
. "\x28\x29\x2a\x2b\x2c\x09\x0a\x1b"
. "\x30\x31\x1a\x33\x34\x35\x36\x08"
. "\x38\x39\x3a\x3b\x04\x14\x3e\xe1"
. "\x41\x42\x43\x44\x45\x46\x47\x48"
. "\x49\x51\x52\x53\x54\x55\x56\x57"
. "\x58\x59\x62\x63\x64\x65\x66\x67"
. "\x68\x69\x70\x71\x72\x73\x74\x75"
. "\x76\x77\x78\x80\x8a\x8b\x8c\x8d"
. "\x8e\x8f\x90\x6a\x9b\x9c\x9d\x9e"
. "\x9f\xa0\xaa\xab\xac\x4a\xae\xaf"
. "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
. "\xb8\xb9\xba\xbb\xbc\xa1\xbe\xbf"
. "\xca\xcb\xcc\xcd\xce\xcf\xda\xdb"
. "\xdc\xdd\xde\xdf\xea\xeb\xec\xed"
. "\xee\xef\xfa\xfb\xfc\xfd\xfe\xff";
length ($ascii2ebcdic) == 256 || die;
open (INPUT, '<', 'input.txt') or die "input.txt: open: $!\n";
my (@data) = or die;
close (INPUT) or die;
chomp $_ foreach @data;
our @records;
for $_ (@data) {
push (@records, pack ("n xx", length ($_) + 4) . a2e ($_));
}
dump_records ();
sub a2e {
local ($_) = @_;
my ($s) = "";
foreach (split (//)) {
$s .= substr ($ascii2ebcdic, ord, 1);
}
return $s;
}
sub min {
my ($a, $b) = @_;
return $a < $b ? $a : $b
}
sub dump_records {
while (@records) {
my ($n) = min (int (rand (5)) + 1, scalar (@records));
my (@r) = splice (@records, 0, $n);
my ($len) = 0;
$len += length foreach @r;
print pack ("n xx", $len + 4);
print foreach @r;
}
}
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-reader.at:211: \$PERL make-binary.pl < input.txt > input.bin"
at_fn_check_prepare_dynamic "$PERL make-binary.pl < input.txt > input.bin" "data-reader.at:211"
( $at_check_trace; $PERL make-binary.pl < input.txt > input.bin
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:211"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >data-reader.sps <<'_ATEOF'
FILE HANDLE input/NAME='input.bin'/MODE=360 /RECFORM=VARIABLE.
DATA LIST FIXED FILE=input NOTABLE
/1 start 1-10 (ADATE)
/2 end 1-10 (ADATE)
/3 count 1-3.
LIST.
* Output the data to a new file in the same format.
FILE HANDLE OUTPUT/NAME='output.bin'/MODE=360 /RECFORM=VARIABLE.
COMPUTE count=count + 1.
PRINT OUTFILE=output/start end count.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-reader.at:211: pspp -O format=csv data-reader.sps"
at_fn_check_prepare_trace "data-reader.at:211"
( $at_check_trace; pspp -O format=csv data-reader.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
start,end,count
07/22/2007,10/06/2007,321
07/14/1789,08/26/1789,4
01/01/1972,12/31/1999,682
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:211"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-reader.at:211: test -s output.bin"
at_fn_check_prepare_trace "data-reader.at:211"
( $at_check_trace; test -s output.bin
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:211"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >data-reader-2.sps <<'_ATEOF'
* Re-read the new data and list it, to verify that it was written correctly.
FILE HANDLE OUTPUT/NAME='output.bin'/MODE=360 /RECFORM=VARIABLE.
DATA LIST FIXED FILE=output NOTABLE/
start 2-11 (ADATE)
end 13-22 (ADATE)
count 24-26.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-reader.at:211: pspp -O format=csv data-reader-2.sps"
at_fn_check_prepare_trace "data-reader.at:211"
( $at_check_trace; pspp -O format=csv data-reader-2.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
start,end,count
07/22/2007,10/06/2007,322
07/14/1789,08/26/1789,5
01/01/1972,12/31/1999,683
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:211"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_210
#AT_START_211
at_fn_group_banner 211 'data-reader.at:218' \
"read and write files with MODE=360 /RECFORM=SPANNED" "" 25
at_xfail=no
(
$as_echo "211. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/data-reader.at:218: i18n-test supports_encodings EBCDIC-US"
at_fn_check_prepare_trace "data-reader.at:218"
( $at_check_trace; i18n-test supports_encodings EBCDIC-US
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:218"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >input.txt <<'_ATEOF'
07-22-2007
10-06-2007
321
07-14-1789
08-26-1789
4
01-01-1972
12-31-1999
682
_ATEOF
cat >make-binary.pl <<'_ATEOF'
use strict;
use warnings;
# ASCII to EBCDIC translation table
our ($ascii2ebcdic) = ""
. "\x00\x01\x02\x03\x37\x2d\x2e\x2f"
. "\x16\x05\x25\x0b\x0c\x0d\x0e\x0f"
. "\x10\x11\x12\x13\x3c\x3d\x32\x26"
. "\x18\x19\x3f\x27\x1c\x1d\x1e\x1f"
. "\x40\x5a\x7f\x7b\x5b\x6c\x50\x7d"
. "\x4d\x5d\x5c\x4e\x6b\x60\x4b\x61"
. "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
. "\xf8\xf9\x7a\x5e\x4c\x7e\x6e\x6f"
. "\x7c\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
. "\xc8\xc9\xd1\xd2\xd3\xd4\xd5\xd6"
. "\xd7\xd8\xd9\xe2\xe3\xe4\xe5\xe6"
. "\xe7\xe8\xe9\xad\xe0\xbd\x9a\x6d"
. "\x79\x81\x82\x83\x84\x85\x86\x87"
. "\x88\x89\x91\x92\x93\x94\x95\x96"
. "\x97\x98\x99\xa2\xa3\xa4\xa5\xa6"
. "\xa7\xa8\xa9\xc0\x4f\xd0\x5f\x07"
. "\x20\x21\x22\x23\x24\x15\x06\x17"
. "\x28\x29\x2a\x2b\x2c\x09\x0a\x1b"
. "\x30\x31\x1a\x33\x34\x35\x36\x08"
. "\x38\x39\x3a\x3b\x04\x14\x3e\xe1"
. "\x41\x42\x43\x44\x45\x46\x47\x48"
. "\x49\x51\x52\x53\x54\x55\x56\x57"
. "\x58\x59\x62\x63\x64\x65\x66\x67"
. "\x68\x69\x70\x71\x72\x73\x74\x75"
. "\x76\x77\x78\x80\x8a\x8b\x8c\x8d"
. "\x8e\x8f\x90\x6a\x9b\x9c\x9d\x9e"
. "\x9f\xa0\xaa\xab\xac\x4a\xae\xaf"
. "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
. "\xb8\xb9\xba\xbb\xbc\xa1\xbe\xbf"
. "\xca\xcb\xcc\xcd\xce\xcf\xda\xdb"
. "\xdc\xdd\xde\xdf\xea\xeb\xec\xed"
. "\xee\xef\xfa\xfb\xfc\xfd\xfe\xff";
length ($ascii2ebcdic) == 256 || die;
open (INPUT, '<', 'input.txt') or die "input.txt: open: $!\n";
my (@data) = or die;
close (INPUT) or die;
chomp $_ foreach @data;
our @records;
for my $line (@data) {
local ($_) = $line;
my (@r);
while (length) {
my ($n) = min (int (rand (5)), length);
push (@r, substr ($_, 0, $n, ''));
}
foreach my $i (0...$#r) {
my $scc = ($#r == 0 ? 0
: $i == 0 ? 1
: $i == $#r ? 2
: 3);
push (@records,
pack ("nCx", length ($r[$i]) + 4, $scc) . a2e ($r[$i]));
}
}
dump_records ();
sub a2e {
local ($_) = @_;
my ($s) = "";
foreach (split (//)) {
$s .= substr ($ascii2ebcdic, ord, 1);
}
return $s;
}
sub min {
my ($a, $b) = @_;
return $a < $b ? $a : $b
}
sub dump_records {
while (@records) {
my ($n) = min (int (rand (5)) + 1, scalar (@records));
my (@r) = splice (@records, 0, $n);
my ($len) = 0;
$len += length foreach @r;
print pack ("n xx", $len + 4);
print foreach @r;
}
}
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-reader.at:218: \$PERL make-binary.pl < input.txt > input.bin"
at_fn_check_prepare_dynamic "$PERL make-binary.pl < input.txt > input.bin" "data-reader.at:218"
( $at_check_trace; $PERL make-binary.pl < input.txt > input.bin
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:218"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >data-reader.sps <<'_ATEOF'
FILE HANDLE input/NAME='input.bin'/MODE=360 /RECFORM=SPANNED.
DATA LIST FIXED FILE=input NOTABLE
/1 start 1-10 (ADATE)
/2 end 1-10 (ADATE)
/3 count 1-3.
LIST.
* Output the data to a new file in the same format.
FILE HANDLE OUTPUT/NAME='output.bin'/MODE=360 /RECFORM=SPANNED.
COMPUTE count=count + 1.
PRINT OUTFILE=output/start end count.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-reader.at:218: pspp -O format=csv data-reader.sps"
at_fn_check_prepare_trace "data-reader.at:218"
( $at_check_trace; pspp -O format=csv data-reader.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
start,end,count
07/22/2007,10/06/2007,321
07/14/1789,08/26/1789,4
01/01/1972,12/31/1999,682
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:218"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/data-reader.at:218: test -s output.bin"
at_fn_check_prepare_trace "data-reader.at:218"
( $at_check_trace; test -s output.bin
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:218"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >data-reader-2.sps <<'_ATEOF'
* Re-read the new data and list it, to verify that it was written correctly.
FILE HANDLE OUTPUT/NAME='output.bin'/MODE=360 /RECFORM=SPANNED.
DATA LIST FIXED FILE=output NOTABLE/
start 2-11 (ADATE)
end 13-22 (ADATE)
count 24-26.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/data-reader.at:218: pspp -O format=csv data-reader-2.sps"
at_fn_check_prepare_trace "data-reader.at:218"
( $at_check_trace; pspp -O format=csv data-reader-2.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
start,end,count
07/22/2007,10/06/2007,322
07/14/1789,08/26/1789,5
01/01/1972,12/31/1999,683
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data-reader.at:218"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_211
#AT_START_212
at_fn_group_banner 212 'dataset.at:3' \
"DATASET COPY" " " 26
at_xfail=no
(
$as_echo "212. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >dataset.pspp <<'_ATEOF'
DATASET NAME initial.
DATA LIST NOTABLE /x 1.
COMPUTE x = x + 1.
DATASET COPY clone.
BEGIN DATA.
1
2
3
4
5
END DATA.
NEW FILE.
DATA LIST NOTABLE /y 1.
BEGIN DATA.
6
7
8
END DATA.
LIST.
DATASET DISPLAY.
DATASET ACTIVATE clone.
DATASET DISPLAY.
LIST.
DATASET ACTIVATE initial.
DATASET DISPLAY.
LIST.
COMPUTE z=y.
DATASET COPY clone.
DATASET ACTIVATE clone.
LIST.
DATASET COPY clone.
DATASET DISPLAY.
DATASET CLOSE initial.
DATASET DISPLAY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/dataset.at:46: pspp -O format=csv dataset.pspp"
at_fn_check_prepare_trace "dataset.at:46"
( $at_check_trace; pspp -O format=csv dataset.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
y
6
7
8
Table: Open datasets.
Dataset
clone
initial (active dataset)
Table: Open datasets.
Dataset
clone (active dataset)
initial
Table: Data List
x
2
3
4
5
6
Table: Open datasets.
Dataset
clone
initial (active dataset)
Table: Data List
y
6
7
8
Table: Data List
y,z
6,6.00
7,7.00
8,8.00
Table: Open datasets.
Dataset
unnamed dataset (active dataset)
initial
Table: Open datasets.
Dataset
unnamed dataset (active dataset)
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/dataset.at:46"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_212
#AT_START_213
at_fn_group_banner 213 'dataset.at:99' \
"DATASET DECLARE" " " 26
at_xfail=no
(
$as_echo "213. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >dataset.pspp <<'_ATEOF'
DATASET DECLARE second.
DATASET DISPLAY.
DATA LIST NOTABLE/x 1.
BEGIN DATA.
1
END DATA.
LIST.
DATASET ACTIVATE second.
DATASET DISPLAY.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/dataset.at:112: pspp -O format=csv dataset.pspp"
at_fn_check_prepare_trace "dataset.at:112"
( $at_check_trace; pspp -O format=csv dataset.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Open datasets.
Dataset
unnamed dataset (active dataset)
second
Table: Data List
x
1
Table: Open datasets.
Dataset
second (active dataset)
dataset.pspp:10: error: LIST: LIST is allowed only after the active dataset has been defined.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/dataset.at:112"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_213
#AT_START_214
at_fn_group_banner 214 'dataset.at:130' \
"DATASET NAME deletes duplicate name" " " 26
at_xfail=no
(
$as_echo "214. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >dataset.pspp <<'_ATEOF'
DATASET NAME a.
DATASET DECLARE b.
DATASET DECLARE c.
DATASET DISPLAY.
DATASET NAME b.
DATASET NAME c.
DATASET DISPLAY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/dataset.at:141: pspp -O format=csv dataset.pspp"
at_fn_check_prepare_trace "dataset.at:141"
( $at_check_trace; pspp -O format=csv dataset.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Open datasets.
Dataset
a (active dataset)
b
c
Table: Open datasets.
Dataset
c (active dataset)
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/dataset.at:141"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_214
#AT_START_215
at_fn_group_banner 215 'dataset.at:154' \
"DATASET ACTIVATE deletes unnamed dataset" " " 26
at_xfail=no
(
$as_echo "215. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >dataset.pspp <<'_ATEOF'
DATASET DECLARE x.
DATASET DISPLAY.
DATASET ACTIVATE x.
DATASET DISPLAY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/dataset.at:162: pspp -O format=csv dataset.pspp"
at_fn_check_prepare_trace "dataset.at:162"
( $at_check_trace; pspp -O format=csv dataset.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Open datasets.
Dataset
unnamed dataset (active dataset)
x
Table: Open datasets.
Dataset
x (active dataset)
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/dataset.at:162"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_215
#AT_START_216
at_fn_group_banner 216 'dataset.at:174' \
"DATASET ACTIVATE executes pending transformations" "" 26
at_xfail=no
(
$as_echo "216. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >dataset.pspp <<'_ATEOF'
DATASET NAME one.
DATASET DECLARE another.
DATASET DISPLAY.
DATA LIST NOTABLE /x 1.
PRINT/x.
DATASET ACTIVATE another.
BEGIN DATA.
1
2
3
4
5
END DATA.
LIST.
DATASET ACTIVATE one.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/dataset.at:196: pspp -O format=csv dataset.pspp"
at_fn_check_prepare_trace "dataset.at:196"
( $at_check_trace; pspp -O format=csv dataset.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Open datasets.
Dataset
another
one (active dataset)
1
2
3
4
5
dataset.pspp:16: error: LIST: LIST is allowed only after the active dataset has been defined.
Table: Data List
x
1
2
3
4
5
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/dataset.at:196"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_216
#AT_START_217
at_fn_group_banner 217 'dataset.at:224' \
"DATASET CLOSE" " " 26
at_xfail=no
(
$as_echo "217. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >dataset.pspp <<'_ATEOF'
DATASET DISPLAY
DATASET CLOSE *.
DATASET DISPLAY.
DATASET NAME this.
DATASET DISPLAY.
DATASET CLOSE this.
DATASET DISPLAY.
DATASET NAME this.
DATASET DISPLAY.
DATASET CLOSE *.
DATASET DISPLAY.
DATASET DECLARE that.
DATASET DECLARE theother.
DATASET DECLARE yetanother.
DATASET DISPLAY.
DATASET CLOSE ALL.
DATASET DISPLAY.
DATASET NAME this.
DATASET DECLARE that.
DATASET DECLARE theother.
DATASET DECLARE yetanother.
DATASET DISPLAY.
DATASET CLOSE ALL.
DATASET DISPLAY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/dataset.at:255: pspp -O format=csv dataset.pspp"
at_fn_check_prepare_trace "dataset.at:255"
( $at_check_trace; pspp -O format=csv dataset.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Open datasets.
Dataset
unnamed dataset (active dataset)
Table: Open datasets.
Dataset
unnamed dataset (active dataset)
Table: Open datasets.
Dataset
this (active dataset)
Table: Open datasets.
Dataset
unnamed dataset (active dataset)
Table: Open datasets.
Dataset
this (active dataset)
Table: Open datasets.
Dataset
unnamed dataset (active dataset)
Table: Open datasets.
Dataset
unnamed dataset (active dataset)
that
theother
yetanother
Table: Open datasets.
Dataset
unnamed dataset (active dataset)
Table: Open datasets.
Dataset
that
theother
this (active dataset)
yetanother
Table: Open datasets.
Dataset
unnamed dataset (active dataset)
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/dataset.at:255"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_217
#AT_START_218
at_fn_group_banner 218 'file-handle.at:3' \
"FILE HANDLE" " " 27
at_xfail=no
(
$as_echo "218. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >wiggle.txt <<'_ATEOF'
1
2
5
109
_ATEOF
cat >file-handle.sps <<'_ATEOF'
FILE HANDLE myhandle /NAME='wiggle.txt'.
DATA LIST LIST FILE=myhandle /x *.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/file-handle.at:15: pspp -O format=csv file-handle.sps"
at_fn_check_prepare_trace "file-handle.at:15"
( $at_check_trace; pspp -O format=csv file-handle.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from myhandle.
Variable,Format
x,F8.0
Table: Data List
x
1.00
2.00
5.00
109.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/file-handle.at:15"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_218
#AT_START_219
at_fn_group_banner 219 'get-data-spreadsheet.at:154' \
"GET DATA /TYPE=GNM with CELLRANGE" " " 28
at_xfail=no
(
$as_echo "219. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:154: gzip -c \$top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric"
at_fn_check_prepare_dynamic "gzip -c $top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric" "get-data-spreadsheet.at:154"
( $at_check_trace; gzip -c $top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
$as_echo "get-data-spreadsheet.at:154" >"$at_check_line_file"
(test n$GNM_READ_SUPPORT != nyes) \
&& at_fn_check_skip 77 "$at_srcdir/get-data-spreadsheet.at:154"
cat >get-data.sps <<'_ATEOF'
GET DATA /TYPE=GNM /FILE='Book1.gnumeric' /READNAMES=off /SHEET=name 'This' /CELLRANGE=range 'g9:i13' .
DISPLAY VARIABLES.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:154: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-spreadsheet.at:154"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:154: cat pspp.csv"
at_fn_check_prepare_trace "get-data-spreadsheet.at:154"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
VAR001,Format: F8.2,1
VAR002,Format: A8,2
VAR003,Format: F8.2,3
Table: Data List
VAR001,VAR002,VAR003
.00,fred ,20.00
1.00,11 ,21.00
2.00,twelve ,22.00
3.00,13 ,23.00
4.00,14 ,24.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_219
#AT_START_220
at_fn_group_banner 220 'get-data-spreadsheet.at:154' \
"GET DATA /TYPE=GNM with CELLRANGE and READNAMES" "" 28
at_xfail=no
(
$as_echo "220. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:154: gzip -c \$top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric"
at_fn_check_prepare_dynamic "gzip -c $top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric" "get-data-spreadsheet.at:154"
( $at_check_trace; gzip -c $top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
$as_echo "get-data-spreadsheet.at:154" >"$at_check_line_file"
(test n$GNM_READ_SUPPORT != nyes) \
&& at_fn_check_skip 77 "$at_srcdir/get-data-spreadsheet.at:154"
cat >get-data.sps <<'_ATEOF'
GET DATA /TYPE=GNM /FILE='Book1.gnumeric' /READNAMES=on /SHEET=name 'This' /CELLRANGE=range 'g8:i13' .
DISPLAY VARIABLES.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:154: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-spreadsheet.at:154"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:154: cat pspp.csv"
at_fn_check_prepare_trace "get-data-spreadsheet.at:154"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
V1,Format: F8.2,1
V2,Format: A8,2
VAR001,Format: F8.2,3
Table: Data List
V1,V2,VAR001
.00,fred ,20.00
1.00,11 ,21.00
2.00,twelve ,22.00
3.00,13 ,23.00
4.00,14 ,24.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_220
#AT_START_221
at_fn_group_banner 221 'get-data-spreadsheet.at:154' \
"GET DATA /TYPE=GNM without CELLRANGE" " " 28
at_xfail=no
(
$as_echo "221. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:154: gzip -c \$top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric"
at_fn_check_prepare_dynamic "gzip -c $top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric" "get-data-spreadsheet.at:154"
( $at_check_trace; gzip -c $top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
$as_echo "get-data-spreadsheet.at:154" >"$at_check_line_file"
(test n$GNM_READ_SUPPORT != nyes) \
&& at_fn_check_skip 77 "$at_srcdir/get-data-spreadsheet.at:154"
cat >get-data.sps <<'_ATEOF'
GET DATA /TYPE=GNM /FILE='Book1.gnumeric' /SHEET=index 3.
DISPLAY VARIABLES.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:154: pspp -O format=csv get-data.sps"
at_fn_check_prepare_trace "get-data-spreadsheet.at:154"
( $at_check_trace; pspp -O format=csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
name,Format: A8,1
id,Format: F8.2,2
height,Format: F8.2,3
warning: Cannot convert the value in the spreadsheet cell C4 to format (F8.2): Field contents are not numeric.
Table: Data List
name,id,height
fred ,.00,23.40
bert ,1.00,.56
charlie ,2.00,.
dick ,3.00,-34.09
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_221
#AT_START_222
at_fn_group_banner 222 'get-data-spreadsheet.at:154' \
"GET DATA /TYPE=GNM with missing data" " " 28
at_xfail=no
(
$as_echo "222. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:154: gzip -c \$top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric"
at_fn_check_prepare_dynamic "gzip -c $top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric" "get-data-spreadsheet.at:154"
( $at_check_trace; gzip -c $top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
$as_echo "get-data-spreadsheet.at:154" >"$at_check_line_file"
(test n$GNM_READ_SUPPORT != nyes) \
&& at_fn_check_skip 77 "$at_srcdir/get-data-spreadsheet.at:154"
cat >get-data.sps <<'_ATEOF'
* This sheet has no data in one of its variables
GET DATA /TYPE=GNM /FILE='Book1.gnumeric' /READNAMES=on /SHEET=index 5.
DISPLAY VARIABLES.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:154: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-spreadsheet.at:154"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:154: cat pspp.csv"
at_fn_check_prepare_trace "get-data-spreadsheet.at:154"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
vone,Format: F8.2,1
vtwo,Format: F8.2,2
vthree,Format: A8,3
v4,Format: F8.2,4
Table: Data List
vone,vtwo,vthree,v4
1.00,3.00,,5.00
2.00,4.00,,6.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_222
#AT_START_223
at_fn_group_banner 223 'get-data-spreadsheet.at:154' \
"GET DATA /TYPE=GNM with no options" " " 28
at_xfail=no
(
$as_echo "223. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:154: gzip -c \$top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric"
at_fn_check_prepare_dynamic "gzip -c $top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric" "get-data-spreadsheet.at:154"
( $at_check_trace; gzip -c $top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
$as_echo "get-data-spreadsheet.at:154" >"$at_check_line_file"
(test n$GNM_READ_SUPPORT != nyes) \
&& at_fn_check_skip 77 "$at_srcdir/get-data-spreadsheet.at:154"
cat >get-data.sps <<'_ATEOF'
* This sheet is empty
GET DATA /TYPE=GNM /FILE='Book1.gnumeric'.
DISPLAY DICTIONARY.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:154: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-spreadsheet.at:154"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_223
#AT_START_224
at_fn_group_banner 224 'get-data-spreadsheet.at:154' \
"GET DATA /TYPE=GNM with empty sheet" " " 28
at_xfail=no
(
$as_echo "224. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:154: gzip -c \$top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric"
at_fn_check_prepare_dynamic "gzip -c $top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric" "get-data-spreadsheet.at:154"
( $at_check_trace; gzip -c $top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
$as_echo "get-data-spreadsheet.at:154" >"$at_check_line_file"
(test n$GNM_READ_SUPPORT != nyes) \
&& at_fn_check_skip 77 "$at_srcdir/get-data-spreadsheet.at:154"
cat >get-data.sps <<'_ATEOF'
* This sheet is empty
GET DATA /TYPE=GNM /FILE='Book1.gnumeric' /SHEET=name 'Empty'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:154: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-spreadsheet.at:154"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: Selected sheet or range of spreadsheet \`Book1.gnumeric' is empty.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_224
#AT_START_225
at_fn_group_banner 225 'get-data-spreadsheet.at:154' \
"GET DATA /TYPE=GNM with nonexistent sheet" " " 28
at_xfail=no
(
$as_echo "225. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:154: gzip -c \$top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric"
at_fn_check_prepare_dynamic "gzip -c $top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric" "get-data-spreadsheet.at:154"
( $at_check_trace; gzip -c $top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
$as_echo "get-data-spreadsheet.at:154" >"$at_check_line_file"
(test n$GNM_READ_SUPPORT != nyes) \
&& at_fn_check_skip 77 "$at_srcdir/get-data-spreadsheet.at:154"
cat >get-data.sps <<'_ATEOF'
* This sheet doesnt exist.
GET DATA /TYPE=GNM /FILE='Book1.gnumeric' /SHEET=name 'foobarxx'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:154: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-spreadsheet.at:154"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: Selected sheet or range of spreadsheet \`Book1.gnumeric' is empty.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_225
#AT_START_226
at_fn_group_banner 226 'get-data-spreadsheet.at:157' \
"GET DATA /TYPE=GNM sheet index bug" " " 28
at_xfail=no
(
$as_echo "226. $at_setup_line: testing $at_desc ..."
$at_traceon
$as_echo "get-data-spreadsheet.at:158" >"$at_check_line_file"
(test n$GNM_READ_SUPPORT != nyes) \
&& at_fn_check_skip 77 "$at_srcdir/get-data-spreadsheet.at:158"
cat >minimal3.gnumeric <<'_ATEOF'
Sheet1
Sheet2
Sheet3
Sheet1
2
3
Print_Area
#REF!
A1
Sheet_Title
"Sheet1"
A1
Name
x
y
Sheet One
1
2
foo
3
4
bar
5
6
Sheet2
2
2
Print_Area
#REF!
A1
Sheet_Title
"Sheet2"
A1
Comment
DOB
wealth
Sheet Two
24/5/1966
0.02
wee
37145
3000
Sheet3
2
2
Print_Area
#REF!
A1
Sheet_Title
"Sheet3"
A1
3
4
5
6
7
8
9
10
11
_ATEOF
cat >gnum.sps <<'_ATEOF'
GET DATA
/TYPE=GNM
/FILE='minimal3.gnumeric'
/SHEET=index 3
/READNAMES=off
.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:293: pspp -O format=csv gnum.sps"
at_fn_check_prepare_trace "get-data-spreadsheet.at:293"
( $at_check_trace; pspp -O format=csv gnum.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
VAR001,VAR002,VAR003
3 ,4.00,5.00
6 ,7.00,8.00
9 ,10.00,11.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:293"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_226
#AT_START_227
at_fn_group_banner 227 'get-data-spreadsheet.at:306' \
"GET DATA /TYPE=GNM assert-fail" " " 28
at_xfail=no
(
$as_echo "227. $at_setup_line: testing $at_desc ..."
$at_traceon
$as_echo "get-data-spreadsheet.at:307" >"$at_check_line_file"
(test n$GNM_READ_SUPPORT != nyes) \
&& at_fn_check_skip 77 "$at_srcdir/get-data-spreadsheet.at:307"
cat >read.sps <<'_ATEOF'
GET DATA
/TYPE=GNM
/FILE='crash.gnumeric'
.
list.
_ATEOF
cat >crash.gnumeric <<'_ATEOF'
Sheet1
Sheet1
2
4
one
two
1
2
1
2
1
2
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:351: pspp -O format=csv read.sps"
at_fn_check_prepare_trace "get-data-spreadsheet.at:351"
( $at_check_trace; pspp -O format=csv read.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:351"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_227
#AT_START_228
at_fn_group_banner 228 'get-data-spreadsheet.at:360' \
"GET DATA /TYPE=ODS with CELLRANGE" " " 29
at_xfail=no
(
$as_echo "228. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:360: cp \$top_srcdir/tests/language/data-io/test.ods test.ods"
at_fn_check_prepare_dynamic "cp $top_srcdir/tests/language/data-io/test.ods test.ods" "get-data-spreadsheet.at:360"
( $at_check_trace; cp $top_srcdir/tests/language/data-io/test.ods test.ods
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:360"
$at_failed && at_fn_log_failure
$at_traceon; }
$as_echo "get-data-spreadsheet.at:360" >"$at_check_line_file"
(test n$ODF_READ_SUPPORT != nyes) \
&& at_fn_check_skip 77 "$at_srcdir/get-data-spreadsheet.at:360"
cat >get-data.sps <<'_ATEOF'
GET DATA /TYPE=ODS /FILE='test.ods' /READNAMES=off /SHEET=name 'This' /CELLRANGE=range 'g9:i13' .
DISPLAY VARIABLES.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:360: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-spreadsheet.at:360"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:360"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:360: cat pspp.csv"
at_fn_check_prepare_trace "get-data-spreadsheet.at:360"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
VAR001,Format: F8.2,1
VAR002,Format: A8,2
VAR003,Format: F8.2,3
Table: Data List
VAR001,VAR002,VAR003
.00,fred ,20.00
1.00,11 ,21.00
2.00,twelve ,22.00
3.00,13 ,23.00
4.00,14 ,24.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:360"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_228
#AT_START_229
at_fn_group_banner 229 'get-data-spreadsheet.at:360' \
"GET DATA /TYPE=ODS with CELLRANGE and READNAMES" "" 29
at_xfail=no
(
$as_echo "229. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:360: cp \$top_srcdir/tests/language/data-io/test.ods test.ods"
at_fn_check_prepare_dynamic "cp $top_srcdir/tests/language/data-io/test.ods test.ods" "get-data-spreadsheet.at:360"
( $at_check_trace; cp $top_srcdir/tests/language/data-io/test.ods test.ods
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:360"
$at_failed && at_fn_log_failure
$at_traceon; }
$as_echo "get-data-spreadsheet.at:360" >"$at_check_line_file"
(test n$ODF_READ_SUPPORT != nyes) \
&& at_fn_check_skip 77 "$at_srcdir/get-data-spreadsheet.at:360"
cat >get-data.sps <<'_ATEOF'
GET DATA /TYPE=ODS /FILE='test.ods' /READNAMES=on /SHEET=name 'This' /CELLRANGE=range 'g8:i13' .
DISPLAY VARIABLES.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:360: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-spreadsheet.at:360"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:360"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:360: cat pspp.csv"
at_fn_check_prepare_trace "get-data-spreadsheet.at:360"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
V1,Format: F8.2,1
V2,Format: A8,2
VAR001,Format: F8.2,3
Table: Data List
V1,V2,VAR001
.00,fred ,20.00
1.00,11 ,21.00
2.00,twelve ,22.00
3.00,13 ,23.00
4.00,14 ,24.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:360"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_229
#AT_START_230
at_fn_group_banner 230 'get-data-spreadsheet.at:360' \
"GET DATA /TYPE=ODS without CELLRANGE" " " 29
at_xfail=no
(
$as_echo "230. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:360: cp \$top_srcdir/tests/language/data-io/test.ods test.ods"
at_fn_check_prepare_dynamic "cp $top_srcdir/tests/language/data-io/test.ods test.ods" "get-data-spreadsheet.at:360"
( $at_check_trace; cp $top_srcdir/tests/language/data-io/test.ods test.ods
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:360"
$at_failed && at_fn_log_failure
$at_traceon; }
$as_echo "get-data-spreadsheet.at:360" >"$at_check_line_file"
(test n$ODF_READ_SUPPORT != nyes) \
&& at_fn_check_skip 77 "$at_srcdir/get-data-spreadsheet.at:360"
cat >get-data.sps <<'_ATEOF'
GET DATA /TYPE=ODS /FILE='test.ods' /SHEET=index 3.
DISPLAY VARIABLES.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:360: pspp -O format=csv get-data.sps"
at_fn_check_prepare_trace "get-data-spreadsheet.at:360"
( $at_check_trace; pspp -O format=csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
name,Format: A8,1
id,Format: F8.2,2
height,Format: F8.2,3
warning: Cannot convert the value in the spreadsheet cell C4 to format (F8.2): Field contents are not numeric.
Table: Data List
name,id,height
fred ,.00,23.40
bert ,1.00,.56
charlie ,2.00,.
dick ,3.00,-34.09
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:360"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_230
#AT_START_231
at_fn_group_banner 231 'get-data-spreadsheet.at:360' \
"GET DATA /TYPE=ODS with missing data" " " 29
at_xfail=no
(
$as_echo "231. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:360: cp \$top_srcdir/tests/language/data-io/test.ods test.ods"
at_fn_check_prepare_dynamic "cp $top_srcdir/tests/language/data-io/test.ods test.ods" "get-data-spreadsheet.at:360"
( $at_check_trace; cp $top_srcdir/tests/language/data-io/test.ods test.ods
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:360"
$at_failed && at_fn_log_failure
$at_traceon; }
$as_echo "get-data-spreadsheet.at:360" >"$at_check_line_file"
(test n$ODF_READ_SUPPORT != nyes) \
&& at_fn_check_skip 77 "$at_srcdir/get-data-spreadsheet.at:360"
cat >get-data.sps <<'_ATEOF'
* This sheet has no data in one of its variables
GET DATA /TYPE=ODS /FILE='test.ods' /READNAMES=on /SHEET=index 5.
DISPLAY VARIABLES.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:360: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-spreadsheet.at:360"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:360"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:360: cat pspp.csv"
at_fn_check_prepare_trace "get-data-spreadsheet.at:360"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
vone,Format: F8.2,1
vtwo,Format: F8.2,2
vthree,Format: A8,3
v4,Format: F8.2,4
Table: Data List
vone,vtwo,vthree,v4
1.00,3.00,,5.00
2.00,4.00,,6.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:360"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_231
#AT_START_232
at_fn_group_banner 232 'get-data-spreadsheet.at:360' \
"GET DATA /TYPE=ODS with no options" " " 29
at_xfail=no
(
$as_echo "232. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:360: cp \$top_srcdir/tests/language/data-io/test.ods test.ods"
at_fn_check_prepare_dynamic "cp $top_srcdir/tests/language/data-io/test.ods test.ods" "get-data-spreadsheet.at:360"
( $at_check_trace; cp $top_srcdir/tests/language/data-io/test.ods test.ods
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:360"
$at_failed && at_fn_log_failure
$at_traceon; }
$as_echo "get-data-spreadsheet.at:360" >"$at_check_line_file"
(test n$ODF_READ_SUPPORT != nyes) \
&& at_fn_check_skip 77 "$at_srcdir/get-data-spreadsheet.at:360"
cat >get-data.sps <<'_ATEOF'
* This sheet is empty
GET DATA /TYPE=ODS /FILE='test.ods'.
DISPLAY DICTIONARY.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:360: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-spreadsheet.at:360"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:360"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_232
#AT_START_233
at_fn_group_banner 233 'get-data-spreadsheet.at:360' \
"GET DATA /TYPE=ODS with empty sheet" " " 29
at_xfail=no
(
$as_echo "233. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:360: cp \$top_srcdir/tests/language/data-io/test.ods test.ods"
at_fn_check_prepare_dynamic "cp $top_srcdir/tests/language/data-io/test.ods test.ods" "get-data-spreadsheet.at:360"
( $at_check_trace; cp $top_srcdir/tests/language/data-io/test.ods test.ods
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:360"
$at_failed && at_fn_log_failure
$at_traceon; }
$as_echo "get-data-spreadsheet.at:360" >"$at_check_line_file"
(test n$ODF_READ_SUPPORT != nyes) \
&& at_fn_check_skip 77 "$at_srcdir/get-data-spreadsheet.at:360"
cat >get-data.sps <<'_ATEOF'
* This sheet is empty
GET DATA /TYPE=ODS /FILE='test.ods' /SHEET=name 'Empty'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:360: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-spreadsheet.at:360"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: Selected sheet or range of spreadsheet \`test.ods' is empty.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:360"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_233
#AT_START_234
at_fn_group_banner 234 'get-data-spreadsheet.at:360' \
"GET DATA /TYPE=ODS with nonexistent sheet" " " 29
at_xfail=no
(
$as_echo "234. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:360: cp \$top_srcdir/tests/language/data-io/test.ods test.ods"
at_fn_check_prepare_dynamic "cp $top_srcdir/tests/language/data-io/test.ods test.ods" "get-data-spreadsheet.at:360"
( $at_check_trace; cp $top_srcdir/tests/language/data-io/test.ods test.ods
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:360"
$at_failed && at_fn_log_failure
$at_traceon; }
$as_echo "get-data-spreadsheet.at:360" >"$at_check_line_file"
(test n$ODF_READ_SUPPORT != nyes) \
&& at_fn_check_skip 77 "$at_srcdir/get-data-spreadsheet.at:360"
cat >get-data.sps <<'_ATEOF'
* This sheet doesnt exist.
GET DATA /TYPE=ODS /FILE='test.ods' /SHEET=name 'foobarxx'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:360: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-spreadsheet.at:360"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: Selected sheet or range of spreadsheet \`test.ods' is empty.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:360"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_234
#AT_START_235
at_fn_group_banner 235 'get-data-spreadsheet.at:363' \
"GET DATA /TYPE=ODS crash" " " 29
at_xfail=no
(
$as_echo "235. $at_setup_line: testing $at_desc ..."
$at_traceon
$as_echo "get-data-spreadsheet.at:364" >"$at_check_line_file"
(test n$ODF_READ_SUPPORT != nyes) \
&& at_fn_check_skip 77 "$at_srcdir/get-data-spreadsheet.at:364"
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:367: cp \$top_srcdir/tests/language/data-io/newone.ods this.ods"
at_fn_check_prepare_dynamic "cp $top_srcdir/tests/language/data-io/newone.ods this.ods" "get-data-spreadsheet.at:367"
( $at_check_trace; cp $top_srcdir/tests/language/data-io/newone.ods this.ods
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:367"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >crash.sps <<'_ATEOF'
GET DATA /TYPE=ODS /FILE='this.ods' /CELLRANGE=RANGE 'A1:C8' /READNAMES=ON
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-spreadsheet.at:374: pspp -O format=csv crash.sps"
at_fn_check_prepare_trace "get-data-spreadsheet.at:374"
( $at_check_trace; pspp -O format=csv crash.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/get-data-spreadsheet.at:374"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_235
#AT_START_236
at_fn_group_banner 236 'get-data-psql.at:124' \
"GET DATA /TYPE=PSQL" " " 30
at_xfail=no
(
$as_echo "236. $at_setup_line: testing $at_desc ..."
$at_traceon
$as_echo "get-data-psql.at:125" >"$at_check_line_file"
(test "$PSQL_SUPPORT" = no) \
&& at_fn_check_skip 77 "$at_srcdir/get-data-psql.at:125"
PATH=$PG_PATH:$PATH
export PATH
PGDATA=`pwd`/cluster
export PGDATA
PGPORT=$PG_PORT
export PGPORT
socket_dir=`mktemp -d`
PGHOST="$socket_dir"
export PGHOST
{ set +x
$as_echo "$at_srcdir/get-data-psql.at:125: initdb -A trust"
at_fn_check_prepare_trace "get-data-psql.at:125"
( $at_check_trace; initdb -A trust
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/get-data-psql.at:125"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-psql.at:125: pg_ctl start -w -o \"-k \$socket_dir -h ''\""
at_fn_check_prepare_dynamic "pg_ctl start -w -o \"-k $socket_dir -h ''\"" "get-data-psql.at:125"
( $at_check_trace; pg_ctl start -w -o "-k $socket_dir -h ''"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/get-data-psql.at:125"
$at_failed && at_fn_log_failure
$at_traceon; }
trap 'pg_ctl stop -W -o "-k $socket_dir -h ''"' 0
{ set +x
$as_echo "$at_srcdir/get-data-psql.at:125: createdb -h \"\$socket_dir\" -p \$PG_PORT \$PG_DBASE"
at_fn_check_prepare_dynamic "createdb -h \"$socket_dir\" -p $PG_PORT $PG_DBASE" "get-data-psql.at:125"
( $at_check_trace; createdb -h "$socket_dir" -p $PG_PORT $PG_DBASE
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/get-data-psql.at:125"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >populate.sql <<'_ATEOF'
CREATE TABLE empty (a int, b date, c numeric(23, 4));
-- a largeish table to check big queries work ok.
CREATE TABLE large (x int);
INSERT INTO large (select * from generate_series(1, 1000));
CREATE TABLE thing (
bool bool ,
bytea bytea ,
char char ,
int8 int8 ,
int2 int2 ,
int4 int4 ,
numeric numeric(50,6) ,
text text ,
oid oid ,
float4 float4 ,
float8 float8 ,
money money ,
pbchar bpchar ,
varchar varchar ,
date date ,
time time ,
timestamp timestamp ,
timestamptz timestamptz ,
interval interval ,
timetz timetz
);
INSERT INTO thing VALUES (
false,
'0',
'a',
'0',
0,
0,
-256.098,
'this-long-text',
0,
0,
0,
'0.01',
'a',
'A',
'1-Jan-2000',
'00:00',
'January 8 04:05:06 1999',
'January 8 04:05:06 1999 PST',
'1 minutes',
'10:09 UTC+4'
);
INSERT INTO thing VALUES (
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null
);
INSERT INTO thing VALUES (
true,
'1',
'b',
'1',
1,
1,
65535.00001,
'that-long-text',
1,
1,
1,
'1.23',
'b',
'B',
'10-Jan-1963',
'01:05:02',
'10-Jan-1963 23:58:00',
'10-Jan-1963 23:58:00 CET',
'2 year 1 month 12 days 1 hours 3 minutes 4 seconds',
'01:05:02 UTC-7'
);
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-psql.at:125: psql -h \"\$socket_dir\" -p \$PG_PORT \$PG_DBASE < populate.sql"
at_fn_check_prepare_dynamic "psql -h \"$socket_dir\" -p $PG_PORT $PG_DBASE < populate.sql" "get-data-psql.at:125"
( $at_check_trace; psql -h "$socket_dir" -p $PG_PORT $PG_DBASE < populate.sql
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/get-data-psql.at:125"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-psql.at:128: cat > ordinary-query.sps < ordinary-query.sps <>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-psql.at:128"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-psql.at:139: pspp -o pspp.csv ordinary-query.sps"
at_fn_check_prepare_trace "get-data-psql.at:139"
( $at_check_trace; pspp -o pspp.csv ordinary-query.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-psql.at:139"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-psql.at:140: cat pspp.csv"
at_fn_check_prepare_trace "get-data-psql.at:140"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
bool,Format: F8.2,1
bytea,Format: AHEX2,2
char,Format: A8,3
int8,Format: F8.2,4
int2,Format: F8.2,5
int4,Format: F8.2,6
numeric,Format: E40.6,7
text,Format: A16,8
oid,Format: F8.2,9
float4,Format: F8.2,10
float8,Format: F8.2,11
money,Format: DOLLAR8.2,12
pbchar,Format: A8,13
varchar,Format: A8,14
date,Format: DATE11,15
time,Format: TIME11.0,16
timestamp,Format: DATETIME22.0,17
timestamptz,Format: DATETIME22.0,18
interval,Format: DTIME13.0,19
interval_months,Format: F3.0,20
timetz,Format: TIME11.0,21
timetz_zone,Format: F8.2,22
Table: Data List
bool,bytea,char,int8,int2,int4,numeric,text,oid,float4,float8,money,pbchar,varchar,date,time,timestamp,timestamptz,interval,interval_months,timetz,timetz_zone
.00,30,a ,.00,.00,.00,-2.560980E+002,this-long-text ,.00,.00,.00,\$.01,a ,A ,01-JAN-2000,0:00:00,08-JAN-1999 04:05:06,08-JAN-1999 12:05:06,0 00:01:00,0,10:09:00,4.00
. ,20,,. ,. ,. ,. ,,. ,. ,. ,. ,,,.,.,.,.,.,.,.,.
1.00,31,b ,1.00,1.00,1.00,6.553500E+004,that-long-text ,.00,1.00,1.00,\$1.23,b ,B ,10-JAN-1963,1:05:02,10-JAN-1963 23:58:00,10-JAN-1963 22:58:00,12 01:03:04,25,1:05:02,-7.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-psql.at:140"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-psql.at:173: cat > empty-result.sps < empty-result.sps <>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-psql.at:173"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-psql.at:184: pspp -o pspp.csv empty-result.sps"
at_fn_check_prepare_trace "get-data-psql.at:184"
( $at_check_trace; pspp -o pspp.csv empty-result.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-psql.at:184"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-psql.at:185: cat pspp.csv"
at_fn_check_prepare_trace "get-data-psql.at:185"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
a,Format: F8.2,1
b,Format: DATE11,2
c,Format: E40.2,3
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-psql.at:185"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-psql.at:193: cat > large-result.sps < 1).
LIST.
TEMPORARY.
N OF CASES 6.
LIST.
SORT CASES BY x (D).
TEMPORARY.
N OF CASES 6.
LIST.
EOF
"
at_fn_check_prepare_notrace 'an embedded newline' "get-data-psql.at:193"
( $at_check_trace; cat > large-result.sps < 1).
LIST.
TEMPORARY.
N OF CASES 6.
LIST.
SORT CASES BY x (D).
TEMPORARY.
N OF CASES 6.
LIST.
EOF
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-psql.at:193"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-psql.at:217: pspp -o pspp.csv large-result.sps"
at_fn_check_prepare_trace "get-data-psql.at:217"
( $at_check_trace; pspp -o pspp.csv large-result.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-psql.at:217"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-psql.at:218: cat pspp.csv"
at_fn_check_prepare_trace "get-data-psql.at:218"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
x,diff
1.00,.
2.00,1.00
3.00,1.00
4.00,1.00
5.00,1.00
6.00,1.00
Table: Data List
x,diff
1000.00,1.00
999.00,1.00
998.00,1.00
997.00,1.00
996.00,1.00
995.00,1.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-psql.at:218"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >all-null-string.sql <<'_ATEOF'
-- a table which has a text field containing only null, or zero
-- length entries.
CREATE TABLE foo (int4 int4, text text);
INSERT INTO foo VALUES ('12', '');
INSERT INTO foo VALUES (null, '');
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-psql.at:250: psql -h \"\$socket_dir\" -p \$PG_PORT \$PG_DBASE < all-null-string.sql"
at_fn_check_prepare_dynamic "psql -h \"$socket_dir\" -p $PG_PORT $PG_DBASE < all-null-string.sql" "get-data-psql.at:250"
( $at_check_trace; psql -h "$socket_dir" -p $PG_PORT $PG_DBASE < all-null-string.sql
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/get-data-psql.at:250"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-psql.at:253: cat > get-data.sps < get-data.sps <>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-psql.at:253"
$at_failed && at_fn_log_failure \
"get-data.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-psql.at:264: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-psql.at:264"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-psql.at:264"
$at_failed && at_fn_log_failure \
"get-data.sps"
$at_traceon; }
rm -rf "$socket_dir"
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_236
#AT_START_237
at_fn_group_banner 237 'get-data-txt.at:7' \
"GET DATA /TYPE=TXT with explicit delimiters" " " 31
at_xfail=no
(
$as_echo "237. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >get-data.sps <<'_ATEOF'
get data /type=txt /file=inline /delimiters="|X"
/variables=A f7.2 B f7.2 C f7.2 D f7.2.
begin data.
1|23X45|2.03
2X22|34|23|
3|34|34X34
end data.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:19: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-txt.at:19"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:19"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:20: cat pspp.csv"
at_fn_check_prepare_trace "get-data-txt.at:20"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
A,B,C,D
1.00,23.00,45.00,2.03
2.00,22.00,34.00,23.00
3.00,34.00,34.00,34.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:20"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_237
#AT_START_238
at_fn_group_banner 238 'get-data-txt.at:29' \
"GET DATA /TYPE=TXT with FIRSTCASE" " " 31
at_xfail=no
(
$as_echo "238. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >get-data.sps <<'_ATEOF'
get data /type=txt /file=inline /delimiters=', ' /delcase=variables 4
/firstcase=2 /variables=A f7.2 B f7.2 C f7.2 D f7.2.
begin data.
# This record is ignored.
,1,2,3
,4,,5
6
7,
8 9
0,1,,,
,,,,
2
3
4
5
end data.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:53: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-txt.at:53"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:53"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:54: cat pspp.csv"
at_fn_check_prepare_trace "get-data-txt.at:54"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
A,B,C,D
. ,1.00,2.00,3.00
. ,4.00,. ,5.00
6.00,7.00,. ,8.00
9.00,.00,1.00,.
. ,. ,. ,.
. ,. ,. ,2.00
. ,3.00,4.00,5.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:54"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_238
#AT_START_239
at_fn_group_banner 239 'get-data-txt.at:67' \
"GET DATA /TYPE=TXT with FIRSTCASE and tab delimiter" "" 31
at_xfail=no
(
$as_echo "239. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >get-data.sps <<'_ATEOF'
get data /type=txt /file=inline /delimiters='\t' /delcase=variables 4
/firstcase=3 /variables=A f7.2 B f7.2 C f7.2 D f7.2.
begin data.
# These records
# are skipped.
1 2 3 4
1 2 3 4
1 2 4
1 2 4
1 3 4
1 3 4
1 4
1 4
2 3 4
2 3 4
2 4
2 4
3 4
3 4
4
4
end data.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:93: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-txt.at:93"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:93"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:94: cat pspp.csv"
at_fn_check_prepare_trace "get-data-txt.at:94"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
A,B,C,D
1.00,2.00,3.00,4.00
1.00,2.00,3.00,4.00
1.00,2.00,. ,4.00
1.00,2.00,. ,4.00
1.00,. ,3.00,4.00
1.00,. ,3.00,4.00
1.00,. ,. ,4.00
1.00,. ,. ,4.00
. ,2.00,3.00,4.00
. ,2.00,3.00,4.00
. ,2.00,. ,4.00
. ,2.00,. ,4.00
. ,. ,3.00,4.00
. ,. ,3.00,4.00
. ,. ,. ,4.00
. ,. ,. ,4.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:94"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_239
#AT_START_240
at_fn_group_banner 240 'get-data-txt.at:116' \
"GET DATA /TYPE=TXT with multiple records per case" "" 31
at_xfail=no
(
$as_echo "240. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >get-data.sps <<'_ATEOF'
get data /type=txt /file=inline /arrangement=fixed /fixcase=3 /variables=
/1 start 0-19 adate8
/2 end 0-19 adate
/3 count 0-2 f.
begin data.
07-22-2007
10-06-2007
321
07-14-1789
08-26-1789
4
01-01-1972
12-31-1999
682
end data.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:135: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-txt.at:135"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:135"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:136: cat pspp.csv"
at_fn_check_prepare_trace "get-data-txt.at:136"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
start,end,count
07/22/07,10/06/2007,321
********,08/26/1789,4
01/01/72,12/31/1999,682
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:136"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_240
#AT_START_241
at_fn_group_banner 241 'get-data-txt.at:145' \
"GET DATA /TYPE=TXT with empty trailing record" " " 31
at_xfail=no
(
$as_echo "241. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >get-data.sps <<'_ATEOF'
get data /type=txt /file=inline /arrangement=fixed /fixcase=2 /variables=
/1 x 0 f
y 1 f.
begin data.
12
34
56
78
90
end data.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:164: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-txt.at:164"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:164"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:165: cat pspp.csv"
at_fn_check_prepare_trace "get-data-txt.at:165"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
x,y
1,2
3,4
5,6
7,8
9,0
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:165"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_241
#AT_START_242
at_fn_group_banner 242 'get-data-txt.at:178' \
"GET DATA /TYPE=TXT password example" " " 31
at_xfail=no
(
$as_echo "242. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >passwd.data <<'_ATEOF'
root:$1$nyeSP5gD$pDq/:0:0:,,,:/root:/bin/bash
blp:$1$BrP/pFg4$g7OG:1000:1000:Ben Pfaff,,,:/home/blp:/bin/bash
john:$1$JBuq/Fioq$g4A:1001:1001:John Darrington,,,:/home/john:/bin/bash
jhs:$1$D3li4hPL$88X1:1002:1002:Jason Stover,,,:/home/jhs:/bin/csh
_ATEOF
cat >passwd.sps <<'_ATEOF'
GET DATA /TYPE=TXT /FILE='passwd.data' /DELIMITERS=':'
/VARIABLES=username A20
password A40
uid F10
gid F10
gecos A40
home A40
shell A40.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:196: pspp -o pspp.csv passwd.sps"
at_fn_check_prepare_trace "get-data-txt.at:196"
( $at_check_trace; pspp -o pspp.csv passwd.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:196"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:197: cat pspp.csv"
at_fn_check_prepare_trace "get-data-txt.at:197"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
username,password,uid,gid,gecos,home,shell
root ,\$1\$nyeSP5gD\$pDq/ ,0,0,\",,, \",/root ,/bin/bash
blp ,\$1\$BrP/pFg4\$g7OG ,1000,1000,\"Ben Pfaff,,, \",/home/blp ,/bin/bash
john ,\$1\$JBuq/Fioq\$g4A ,1001,1001,\"John Darrington,,, \",/home/john ,/bin/bash
jhs ,\$1\$D3li4hPL\$88X1 ,1002,1002,\"Jason Stover,,, \",/home/jhs ,/bin/csh
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:197"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_242
#AT_START_243
at_fn_group_banner 243 'get-data-txt.at:209' \
"GET DATA /TYPE=TXT cars example" " " 31
at_xfail=no
(
$as_echo "243. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >cars.data <<'_ATEOF'
model year mileage price type age
Civic 2002 29883 15900 Si 2
Civic 2003 13415 15900 EX 1
Civic 1992 107000 3800 n/a 12
Accord 2002 26613 17900 EX 1
_ATEOF
cat >cars.sps <<'_ATEOF'
GET DATA /TYPE=TXT /FILE='cars.data' /DELIMITERS=' ' /FIRSTCASE=2
/VARIABLES=model A8
year F4
mileage F6
price F5
type A4
age F2.
LIST.
GET DATA /TYPE=TXT /FILE='cars.data' /ARRANGEMENT=FIXED /FIRSTCASE=2
/VARIABLES=model 0-7 A
year 8-15 F
mileage 16-23 F
price 24-31 F
type 32-39 A
age 40-47 F.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:236: pspp -o pspp.csv cars.sps"
at_fn_check_prepare_trace "get-data-txt.at:236"
( $at_check_trace; pspp -o pspp.csv cars.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:236"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:237: cat pspp.csv"
at_fn_check_prepare_trace "get-data-txt.at:237"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
model,year,mileage,price,type,age
Civic ,2002,29883,15900,Si ,2
Civic ,2003,13415,15900,EX ,1
Civic ,1992,107000,3800,n/a ,12
Accord ,2002,26613,17900,EX ,1
Table: Data List
model,year,mileage,price,type,age
Civic ,2002,29883,15900,Si ,2
Civic ,2003,13415,15900,EX ,1
Civic ,1992,107000,3800,n/a ,12
Accord ,2002,26613,17900,EX ,1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:237"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_243
#AT_START_244
at_fn_group_banner 244 'get-data-txt.at:256' \
"GET DATA /TYPE=TXT pets example" " " 31
at_xfail=no
(
$as_echo "244. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >pets.data <<'_ATEOF'
'Pet''s Name', "Age", "Color", "Date Received", "Price", "Height", "Type"
, (Years), , , (Dollars), ,
"Rover", 4.5, Brown, "12 Feb 2004", 80, '1''4"', "Dog"
"Charlie", , Gold, "5 Apr 2007", 12.3, "3""", "Fish"
"Molly", 2, Black, "12 Dec 2006", 25, '5"', "Cat"
"Gilly", , White, "10 Apr 2007", 10, "3""", "Guinea Pig"
_ATEOF
cat >pets.sps <<'_ATEOF'
GET DATA /TYPE=TXT /FILE='pets.data' /DELIMITERS=', ' /QUALIFIER='''"' /ESCAPE
/FIRSTCASE=3
/VARIABLES=name A10
age F3.1
color A5
received EDATE10
price F5.2
height a5
type a10.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:277: pspp -o pspp.csv pets.sps"
at_fn_check_prepare_trace "get-data-txt.at:277"
( $at_check_trace; pspp -o pspp.csv pets.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:277"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:278: cat pspp.csv"
at_fn_check_prepare_trace "get-data-txt.at:278"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
name,age,color,received,price,height,type
Rover ,4.5,Brown,12.02.2004,80.00,\"1'4\"\" \",Dog
Charlie ,. ,Gold ,05.04.2007,12.30,\"3\"\" \",Fish
Molly ,2.0,Black,12.12.2006,25.00,\"5\"\" \",Cat
Gilly ,. ,White,10.04.2007,10.00,\"3\"\" \",Guinea Pig
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:278"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_244
#AT_START_245
at_fn_group_banner 245 'get-data-txt.at:289' \
"GET DATA /TYPE=TXT with IMPORTCASES" " " 31
at_xfail=no
(
$as_echo "245. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:290: \$PERL > test.data <<'EOF'
for (\$i = 1; \$i <= 100; \$i++) {
printf \"%02d\\n\", \$i;
}
EOF
"
at_fn_check_prepare_notrace 'an embedded newline' "get-data-txt.at:290"
( $at_check_trace; $PERL > test.data <<'EOF'
for ($i = 1; $i <= 100; $i++) {
printf "%02d\n", $i;
}
EOF
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:290"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >get-data.sps <<'_ATEOF'
get data /type=txt /file='test.data' /importcases=first 10 /variables x f8.0.
list.
get data /type=txt /file='test.data' /importcases=percent 1 /variables x f8.0.
list.
get data /type=txt /file='test.data' /importcases=percent 35 /variables x f8.0.
list.
get data /type=txt /file='test.data' /importcases=percent 95 /variables x f8.0.
list.
get data /type=txt /file='test.data' /importcases=percent 100 /variables x f8.0.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:312: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-txt.at:312"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:312"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:313: cat pspp.csv"
at_fn_check_prepare_trace "get-data-txt.at:313"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
x
1
2
3
4
5
6
7
8
9
10
Table: Data List
x
1
2
Table: Data List
x
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
Table: Data List
x
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
Table: Data List
x
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
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:313"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_245
#AT_START_246
at_fn_group_banner 246 'get-data-txt.at:575' \
"GET DATA /TYPE=TXT with ENCODING subcommand" " " 31
at_xfail=no
(
$as_echo "246. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:576: i18n-test supports_encodings UTF-8 ISO-8859-1"
at_fn_check_prepare_trace "get-data-txt.at:576"
( $at_check_trace; i18n-test supports_encodings UTF-8 ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:576"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >get-data.sps <<'_ATEOF'
set locale='utf-8'
get data /type=txt /file='data.txt' /encoding='iso-8859-1'
/delimiters="," /variables=s a8.
list.
_ATEOF
printf '\351' > data.txt # é in ISO-8859-1.
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:584: pspp -o pspp.csv get-data.sps"
at_fn_check_prepare_trace "get-data-txt.at:584"
( $at_check_trace; pspp -o pspp.csv get-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:584"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get-data-txt.at:585: cat pspp.csv"
at_fn_check_prepare_trace "get-data-txt.at:585"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
s
é
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get-data-txt.at:585"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_246
#AT_START_247
at_fn_group_banner 247 'get.at:5' \
"GET data works in multiple procedures" " " 32
at_xfail=no
(
$as_echo "247. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >get.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /LOCATION * EDITOR * SHELL * FREQ * .
BEGIN DATA.
1.00 1.00 1.0 2.00
1.00 1.00 2.0 30.00
1.00 2.00 1.0 8.00
1.00 2.00 2.0 20.00
2.00 1.00 1.0 2.00
2.00 1.00 2.0 22.00
2.00 2.00 1.0 1.00
2.00 2.00 2.0 3.00
END DATA.
SAVE /OUTFILE='foo.sav'.
GET /FILE='foo.sav'.
* This one's ok
LIST.
* But this one get rubbish
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get.at:29: pspp -o pspp.csv get.sps"
at_fn_check_prepare_trace "get.at:29"
( $at_check_trace; pspp -o pspp.csv get.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get.at:29"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get.at:30: cat pspp.csv"
at_fn_check_prepare_trace "get.at:30"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
LOCATION,EDITOR,SHELL,FREQ
1.00,1.00,1.00,2.00
1.00,1.00,2.00,30.00
1.00,2.00,1.00,8.00
1.00,2.00,2.00,20.00
2.00,1.00,1.00,2.00
2.00,1.00,2.00,22.00
2.00,2.00,1.00,1.00
2.00,2.00,2.00,3.00
Table: Data List
LOCATION,EDITOR,SHELL,FREQ
1.00,1.00,1.00,2.00
1.00,1.00,2.00,30.00
1.00,2.00,1.00,8.00
1.00,2.00,2.00,20.00
2.00,1.00,1.00,2.00
2.00,1.00,2.00,22.00
2.00,2.00,1.00,1.00
2.00,2.00,2.00,3.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get.at:30"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_247
#AT_START_248
at_fn_group_banner 248 'get.at:56' \
"GET nonexistent file doesn't crash" " " 32
at_xfail=no
(
$as_echo "248. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/get.at:59: echo \"GET /FILE='nonexistent.sav'.\" | pspp -O format=csv"
at_fn_check_prepare_notrace 'a shell pipeline' "get.at:59"
( $at_check_trace; echo "GET /FILE='nonexistent.sav'." | pspp -O format=csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: An error occurred while opening \`nonexistent.sav': No such file or directory.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/get.at:59"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_248
#AT_START_249
at_fn_group_banner 249 'get.at:90' \
"GET with /KEEP=ALL crashes -- uncompressed" " " 32
at_xfail=no
(
$as_echo "249. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >get.sps <<'_ATEOF'
DATA LIST LIST NOTABLE
/a b c d e f g h i j k l m n o p q r s t u v w x y z (F2.0).
BEGIN DATA.
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
END DATA.
LIST.
SAVE OUTFILE='test.sav'/uncompressed.
GET FILE='test.sav'/KEEP=x y z all.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get.at:90: pspp -o pspp.csv get.sps"
at_fn_check_prepare_trace "get.at:90"
( $at_check_trace; pspp -o pspp.csv get.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get.at:90"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get.at:90: cat pspp.csv"
at_fn_check_prepare_trace "get.at:90"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z
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
Table: Data List
x,y,z,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w
24,25,26,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get.at:90"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_249
#AT_START_250
at_fn_group_banner 250 'get.at:91' \
"GET with /KEEP=ALL crashes -- compressed" " " 32
at_xfail=no
(
$as_echo "250. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >get.sps <<'_ATEOF'
DATA LIST LIST NOTABLE
/a b c d e f g h i j k l m n o p q r s t u v w x y z (F2.0).
BEGIN DATA.
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
END DATA.
LIST.
SAVE OUTFILE='test.sav'/compressed.
GET FILE='test.sav'/KEEP=x y z all.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get.at:91: pspp -o pspp.csv get.sps"
at_fn_check_prepare_trace "get.at:91"
( $at_check_trace; pspp -o pspp.csv get.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get.at:91"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/get.at:91: cat pspp.csv"
at_fn_check_prepare_trace "get.at:91"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z
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
Table: Data List
x,y,z,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w
24,25,26,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/get.at:91"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_250
#AT_START_251
at_fn_group_banner 251 'get.at:95' \
"GET data no type" " " 32
at_xfail=no
(
$as_echo "251. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >get.sps <<'_ATEOF'
get data /file='anything'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/get.at:100: pspp get.sps"
at_fn_check_prepare_trace "get.at:100"
( $at_check_trace; pspp get.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/get.at:100"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_251
#AT_START_252
at_fn_group_banner 252 'inpt-pgm.at:5' \
"INPUT PROGRAM invalid syntax crash" " " 33
at_xfail=no
(
$as_echo "252. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input-program.sps <<'_ATEOF'
INPUT PROGRAM.
DATA LIST NOTABLE /a 1-9.
BEGIN DATA
123456789
END DATA.
END INPUT PROGRAM.
_ATEOF
{ set +x
$as_echo "$at_srcdir/inpt-pgm.at:14: pspp -O format=csv input-program.sps"
at_fn_check_prepare_trace "inpt-pgm.at:14"
( $at_check_trace; pspp -O format=csv input-program.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "input-program.sps:3: error: BEGIN DATA: BEGIN DATA is not allowed inside INPUT PROGRAM.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/inpt-pgm.at:14"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_252
#AT_START_253
at_fn_group_banner 253 'inpt-pgm.at:21' \
"INPUT PROGRAM invalid syntax crash" " " 33
at_xfail=no
(
$as_echo "253. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input-program.sps <<'_ATEOF'
INPUT PROGRAM.
DATA LIST LIST NOTABLE /x.
END FILE.
END INPUT PROGRAM.
DESCRIPTIVES x.
_ATEOF
{ set +x
$as_echo "$at_srcdir/inpt-pgm.at:30: pspp -O format=csv input-program.sps"
at_fn_check_prepare_trace "inpt-pgm.at:30"
( $at_check_trace; pspp -O format=csv input-program.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: DESCRIPTIVES: Syntax error at end of input: expecting BEGIN.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/inpt-pgm.at:30"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_253
#AT_START_254
at_fn_group_banner 254 'inpt-pgm.at:36' \
"INPUT PROGRAM infinite loop" " " 33
at_xfail=no
(
$as_echo "254. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input-program.sps <<'_ATEOF'
INPUT PROGRAM.
STRING firstname lastname (a24) / address (a80).
END INPUT PROGRAM.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/inpt-pgm.at:43: pspp -O format=csv input-program.sps"
at_fn_check_prepare_trace "inpt-pgm.at:43"
( $at_check_trace; pspp -O format=csv input-program.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "input-program.sps:3: error: Input program must contain DATA LIST or END FILE.
input-program.sps:4: error: EXECUTE: EXECUTE is allowed only after the active dataset has been defined.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/inpt-pgm.at:43"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_254
#AT_START_255
at_fn_group_banner 255 'inpt-pgm.at:53' \
"INPUT PROGRAM with VECTOR and EXECUTE" " " 33
at_xfail=no
(
$as_echo "255. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input-program.sps <<'_ATEOF'
INPUT PROGRAM.
VECTOR vec(5).
LOOP #c = 1 to 10.
LOOP #v = 1 to 5.
COMPUTE vec(#v) = #v.
END LOOP.
END CASE.
END LOOP.
END FILE.
END INPUT PROGRAM.
DATASET COPY x.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/inpt-pgm.at:68: pspp -O format=csv input-program.sps"
at_fn_check_prepare_trace "inpt-pgm.at:68"
( $at_check_trace; pspp -O format=csv input-program.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
vec1,vec2,vec3,vec4,vec5
1.00,2.00,3.00,4.00,5.00
1.00,2.00,3.00,4.00,5.00
1.00,2.00,3.00,4.00,5.00
1.00,2.00,3.00,4.00,5.00
1.00,2.00,3.00,4.00,5.00
1.00,2.00,3.00,4.00,5.00
1.00,2.00,3.00,4.00,5.00
1.00,2.00,3.00,4.00,5.00
1.00,2.00,3.00,4.00,5.00
1.00,2.00,3.00,4.00,5.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/inpt-pgm.at:68"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_255
#AT_START_256
at_fn_group_banner 256 'list.at:3' \
"LIST plain cases" " " 34
at_xfail=no
(
$as_echo "256. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data.txt <<'_ATEOF'
18 1
19 7
20 26
21 76
22 57
23 58
24 38
25 38
26 30
27 21
28 23
_ATEOF
cat >list.sps <<'_ATEOF'
DATA LIST FILE='data.txt'/avar 1-5 bvar 6-10.
WEIGHT BY bvar.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/list.at:22: pspp -o pspp.csv list.sps"
at_fn_check_prepare_trace "list.at:22"
( $at_check_trace; pspp -o pspp.csv list.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/list.at:22"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/list.at:23: cat pspp.csv"
at_fn_check_prepare_trace "list.at:23"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading 1 record from \`data.txt'.
Variable,Record,Columns,Format
avar,1,1- 5,F5.0
bvar,1,6- 10,F5.0
Table: Data List
avar,bvar
18,1
19,7
20,26
21,76
22,57
23,58
24,38
25,38
26,30
27,21
28,23
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/list.at:23"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_256
#AT_START_257
at_fn_group_banner 257 'list.at:45' \
"LIST numbered cases" " " 34
at_xfail=no
(
$as_echo "257. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data.txt <<'_ATEOF'
18 1
19 7
20 26
21 76
22 57
23 58
24 38
25 38
26 30
27 21
28 23
_ATEOF
cat >list.sps <<'_ATEOF'
DATA LIST FILE='data.txt'/avar 1-5 bvar 6-10.
WEIGHT BY bvar.
LIST/FORMAT NUMBERED.
_ATEOF
{ set +x
$as_echo "$at_srcdir/list.at:64: pspp -o pspp.csv list.sps"
at_fn_check_prepare_trace "list.at:64"
( $at_check_trace; pspp -o pspp.csv list.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/list.at:64"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/list.at:65: cat pspp.csv"
at_fn_check_prepare_trace "list.at:65"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading 1 record from \`data.txt'.
Variable,Record,Columns,Format
avar,1,1- 5,F5.0
bvar,1,6- 10,F5.0
Table: Data List
Case Number,avar,bvar
1,18,1
2,19,7
3,20,26
4,21,76
5,22,57
6,23,58
7,24,38
8,25,38
9,26,30
10,27,21
11,28,23
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/list.at:65"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_257
#AT_START_258
at_fn_group_banner 258 'list.at:89' \
"LIST with split file" " " 34
at_xfail=no
(
$as_echo "258. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data.txt <<'_ATEOF'
a 1
a 2
a 3
b 1
c 4
c 5
_ATEOF
cat >list.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/s (a1) n.
SPLIT FILE BY s.
LIST n.
_ATEOF
{ set +x
$as_echo "$at_srcdir/list.at:103: pspp -o pspp.csv list.sps"
at_fn_check_prepare_trace "list.at:103"
( $at_check_trace; pspp -o pspp.csv list.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/list.at:103"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/list.at:104: cat pspp.csv"
at_fn_check_prepare_trace "list.at:104"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Value,Label
s,a,
Table: Data List
n
1.00
2.00
3.00
Variable,Value,Label
s,b,
Table: Data List
n
1.00
Variable,Value,Label
s,c,
Table: Data List
n
4.00
5.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/list.at:104"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_258
#AT_START_259
at_fn_group_banner 259 'list.at:131' \
"LIST lots of variables" " " 34
at_xfail=no
(
$as_echo "259. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data.txt <<'_ATEOF'
767532466348513789073483106409
888693089424177542378334186760
492611507909187152726427852242
819848892023195875879332001491
452777898709563729845541516650
239961967077732760663525115073
_ATEOF
cat >list.sps <<'_ATEOF'
DATA LIST FILE='data.txt' NOTABLE/x01 to x30 1-30.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/list.at:144: pspp -o pspp.csv list.sps"
at_fn_check_prepare_trace "list.at:144"
( $at_check_trace; pspp -o pspp.csv list.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/list.at:144"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/list.at:145: cat pspp.csv"
at_fn_check_prepare_trace "list.at:145"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
x01,x02,x03,x04,x05,x06,x07,x08,x09,x10,x11,x12,x13,x14,x15,x16,x17,x18,x19,x20,x21,x22,x23,x24,x25,x26,x27,x28,x29,x30
7,6,7,5,3,2,4,6,6,3,4,8,5,1,3,7,8,9,0,7,3,4,8,3,1,0,6,4,0,9
8,8,8,6,9,3,0,8,9,4,2,4,1,7,7,5,4,2,3,7,8,3,3,4,1,8,6,7,6,0
4,9,2,6,1,1,5,0,7,9,0,9,1,8,7,1,5,2,7,2,6,4,2,7,8,5,2,2,4,2
8,1,9,8,4,8,8,9,2,0,2,3,1,9,5,8,7,5,8,7,9,3,3,2,0,0,1,4,9,1
4,5,2,7,7,7,8,9,8,7,0,9,5,6,3,7,2,9,8,4,5,5,4,1,5,1,6,6,5,0
2,3,9,9,6,1,9,6,7,0,7,7,7,3,2,7,6,0,6,6,3,5,2,5,1,1,5,0,7,3
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/list.at:145"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_259
#AT_START_260
at_fn_group_banner 260 'list.at:157' \
"LIST selected cases" " " 34
at_xfail=no
(
$as_echo "260. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data.txt <<'_ATEOF'
7675324663
8886930894
4926115079
8198488920
4527778987
2399619670
1667799691
1623914684
3681393233
6418731145
2284534083
6617637452
9865713582
1163234537
9981663637
6821567746
0952774952
1641790193
3763182871
2046820753
7970620091
4841176017
6949973797
1396285996
0700489524
_ATEOF
cat >list.sps <<'_ATEOF'
DATA LIST FILE='data.txt' NOTABLE/x0 to x9 1-10.
LIST /CASES=FROM 6 TO 20 BY 5.
_ATEOF
{ set +x
$as_echo "$at_srcdir/list.at:189: pspp -o pspp.csv list.sps"
at_fn_check_prepare_trace "list.at:189"
( $at_check_trace; pspp -o pspp.csv list.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/list.at:189"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/list.at:190: cat pspp.csv"
at_fn_check_prepare_trace "list.at:190"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
x0,x1,x2,x3,x4,x5,x6,x7,x8,x9
2,3,9,9,6,1,9,6,7,0
2,2,8,4,5,3,4,0,8,3
6,8,2,1,5,6,7,7,4,6
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/list.at:190"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_260
#AT_START_261
at_fn_group_banner 261 'list.at:201' \
"LIST very long string" " " 34
at_xfail=no
(
$as_echo "261. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >list.sps <<'_ATEOF'
INPUT PROGRAM.
STRING foo (a2000).
+ COMPUTE foo=CONCAT(RPAD('A',1999, 'x'), 'Z').
END CASE.
END FILE.
END INPUT PROGRAM.
EXECUTE.
DISPLAY VARIABLES.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/list.at:216: pspp -o pspp.csv list.sps"
at_fn_check_prepare_trace "list.at:216"
( $at_check_trace; pspp -o pspp.csv list.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/list.at:216"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/list.at:217: cat pspp.csv"
at_fn_check_prepare_trace "list.at:217"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
foo,Format: A2000,1
Table: Data List
foo
AxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxZ
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/list.at:217"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_261
#AT_START_262
at_fn_group_banner 262 'match-files.at:104' \
"MATCH FILES -- system file and system file" " " 35
at_xfail=no
(
$as_echo "262. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data1.txt <<'_ATEOF'
1aB
8aM
3aE
5aG
0aA
5aH
6aI
7aJ
2aD
7aK
1aC
7aL
4aF
_ATEOF
cat >data2.txt <<'_ATEOF'
1bN
3bO
4bP
6bQ
7bR
9bS
_ATEOF
cat >prepare.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='data1.txt' /a b c 1-3 (A).
SAVE OUTFILE='data1.sav'.
DATA LIST NOTABLE FILE='data2.txt' /a b c 1-3 (A).
SAVE OUTFILE='data2.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/match-files.at:104: pspp -O format=csv prepare.sps"
at_fn_check_prepare_trace "match-files.at:104"
( $at_check_trace; pspp -O format=csv prepare.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:104"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/match-files.at:104: test -f data1.sav && test -f data2.sav"
at_fn_check_prepare_trace "match-files.at:104"
( $at_check_trace; test -f data1.sav && test -f data2.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:104"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >expout <<'_ATEOF'
Table: Data List
a,b,c,d,ina,inb,first,last
0,a,A,,1,0,1,1
1,a,B,N,1,1,1,0
1,a,C,,1,0,0,1
2,a,D,,1,0,1,1
3,a,E,O,1,1,1,1
4,a,F,P,1,1,1,1
5,a,G,,1,0,1,0
5,a,H,,1,0,0,1
6,a,I,Q,1,1,1,1
7,a,J,R,1,1,1,0
7,a,K,,1,0,0,0
7,a,L,,1,0,0,1
8,a,M,,1,0,1,1
9,b,,S,0,1,1,1
_ATEOF
cat >match-files.sps <<'_ATEOF'
MATCH FILES
FILE='data1.sav' /IN=ina /SORT
file='data2.sav' /in=inb /rename c=d
/BY a /FIRST=first /LAST=last.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/match-files.at:104: pspp -o pspp.csv match-files.sps"
at_fn_check_prepare_trace "match-files.at:104"
( $at_check_trace; pspp -o pspp.csv match-files.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:104"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/match-files.at:104: cat pspp.csv"
at_fn_check_prepare_trace "match-files.at:104"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:104"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_262
#AT_START_263
at_fn_group_banner 263 'match-files.at:105' \
"MATCH FILES -- system file and active file" " " 35
at_xfail=no
(
$as_echo "263. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data1.txt <<'_ATEOF'
1aB
8aM
3aE
5aG
0aA
5aH
6aI
7aJ
2aD
7aK
1aC
7aL
4aF
_ATEOF
cat >data2.txt <<'_ATEOF'
1bN
3bO
4bP
6bQ
7bR
9bS
_ATEOF
cat >prepare.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='data1.txt' /a b c 1-3 (A).
SAVE OUTFILE='data1.sav'.
DATA LIST NOTABLE FILE='data2.txt' /a b c 1-3 (A).
SAVE OUTFILE='data2.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/match-files.at:105: pspp -O format=csv prepare.sps"
at_fn_check_prepare_trace "match-files.at:105"
( $at_check_trace; pspp -O format=csv prepare.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:105"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/match-files.at:105: test -f data1.sav && test -f data2.sav"
at_fn_check_prepare_trace "match-files.at:105"
( $at_check_trace; test -f data1.sav && test -f data2.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:105"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >expout <<'_ATEOF'
Table: Data List
a,b,c,d,ina,inb,first,last
0,a,A,,1,0,1,1
1,a,B,N,1,1,1,0
1,a,C,,1,0,0,1
2,a,D,,1,0,1,1
3,a,E,O,1,1,1,1
4,a,F,P,1,1,1,1
5,a,G,,1,0,1,0
5,a,H,,1,0,0,1
6,a,I,Q,1,1,1,1
7,a,J,R,1,1,1,0
7,a,K,,1,0,0,0
7,a,L,,1,0,0,1
8,a,M,,1,0,1,1
9,b,,S,0,1,1,1
_ATEOF
cat >match-files.sps <<'_ATEOF'
GET FILE='data2.sav'.
MATCH FILES
FILE='data1.sav' /IN=ina /SORT
file=* /in=inb /rename c=d
/BY a /FIRST=first /LAST=last.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/match-files.at:105: pspp -o pspp.csv match-files.sps"
at_fn_check_prepare_trace "match-files.at:105"
( $at_check_trace; pspp -o pspp.csv match-files.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:105"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/match-files.at:105: cat pspp.csv"
at_fn_check_prepare_trace "match-files.at:105"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:105"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_263
#AT_START_264
at_fn_group_banner 264 'match-files.at:106' \
"MATCH FILES -- active file and system file" " " 35
at_xfail=no
(
$as_echo "264. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data1.txt <<'_ATEOF'
1aB
8aM
3aE
5aG
0aA
5aH
6aI
7aJ
2aD
7aK
1aC
7aL
4aF
_ATEOF
cat >data2.txt <<'_ATEOF'
1bN
3bO
4bP
6bQ
7bR
9bS
_ATEOF
cat >prepare.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='data1.txt' /a b c 1-3 (A).
SAVE OUTFILE='data1.sav'.
DATA LIST NOTABLE FILE='data2.txt' /a b c 1-3 (A).
SAVE OUTFILE='data2.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/match-files.at:106: pspp -O format=csv prepare.sps"
at_fn_check_prepare_trace "match-files.at:106"
( $at_check_trace; pspp -O format=csv prepare.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:106"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/match-files.at:106: test -f data1.sav && test -f data2.sav"
at_fn_check_prepare_trace "match-files.at:106"
( $at_check_trace; test -f data1.sav && test -f data2.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:106"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >expout <<'_ATEOF'
Table: Data List
a,b,c,d,ina,inb,first,last
0,a,A,,1,0,1,1
1,a,B,N,1,1,1,0
1,a,C,,1,0,0,1
2,a,D,,1,0,1,1
3,a,E,O,1,1,1,1
4,a,F,P,1,1,1,1
5,a,G,,1,0,1,0
5,a,H,,1,0,0,1
6,a,I,Q,1,1,1,1
7,a,J,R,1,1,1,0
7,a,K,,1,0,0,0
7,a,L,,1,0,0,1
8,a,M,,1,0,1,1
9,b,,S,0,1,1,1
_ATEOF
cat >match-files.sps <<'_ATEOF'
GET FILE='data1.sav'.
MATCH FILES
FILE=* /IN=ina /SORT
file='data2.sav' /in=inb /rename c=d
/BY a /FIRST=first /LAST=last.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/match-files.at:106: pspp -o pspp.csv match-files.sps"
at_fn_check_prepare_trace "match-files.at:106"
( $at_check_trace; pspp -o pspp.csv match-files.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:106"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/match-files.at:106: cat pspp.csv"
at_fn_check_prepare_trace "match-files.at:106"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:106"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_264
#AT_START_265
at_fn_group_banner 265 'match-files.at:107' \
"MATCH FILES -- system file and system table" " " 35
at_xfail=no
(
$as_echo "265. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data1.txt <<'_ATEOF'
1aB
8aM
3aE
5aG
0aA
5aH
6aI
7aJ
2aD
7aK
1aC
7aL
4aF
_ATEOF
cat >data2.txt <<'_ATEOF'
1bN
3bO
4bP
6bQ
7bR
9bS
_ATEOF
cat >prepare.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='data1.txt' /a b c 1-3 (A).
SAVE OUTFILE='data1.sav'.
DATA LIST NOTABLE FILE='data2.txt' /a b c 1-3 (A).
SAVE OUTFILE='data2.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/match-files.at:107: pspp -O format=csv prepare.sps"
at_fn_check_prepare_trace "match-files.at:107"
( $at_check_trace; pspp -O format=csv prepare.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:107"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/match-files.at:107: test -f data1.sav && test -f data2.sav"
at_fn_check_prepare_trace "match-files.at:107"
( $at_check_trace; test -f data1.sav && test -f data2.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:107"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >expout <<'_ATEOF'
Table: Data List
a,b,c,d,ina,inb,first,last
0,a,A,,1,0,1,1
1,a,B,N,1,1,1,0
1,a,C,N,1,1,0,1
2,a,D,,1,0,1,1
3,a,E,O,1,1,1,1
4,a,F,P,1,1,1,1
5,a,G,,1,0,1,0
5,a,H,,1,0,0,1
6,a,I,Q,1,1,1,1
7,a,J,R,1,1,1,0
7,a,K,R,1,1,0,0
7,a,L,R,1,1,0,1
8,a,M,,1,0,1,1
_ATEOF
cat >match-files.sps <<'_ATEOF'
MATCH FILES
FILE='data1.sav' /IN=ina /SORT
table='data2.sav' /in=inb /rename c=d
/BY a /FIRST=first /LAST=last.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/match-files.at:107: pspp -o pspp.csv match-files.sps"
at_fn_check_prepare_trace "match-files.at:107"
( $at_check_trace; pspp -o pspp.csv match-files.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:107"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/match-files.at:107: cat pspp.csv"
at_fn_check_prepare_trace "match-files.at:107"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:107"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_265
#AT_START_266
at_fn_group_banner 266 'match-files.at:108' \
"MATCH FILES -- system file and active table" " " 35
at_xfail=no
(
$as_echo "266. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data1.txt <<'_ATEOF'
1aB
8aM
3aE
5aG
0aA
5aH
6aI
7aJ
2aD
7aK
1aC
7aL
4aF
_ATEOF
cat >data2.txt <<'_ATEOF'
1bN
3bO
4bP
6bQ
7bR
9bS
_ATEOF
cat >prepare.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='data1.txt' /a b c 1-3 (A).
SAVE OUTFILE='data1.sav'.
DATA LIST NOTABLE FILE='data2.txt' /a b c 1-3 (A).
SAVE OUTFILE='data2.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/match-files.at:108: pspp -O format=csv prepare.sps"
at_fn_check_prepare_trace "match-files.at:108"
( $at_check_trace; pspp -O format=csv prepare.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:108"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/match-files.at:108: test -f data1.sav && test -f data2.sav"
at_fn_check_prepare_trace "match-files.at:108"
( $at_check_trace; test -f data1.sav && test -f data2.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:108"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >expout <<'_ATEOF'
Table: Data List
a,b,c,d,ina,inb,first,last
0,a,A,,1,0,1,1
1,a,B,N,1,1,1,0
1,a,C,N,1,1,0,1
2,a,D,,1,0,1,1
3,a,E,O,1,1,1,1
4,a,F,P,1,1,1,1
5,a,G,,1,0,1,0
5,a,H,,1,0,0,1
6,a,I,Q,1,1,1,1
7,a,J,R,1,1,1,0
7,a,K,R,1,1,0,0
7,a,L,R,1,1,0,1
8,a,M,,1,0,1,1
_ATEOF
cat >match-files.sps <<'_ATEOF'
GET FILE='data2.sav'.
MATCH FILES
FILE='data1.sav' /IN=ina /SORT
table=* /in=inb /rename c=d
/BY a /FIRST=first /LAST=last.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/match-files.at:108: pspp -o pspp.csv match-files.sps"
at_fn_check_prepare_trace "match-files.at:108"
( $at_check_trace; pspp -o pspp.csv match-files.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:108"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/match-files.at:108: cat pspp.csv"
at_fn_check_prepare_trace "match-files.at:108"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:108"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_266
#AT_START_267
at_fn_group_banner 267 'match-files.at:109' \
"MATCH FILES -- active file and system table" " " 35
at_xfail=no
(
$as_echo "267. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data1.txt <<'_ATEOF'
1aB
8aM
3aE
5aG
0aA
5aH
6aI
7aJ
2aD
7aK
1aC
7aL
4aF
_ATEOF
cat >data2.txt <<'_ATEOF'
1bN
3bO
4bP
6bQ
7bR
9bS
_ATEOF
cat >prepare.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='data1.txt' /a b c 1-3 (A).
SAVE OUTFILE='data1.sav'.
DATA LIST NOTABLE FILE='data2.txt' /a b c 1-3 (A).
SAVE OUTFILE='data2.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/match-files.at:109: pspp -O format=csv prepare.sps"
at_fn_check_prepare_trace "match-files.at:109"
( $at_check_trace; pspp -O format=csv prepare.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:109"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/match-files.at:109: test -f data1.sav && test -f data2.sav"
at_fn_check_prepare_trace "match-files.at:109"
( $at_check_trace; test -f data1.sav && test -f data2.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:109"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >expout <<'_ATEOF'
Table: Data List
a,b,c,d,ina,inb,first,last
0,a,A,,1,0,1,1
1,a,B,N,1,1,1,0
1,a,C,N,1,1,0,1
2,a,D,,1,0,1,1
3,a,E,O,1,1,1,1
4,a,F,P,1,1,1,1
5,a,G,,1,0,1,0
5,a,H,,1,0,0,1
6,a,I,Q,1,1,1,1
7,a,J,R,1,1,1,0
7,a,K,R,1,1,0,0
7,a,L,R,1,1,0,1
8,a,M,,1,0,1,1
_ATEOF
cat >match-files.sps <<'_ATEOF'
GET FILE='data1.sav'.
MATCH FILES
FILE=* /IN=ina /SORT
table='data2.sav' /in=inb /rename c=d
/BY a /FIRST=first /LAST=last.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/match-files.at:109: pspp -o pspp.csv match-files.sps"
at_fn_check_prepare_trace "match-files.at:109"
( $at_check_trace; pspp -o pspp.csv match-files.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:109"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/match-files.at:109: cat pspp.csv"
at_fn_check_prepare_trace "match-files.at:109"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:109"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_267
#AT_START_268
at_fn_group_banner 268 'match-files.at:111' \
"MATCH FILES parallel match" " " 35
at_xfail=no
(
$as_echo "268. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data1.txt <<'_ATEOF'
1aB
8aM
3aE
5aG
0aA
5aH
6aI
7aJ
2aD
7aK
1aC
7aL
4aF
_ATEOF
cat >data2.txt <<'_ATEOF'
1bN
3bO
4bP
6bQ
7bR
9bS
_ATEOF
cat >prepare.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='data1.txt' /a b c 1-3 (A).
SAVE OUTFILE='data1.sav'.
DATA LIST NOTABLE FILE='data2.txt' /a b c 1-3 (A).
SAVE OUTFILE='data2.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/match-files.at:112: pspp -O format=csv prepare.sps"
at_fn_check_prepare_trace "match-files.at:112"
( $at_check_trace; pspp -O format=csv prepare.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:112"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/match-files.at:112: test -f data1.sav && test -f data2.sav"
at_fn_check_prepare_trace "match-files.at:112"
( $at_check_trace; test -f data1.sav && test -f data2.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:112"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >match-files.sps <<'_ATEOF'
MATCH FILES FILE='data1.sav' /FILE='data2.sav' /RENAME (a b c=d e f).
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/match-files.at:117: pspp -o pspp.csv match-files.sps"
at_fn_check_prepare_trace "match-files.at:117"
( $at_check_trace; pspp -o pspp.csv match-files.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:117"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/match-files.at:118: cat pspp.csv"
at_fn_check_prepare_trace "match-files.at:118"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
a,b,c,d,e,f
1,a,B,1,b,N
8,a,M,3,b,O
3,a,E,4,b,P
5,a,G,6,b,Q
0,a,A,7,b,R
5,a,H,9,b,S
6,a,I,,,
7,a,J,,,
2,a,D,,,
7,a,K,,,
1,a,C,,,
7,a,L,,,
4,a,F,,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:118"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_268
#AT_START_269
at_fn_group_banner 269 'match-files.at:138' \
"MATCH FILES bug with TABLE from active dataset" " " 35
at_xfail=no
(
$as_echo "269. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >match-files.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /x * y *.
BEGIN DATA
3 30
2 21
1 22
END DATA.
SAVE OUTFILE='bar.sav'.
DATA LIST LIST NOTABLE /x * z *.
BEGIN DATA
3 8
2 9
END DATA.
MATCH FILES TABLE=* /FILE='bar.sav' /BY=x.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/match-files.at:158: pspp -o pspp.csv match-files.sps"
at_fn_check_prepare_trace "match-files.at:158"
( $at_check_trace; pspp -o pspp.csv match-files.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:158"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/match-files.at:159: cat pspp.csv"
at_fn_check_prepare_trace "match-files.at:159"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
x,z,y
3.00,8.00,30.00
2.00,. ,21.00
1.00,. ,22.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:159"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_269
#AT_START_270
at_fn_group_banner 270 'match-files.at:170' \
"MATCH FILES bug with scratch variables" " " 35
at_xfail=no
(
$as_echo "270. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >match-files.sps <<'_ATEOF'
DATA LIST LIST /w * x * y * .
BEGIN DATA
4 5 6
1 2 3
END DATA.
COMPUTE j=0.
LOOP #k = 1 to 10.
COMPUTE j=#k + j.
END LOOP.
MATCH FILES FILE=* /DROP=w.
LIST.
FINISH.
_ATEOF
{ set +x
$as_echo "$at_srcdir/match-files.at:187: pspp -o pspp.csv match-files.sps"
at_fn_check_prepare_trace "match-files.at:187"
( $at_check_trace; pspp -o pspp.csv match-files.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:187"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/match-files.at:188: cat pspp.csv"
at_fn_check_prepare_trace "match-files.at:188"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
w,F8.0
x,F8.0
y,F8.0
Table: Data List
x,y,j
5.00,6.00,55.00
2.00,3.00,55.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/match-files.at:188"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_270
#AT_START_271
at_fn_group_banner 271 'match-files.at:206' \
"MATCH FILES with incompatible variable types" " " 35
at_xfail=no
(
$as_echo "271. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >match-files.sps <<'_ATEOF'
DATA LIST LIST NOTABLE/name (A6) x.
BEGIN DATA.
al,7
brad,8
carl,9
END DATA.
SAVE OUTFILE='x.sav'.
DATA LIST LIST NOTABLE/name (A7) y.
BEGIN DATA.
al,1
carl,2
dan,3
END DATA.
MATCH FILES/FILE='x.sav'/FILE=*/BY name.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/match-files.at:225: pspp -O format=csv match-files.sps"
at_fn_check_prepare_trace "match-files.at:225"
( $at_check_trace; pspp -O format=csv match-files.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"match-files.sps:15: error: MATCH FILES: Variable name in file * has different type or width from the same variable in earlier file. In file *, name is a string variable with width 7. In an earlier file, name was a string variable with width 6.\"
match-files.sps:16: error: Stopping syntax file processing here to avoid a cascade of dependent command failures.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/match-files.at:225"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_271
#AT_START_272
at_fn_group_banner 272 'print-space.at:3' \
"PRINT SPACE without arguments" " " 36
at_xfail=no
(
$as_echo "272. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >print-space.sps <<'_ATEOF'
DATA LIST NOTABLE/x 1.
BEGIN DATA.
1
2
END DATA.
PRINT/x.
PRINT SPACE.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/print-space.at:14: pspp -O format=csv print-space.sps"
at_fn_check_prepare_trace "print-space.at:14"
( $at_check_trace; pspp -O format=csv print-space.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1
2
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print-space.at:14"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_272
#AT_START_273
at_fn_group_banner 273 'print-space.at:25' \
"PRINT SPACE with number" " " 36
at_xfail=no
(
$as_echo "273. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >print-space.sps <<'_ATEOF'
DATA LIST NOTABLE/x 1.
BEGIN DATA.
1
2
END DATA.
PRINT/x.
PRINT SPACE 2.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/print-space.at:36: pspp -O format=csv print-space.sps"
at_fn_check_prepare_trace "print-space.at:36"
( $at_check_trace; pspp -O format=csv print-space.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1
2
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print-space.at:36"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_273
#AT_START_274
at_fn_group_banner 274 'print-space.at:51' \
"PRINT SPACE to file" " " 36
at_xfail=no
(
$as_echo "274. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >print-space.sps <<'_ATEOF'
DATA LIST NOTABLE/x 1.
BEGIN DATA.
1
2
END DATA.
PRINT OUTFILE='output.txt'/x.
PRINT SPACE OUTFILE='output.txt'.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/print-space.at:63: pspp -O format=csv print-space.sps"
at_fn_check_prepare_trace "print-space.at:63"
( $at_check_trace; pspp -O format=csv print-space.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print-space.at:63"
$at_failed && at_fn_log_failure \
"output.txt"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/print-space.at:64: cat output.txt"
at_fn_check_prepare_trace "print-space.at:64"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 1
2
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print-space.at:64"
$at_failed && at_fn_log_failure \
"output.txt"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_274
#AT_START_275
at_fn_group_banner 275 'print-space.at:72' \
"PRINT SPACE to file with number" " " 36
at_xfail=no
(
$as_echo "275. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >print-space.sps <<'_ATEOF'
DATA LIST NOTABLE/x 1.
BEGIN DATA.
1
2
END DATA.
PRINT OUTFILE='output.txt'/x.
PRINT SPACE OUTFILE='output.txt' 2.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/print-space.at:84: pspp -O format=csv print-space.sps"
at_fn_check_prepare_trace "print-space.at:84"
( $at_check_trace; pspp -O format=csv print-space.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print-space.at:84"
$at_failed && at_fn_log_failure \
"output.txt"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/print-space.at:85: cat output.txt"
at_fn_check_prepare_trace "print-space.at:85"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 1
2
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print-space.at:85"
$at_failed && at_fn_log_failure \
"output.txt"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_275
#AT_START_276
at_fn_group_banner 276 'print.at:20' \
"PRINT numeric variables" " " 37
at_xfail=no
(
$as_echo "276. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >print.sps <<'_ATEOF'
data list notable /x y 1-2.
begin data.
12
34
6
7
90
end data.
print /x y.
print eject /x y 1-2.
print /x '-' y.
print.
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/print.at:38: pspp -O format=csv print.sps"
at_fn_check_prepare_trace "print.at:38"
( $at_check_trace; pspp -O format=csv print.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1 2
12
1 -2
3 4
34
3 -4
. 6
.6
. -6
7 .
7.
7 -.
9 0
90
9 -0
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:38"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_276
#AT_START_277
at_fn_group_banner 277 'print.at:91' \
"PRINT string variables" " " 37
at_xfail=no
(
$as_echo "277. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >print.sps <<'_ATEOF'
DATA LIST FREE /s8 (a8) s10 (a10) vl255 (a255) vl258 (a258).
BEGIN DATA.
12345678
AaaaaaaaaZ
AbbbbMaryHadALittleLambbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbZ
AccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccZ
87654321
AnnnnnnnnZ
AmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmZ
AoooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooWhyIsItSoZ
END DATA.
print
outfile='print.txt'
/s10 * vl255 * vl258 *.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/print.at:111: pspp -O format=csv print.sps"
at_fn_check_prepare_trace "print.at:111"
( $at_check_trace; pspp -O format=csv print.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:111"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/print.at:112: cat print.txt"
at_fn_check_prepare_trace "print.at:112"
( $at_check_trace; cat print.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " AaaaaaaaaZ AbbbbMaryHadALittleLambbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbZ AccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccZ
AnnnnnnnnZ AmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmZ AoooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooWhyIsItSoZ
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:112"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_277
#AT_START_278
at_fn_group_banner 278 'print.at:118' \
"PRINT to file" " " 37
at_xfail=no
(
$as_echo "278. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >print.sps <<'_ATEOF'
data list notable /x y 1-2.
begin data.
12
34
6
7
90
end data.
print outfile='print.out' /x y.
print eject outfile='print.out' /x y (f1,f1).
print outfile='print.out' /x '-' y.
print outfile='print.out'.
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/print.at:136: pspp -O format=csv print.sps"
at_fn_check_prepare_trace "print.at:136"
( $at_check_trace; pspp -O format=csv print.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:136"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/print.at:137: cat print.out"
at_fn_check_prepare_trace "print.at:137"
( $at_check_trace; cat print.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 1 2
112
1 -2
3 4
134
3 -4
. 6
1.6
. -6
7 .
17.
7 -.
9 0
190
9 -0
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:137"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_278
#AT_START_279
at_fn_group_banner 279 'print.at:163' \
"PRINT crash bug" " " 37
at_xfail=no
(
$as_echo "279. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >print.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /a * b *.
BEGIN DATA.
1 2
3 4
END DATA.
PRINT F8.2
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/print.at:174: pspp -O format=csv print.sps"
at_fn_check_prepare_trace "print.at:174"
( $at_check_trace; pspp -O format=csv print.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "print.sps:7.7-7.10: error: PRINT: Syntax error at \`F8.2': expecting a valid subcommand.
Table: Data List
a,b
1.00,2.00
3.00,4.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/print.at:174"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_279
#AT_START_280
at_fn_group_banner 280 'print.at:184' \
"WRITE to file" " " 37
at_xfail=no
(
$as_echo "280. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >write.sps <<'_ATEOF'
data list notable /x y 1-2.
begin data.
12
34
6
7
90
end data.
write outfile='write.out' /x y.
write outfile='write.out' /x y (2(f1)).
write outfile='write.out' /x '-' y.
write outfile='write.out'.
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/print.at:202: pspp -O format=csv write.sps"
at_fn_check_prepare_trace "print.at:202"
( $at_check_trace; pspp -O format=csv write.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:202"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/print.at:203: cat write.out"
at_fn_check_prepare_trace "print.at:203"
( $at_check_trace; cat write.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "12
12
1-2
34
34
3-4
6
6
-6
7
7
7-
90
90
9-0
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:203"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_280
#AT_START_281
at_fn_group_banner 281 'print.at:227' \
"PRINT overwrites file" " " 37
at_xfail=no
(
$as_echo "281. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >output.txt <<'_ATEOF'
abcdef
_ATEOF
cat >print.sps <<'_ATEOF'
DATA LIST NOTABLE/x 1.
BEGIN DATA.
5
END DATA.
PRINT OUTFILE='output.txt'/x.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/print.at:238: pspp -O format=csv print.sps"
at_fn_check_prepare_trace "print.at:238"
( $at_check_trace; pspp -O format=csv print.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:238"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/print.at:239: cat output.txt"
at_fn_check_prepare_trace "print.at:239"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 5
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:239"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_281
#AT_START_282
at_fn_group_banner 282 'print.at:243' \
"PRINT overwrites file atomically" " " 37
at_xfail=no
(
$as_echo "282. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >output.txt <<'_ATEOF'
abcdef
_ATEOF
cat >print.sps <<'_ATEOF'
DATA LIST NOTABLE/x 1.
BEGIN DATA.
5
END DATA.
PRINT OUTFILE='output.txt'/x.
HOST COMMAND=['kill -TERM $PPID'].
_ATEOF
{ set +x
$as_echo "$at_srcdir/print.at:254: pspp -O format=csv print.sps"
at_fn_check_prepare_trace "print.at:254"
( $at_check_trace; pspp -O format=csv print.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 143 $at_status "$at_srcdir/print.at:254"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/print.at:255: cat output.txt"
at_fn_check_prepare_trace "print.at:255"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "abcdef
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:255"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/print.at:257: for file in *.tmp*; do if test -e \$file; then echo \$file; exit 1; fi; done"
at_fn_check_prepare_dynamic "for file in *.tmp*; do if test -e $file; then echo $file; exit 1; fi; done" "print.at:257"
( $at_check_trace; for file in *.tmp*; do if test -e $file; then echo $file; exit 1; fi; done
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:257"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_282
#AT_START_283
at_fn_group_banner 283 'print.at:261' \
"PRINT to same file being read" " " 37
at_xfail=no
(
$as_echo "283. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data.txt <<'_ATEOF'
5
_ATEOF
cat >print.sps <<'_ATEOF'
DATA LIST FILE='data.txt' NOTABLE/x 1.
COMPUTE y = x + 1.
PRINT OUTFILE='data.txt'/y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/print.at:270: pspp -O format=csv print.sps"
at_fn_check_prepare_trace "print.at:270"
( $at_check_trace; pspp -O format=csv print.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:270"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/print.at:271: cat data.txt"
at_fn_check_prepare_trace "print.at:271"
( $at_check_trace; cat data.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 6.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:271"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/print.at:273: for file in *.tmp*; do if test -e \$file; then echo \$file; exit 1; fi; done"
at_fn_check_prepare_dynamic "for file in *.tmp*; do if test -e $file; then echo $file; exit 1; fi; done" "print.at:273"
( $at_check_trace; for file in *.tmp*; do if test -e $file; then echo $file; exit 1; fi; done
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:273"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_283
#AT_START_284
at_fn_group_banner 284 'print.at:277' \
"PRINT to special file" " " 37
at_xfail=no
(
$as_echo "284. $at_setup_line: testing $at_desc ..."
$at_traceon
$as_echo "print.at:278" >"$at_check_line_file"
(test ! -c /dev/null) \
&& at_fn_check_skip 77 "$at_srcdir/print.at:278"
{ set +x
$as_echo "$at_srcdir/print.at:279: ln -s /dev/null foo.out || exit 77"
at_fn_check_prepare_trace "print.at:279"
( $at_check_trace; ln -s /dev/null foo.out || exit 77
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:279"
$at_failed && at_fn_log_failure
$at_traceon; }
$as_echo "print.at:280" >"$at_check_line_file"
(test ! -c foo.out) \
&& at_fn_check_skip 77 "$at_srcdir/print.at:280"
cat >print.sps <<'_ATEOF'
DATA LIST NOTABLE /x 1.
BEGIN DATA.
1
2
3
4
5
END DATA.
PRINT OUTFILE='foo.out'/x.
PRINT OUTFILE='foo2.out'/x.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/print.at:294: pspp -O format=csv print.sps"
at_fn_check_prepare_trace "print.at:294"
( $at_check_trace; pspp -O format=csv print.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:294"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/print.at:295: cat foo2.out"
at_fn_check_prepare_trace "print.at:295"
( $at_check_trace; cat foo2.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 1
2
3
4
5
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:295"
$at_failed && at_fn_log_failure
$at_traceon; }
ls -l foo.out foo2.out
{ set +x
$as_echo "$at_srcdir/print.at:303: test -c foo.out"
at_fn_check_prepare_trace "print.at:303"
( $at_check_trace; test -c foo.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:303"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_284
#AT_START_285
at_fn_group_banner 285 'print.at:306' \
"PRINT with special line ends" " " 37
at_xfail=no
(
$as_echo "285. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >print.sps <<'_ATEOF'
FILE HANDLE lf /NAME='lf.txt' /ENDS=LF.
FILE HANDLE crlf /NAME='crlf.txt' /ENDS=CRLF.
DATA LIST NOTABLE /x 1.
BEGIN DATA.
1
2
3
4
5
END DATA.
PRINT OUTFILE=lf/x.
PRINT OUTFILE=crlf/x.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/print.at:322: pspp -O format=csv print.sps"
at_fn_check_prepare_trace "print.at:322"
( $at_check_trace; pspp -O format=csv print.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:322"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/print.at:323: cat lf.txt"
at_fn_check_prepare_trace "print.at:323"
( $at_check_trace; cat lf.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 1
2
3
4
5
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:323"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/print.at:330: tr '\\r' R < crlf.txt"
at_fn_check_prepare_trace "print.at:330"
( $at_check_trace; tr '\r' R < crlf.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 1 R
2 R
3 R
4 R
5 R
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/print.at:330"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_285
#AT_START_286
at_fn_group_banner 286 'save.at:3' \
"IMPORT and EXPORT" " " 38
at_xfail=no
(
$as_echo "286. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >import-export.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /X Y.
BEGIN DATA.
1 2
3 .
5 6
END DATA.
EXPORT /OUTFILE='wiz.por'.
IMPORT /FILE='wiz.por'.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/save.at:17: pspp -o pspp.csv import-export.sps"
at_fn_check_prepare_trace "save.at:17"
( $at_check_trace; pspp -o pspp.csv import-export.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/save.at:17"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/save.at:18: cat pspp.csv"
at_fn_check_prepare_trace "save.at:18"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
X,Y
1.00,2.00
3.00,.
5.00,6.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/save.at:18"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_286
#AT_START_287
at_fn_group_banner 287 'save.at:31' \
"SAVE -- delete unselected" " " 39
at_xfail=no
(
$as_echo "287. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data.txt <<'_ATEOF'
0 '1 9:30:05' 1/2/2003 "25/8/1995 15:30:00" "'a,b,c'",0
, '-0 5:17' 10/31/2010 "9/4/2008 9:29:00" " xxx ",1
1.625,'0 12:00',,,xyzzy,1
_ATEOF
cat >save.pspp <<'_ATEOF'
SET DECIMAL=DOT.
DATA LIST LIST NOTABLE FILE="data.txt"
/number(F8.3) time(DTIME10) date(ADATE10) datetime(DATETIME20) string(A8)
filter(F1.0).
MISSING VALUES number(0) time('0 12:00') string('xyzzy').
FILTER BY filter.
SAVE /OUTFILE="data.sav" /UNSELECTED=DELETE.
_ATEOF
cat >get.pspp <<'_ATEOF'
GET FILE='data.sav'.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/save.at:50: pspp -O format=csv save.pspp"
at_fn_check_prepare_trace "save.at:50"
( $at_check_trace; pspp -O format=csv save.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/save.at:50"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/save.at:51: pspp -O format=csv get.pspp"
at_fn_check_prepare_trace "save.at:51"
( $at_check_trace; pspp -O format=csv get.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
number,time,date,datetime,string,filter
. ,-0 05:17,10/31/2010,09-APR-2008 09:29:00,xxx ,1
1.625,0 12:00:00,.,.,xyzzy ,1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/save.at:51"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_287
#AT_START_288
at_fn_group_banner 288 'save-translate.at:23' \
"CSV output -- defaults" " " 40
at_xfail=no
(
$as_echo "288. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data.txt <<'_ATEOF'
0 '1 9:30:05' 1/2/2003 "25/8/1995 15:30:00" "'a,b,c'",0
, '-0 5:17' 10/31/2010 "9/4/2008 9:29:00" " xxx ",1
1.625,'0 12:00',,,xyzzy,1
_ATEOF
cat >save-translate.pspp <<'_ATEOF'
SET DECIMAL=DOT.
DATA LIST LIST NOTABLE FILE="data.txt"
/number(F8.3) time(DTIME10) date(ADATE10) datetime(DATETIME20) string(A8)
filter(F1.0).
MISSING VALUES number(0) time('0 12:00') string('xyzzy').
FILTER BY filter.
SAVE TRANSLATE /OUTFILE="data.csv" /TYPE=CSV
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/save-translate.at:24: pspp -O format=csv save-translate.pspp"
at_fn_check_prepare_trace "save-translate.at:24"
( $at_check_trace; pspp -O format=csv save-translate.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/save-translate.at:24"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/save-translate.at:25: cat data.csv"
at_fn_check_prepare_trace "save-translate.at:25"
( $at_check_trace; cat data.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0,33:30:05,01/02/2003,08/25/1995 15:30:00,\"'a,b,c'\",0
,-05:17:00,10/31/2010,04/09/2008 09:29:00, xxx,1
1.625,12:00:00, , ,xyzzy,1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/save-translate.at:25"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_288
#AT_START_289
at_fn_group_banner 289 'save-translate.at:32' \
"CSV output -- recode missing, delete unselected" "" 40
at_xfail=no
(
$as_echo "289. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data.txt <<'_ATEOF'
0 '1 9:30:05' 1/2/2003 "25/8/1995 15:30:00" "'a,b,c'",0
, '-0 5:17' 10/31/2010 "9/4/2008 9:29:00" " xxx ",1
1.625,'0 12:00',,,xyzzy,1
_ATEOF
cat >save-translate.pspp <<'_ATEOF'
SET DECIMAL=DOT.
DATA LIST LIST NOTABLE FILE="data.txt"
/number(F8.3) time(DTIME10) date(ADATE10) datetime(DATETIME20) string(A8)
filter(F1.0).
MISSING VALUES number(0) time('0 12:00') string('xyzzy').
FILTER BY filter.
SAVE TRANSLATE /OUTFILE="data.csv" /TYPE=CSV
/MISSING=RECODE /UNSELECTED=DELETE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/save-translate.at:33: pspp -O format=csv save-translate.pspp"
at_fn_check_prepare_trace "save-translate.at:33"
( $at_check_trace; pspp -O format=csv save-translate.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/save-translate.at:33"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/save-translate.at:34: cat data.csv"
at_fn_check_prepare_trace "save-translate.at:34"
( $at_check_trace; cat data.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " ,-05:17:00,10/31/2010,04/09/2008 09:29:00, xxx,1
1.625, , , ,,1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/save-translate.at:34"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_289
#AT_START_290
at_fn_group_banner 290 'save-translate.at:40' \
"CSV output -- var names, formats" " " 40
at_xfail=no
(
$as_echo "290. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data.txt <<'_ATEOF'
0 '1 9:30:05' 1/2/2003 "25/8/1995 15:30:00" "'a,b,c'",0
, '-0 5:17' 10/31/2010 "9/4/2008 9:29:00" " xxx ",1
1.625,'0 12:00',,,xyzzy,1
_ATEOF
cat >save-translate.pspp <<'_ATEOF'
SET DECIMAL=DOT.
DATA LIST LIST NOTABLE FILE="data.txt"
/number(F8.3) time(DTIME10) date(ADATE10) datetime(DATETIME20) string(A8)
filter(F1.0).
MISSING VALUES number(0) time('0 12:00') string('xyzzy').
FILTER BY filter.
SAVE TRANSLATE /OUTFILE="data.csv" /TYPE=CSV
/FIELDNAMES /TEXTOPTIONS FORMAT=VARIABLE /UNSELECTED=RETAIN.
_ATEOF
{ set +x
$as_echo "$at_srcdir/save-translate.at:41: pspp -O format=csv save-translate.pspp"
at_fn_check_prepare_trace "save-translate.at:41"
( $at_check_trace; pspp -O format=csv save-translate.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/save-translate.at:41"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/save-translate.at:43: cat data.csv"
at_fn_check_prepare_trace "save-translate.at:43"
( $at_check_trace; cat data.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "number,time,date,datetime,string,filter
.000,1 09:30:05,01/02/2003,25-AUG-1995 15:30:00,\"'a,b,c'\",0
,-0 05:17,10/31/2010,09-APR-2008 09:29:00, xxx,1
1.625,0 12:00:00, , ,xyzzy,1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/save-translate.at:43"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_290
#AT_START_291
at_fn_group_banner 291 'save-translate.at:51' \
"CSV output -- comma as decimal point" " " 40
at_xfail=no
(
$as_echo "291. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data.txt <<'_ATEOF'
0 '1 9:30:05' 1/2/2003 "25/8/1995 15:30:00" "'a,b,c'",0
, '-0 5:17' 10/31/2010 "9/4/2008 9:29:00" " xxx ",1
1.625,'0 12:00',,,xyzzy,1
_ATEOF
cat >save-translate.pspp <<'_ATEOF'
SET DECIMAL=DOT.
DATA LIST LIST NOTABLE FILE="data.txt"
/number(F8.3) time(DTIME10) date(ADATE10) datetime(DATETIME20) string(A8)
filter(F1.0).
MISSING VALUES number(0) time('0 12:00') string('xyzzy').
FILTER BY filter.
SAVE TRANSLATE /OUTFILE="data.csv" /TYPE=CSV
/FIELDNAMES /TEXTOPTIONS DECIMAL=COMMA.
_ATEOF
{ set +x
$as_echo "$at_srcdir/save-translate.at:52: pspp -O format=csv save-translate.pspp"
at_fn_check_prepare_trace "save-translate.at:52"
( $at_check_trace; pspp -O format=csv save-translate.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/save-translate.at:52"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/save-translate.at:53: cat data.csv"
at_fn_check_prepare_trace "save-translate.at:53"
( $at_check_trace; cat data.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "number;time;date;datetime;string;filter
0;33:30:05;01/02/2003;08/25/1995 15:30:00;'a,b,c';0
;-05:17:00;10/31/2010;04/09/2008 09:29:00; xxx;1
1,625;12:00:00; ; ;xyzzy;1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/save-translate.at:53"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_291
#AT_START_292
at_fn_group_banner 292 'save-translate.at:61' \
"CSV output -- custom delimiter, qualifier" " " 40
at_xfail=no
(
$as_echo "292. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data.txt <<'_ATEOF'
0 '1 9:30:05' 1/2/2003 "25/8/1995 15:30:00" "'a,b,c'",0
, '-0 5:17' 10/31/2010 "9/4/2008 9:29:00" " xxx ",1
1.625,'0 12:00',,,xyzzy,1
_ATEOF
cat >save-translate.pspp <<'_ATEOF'
SET DECIMAL=DOT.
DATA LIST LIST NOTABLE FILE="data.txt"
/number(F8.3) time(DTIME10) date(ADATE10) datetime(DATETIME20) string(A8)
filter(F1.0).
MISSING VALUES number(0) time('0 12:00') string('xyzzy').
FILTER BY filter.
SAVE TRANSLATE /OUTFILE="data.csv" /TYPE=CSV
/FIELDNAMES /TEXTOPTIONS DELIMITER=':' QUALIFIER="'".
_ATEOF
{ set +x
$as_echo "$at_srcdir/save-translate.at:62: pspp -O format=csv save-translate.pspp"
at_fn_check_prepare_trace "save-translate.at:62"
( $at_check_trace; pspp -O format=csv save-translate.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/save-translate.at:62"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/save-translate.at:64: cat data.csv"
at_fn_check_prepare_trace "save-translate.at:64"
( $at_check_trace; cat data.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "number:time:date:datetime:string:filter
0:'33:30:05':01/02/2003:'08/25/1995 15:30:00':'''a,b,c''':0
:'-05:17:00':10/31/2010:'04/09/2008 09:29:00': xxx:1
1.625:'12:00:00': : :xyzzy:1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/save-translate.at:64"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_292
#AT_START_293
at_fn_group_banner 293 'save-translate.at:72' \
"CSV output -- KEEP, RENAME" " " 40
at_xfail=no
(
$as_echo "293. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data.txt <<'_ATEOF'
0 '1 9:30:05' 1/2/2003 "25/8/1995 15:30:00" "'a,b,c'",0
, '-0 5:17' 10/31/2010 "9/4/2008 9:29:00" " xxx ",1
1.625,'0 12:00',,,xyzzy,1
_ATEOF
cat >save-translate.pspp <<'_ATEOF'
SET DECIMAL=DOT.
DATA LIST LIST NOTABLE FILE="data.txt"
/number(F8.3) time(DTIME10) date(ADATE10) datetime(DATETIME20) string(A8)
filter(F1.0).
MISSING VALUES number(0) time('0 12:00') string('xyzzy').
FILTER BY filter.
SAVE TRANSLATE /OUTFILE="data.csv" /TYPE=CSV
/FIELDNAMES /KEEP=time string /RENAME string=name /UNSELECTED=DELETE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/save-translate.at:73: pspp -O format=csv save-translate.pspp"
at_fn_check_prepare_trace "save-translate.at:73"
( $at_check_trace; pspp -O format=csv save-translate.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/save-translate.at:73"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/save-translate.at:75: cat data.csv"
at_fn_check_prepare_trace "save-translate.at:75"
( $at_check_trace; cat data.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "time,name
-05:17:00, xxx
12:00:00,xyzzy
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/save-translate.at:75"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_293
#AT_START_294
at_fn_group_banner 294 'save-translate.at:84' \
"TAB output" " " 41
at_xfail=no
(
$as_echo "294. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data.txt <<'_ATEOF'
0 '1 9:30:05' 1/2/2003 "25/8/1995 15:30:00" "'a,b,c'",0
, '-0 5:17' 10/31/2010 "9/4/2008 9:29:00" " xxx ",1
1.625,'0 12:00',,,xyzzy,1
_ATEOF
cat >save-translate.pspp <<'_ATEOF'
SET DECIMAL=DOT.
DATA LIST LIST NOTABLE FILE="data.txt"
/number(F8.3) time(DTIME10) date(ADATE10) datetime(DATETIME20) string(A8)
filter(F1.0).
MISSING VALUES number(0) time('0 12:00') string('xyzzy').
FILTER BY filter.
SAVE TRANSLATE /OUTFILE="data.csv" /TYPE=TAB
/FIELDNAMES.
_ATEOF
{ set +x
$as_echo "$at_srcdir/save-translate.at:85: pspp -O format=csv save-translate.pspp"
at_fn_check_prepare_trace "save-translate.at:85"
( $at_check_trace; pspp -O format=csv save-translate.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/save-translate.at:85"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/save-translate.at:86: cat data.csv"
at_fn_check_prepare_trace "save-translate.at:86"
( $at_check_trace; cat data.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "number time date datetime string filter
0 33:30:05 01/02/2003 08/25/1995 15:30:00 'a,b,c' 0
-05:17:00 10/31/2010 04/09/2008 09:29:00 xxx 1
1.625 12:00:00 xyzzy 1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/save-translate.at:86"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_294
#AT_START_295
at_fn_group_banner 295 'update.at:73' \
"UPDATE sav with sav" " " 42
at_xfail=no
(
$as_echo "295. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >a.data <<'_ATEOF'
1aB
8aM
3aE
5aG
0aA
5aH
6aI
7aJ
2aD
7aK
1aC
7aL
4aF
_ATEOF
cat >b.data <<'_ATEOF'
1bN
3 O
4bP
6bQ
7bR
9bS
_ATEOF
cat >save-a.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='a.data' /a b c 1-3 (A).
SAVE OUTFILE='a.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/update.at:73: pspp -O format=csv save-a.sps"
at_fn_check_prepare_trace "update.at:73"
( $at_check_trace; pspp -O format=csv save-a.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/update.at:73"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >save-b.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='b.data' /a b c 1-3 (A).
SAVE OUTFILE='b.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/update.at:73: pspp -O format=csv save-b.sps"
at_fn_check_prepare_trace "update.at:73"
( $at_check_trace; pspp -O format=csv save-b.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/update.at:73"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >update.sps <<'_ATEOF'
UPDATE
FILE='a.sav' /IN=InA /SORT
FILE='b.sav' /IN=InB /RENAME c=d
BY a.
LIST.
_ATEOF
cat update.sps
{ set +x
$as_echo "$at_srcdir/update.at:73: pspp -O format=csv update.sps"
at_fn_check_prepare_trace "update.at:73"
( $at_check_trace; pspp -O format=csv update.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "update.sps:6: warning: UPDATE: Encountered 3 sets of duplicate cases in the master file.
Table: Data List
a,b,c,d,InA,InB
0,a,A,,1,0
1,b,B,N,1,1
1,a,C,,1,0
2,a,D,,1,0
3,a,E,O,1,1
4,b,F,P,1,1
5,a,G,,1,0
5,a,H,,1,0
6,b,I,Q,1,1
7,b,J,R,1,1
7,a,K,,1,0
7,a,L,,1,0
8,a,M,,1,0
9,b,,S,0,1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/update.at:73"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_295
#AT_START_296
at_fn_group_banner 296 'update.at:74' \
"UPDATE sav with inline" " " 42
at_xfail=no
(
$as_echo "296. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >a.data <<'_ATEOF'
1aB
8aM
3aE
5aG
0aA
5aH
6aI
7aJ
2aD
7aK
1aC
7aL
4aF
_ATEOF
cat >b.data <<'_ATEOF'
1bN
3 O
4bP
6bQ
7bR
9bS
_ATEOF
cat >save-a.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='a.data' /a b c 1-3 (A).
SAVE OUTFILE='a.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/update.at:74: pspp -O format=csv save-a.sps"
at_fn_check_prepare_trace "update.at:74"
( $at_check_trace; pspp -O format=csv save-a.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/update.at:74"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >update.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='b.data' /a b c 1-3 (A).
UPDATE
FILE='a.sav' /IN=InA /SORT
FILE=* /IN=InB /RENAME c=d
BY a.
LIST.
_ATEOF
cat update.sps
{ set +x
$as_echo "$at_srcdir/update.at:74: pspp -O format=csv update.sps"
at_fn_check_prepare_trace "update.at:74"
( $at_check_trace; pspp -O format=csv update.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "update.sps:6: warning: UPDATE: Encountered 3 sets of duplicate cases in the master file.
Table: Data List
a,b,c,d,InA,InB
0,a,A,,1,0
1,b,B,N,1,1
1,a,C,,1,0
2,a,D,,1,0
3,a,E,O,1,1
4,b,F,P,1,1
5,a,G,,1,0
5,a,H,,1,0
6,b,I,Q,1,1
7,b,J,R,1,1
7,a,K,,1,0
7,a,L,,1,0
8,a,M,,1,0
9,b,,S,0,1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/update.at:74"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_296
#AT_START_297
at_fn_group_banner 297 'update.at:75' \
"UPDATE inline with sav" " " 42
at_xfail=no
(
$as_echo "297. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >a.data <<'_ATEOF'
1aB
8aM
3aE
5aG
0aA
5aH
6aI
7aJ
2aD
7aK
1aC
7aL
4aF
_ATEOF
cat >b.data <<'_ATEOF'
1bN
3 O
4bP
6bQ
7bR
9bS
_ATEOF
cat >save-b.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='b.data' /a b c 1-3 (A).
SAVE OUTFILE='b.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/update.at:75: pspp -O format=csv save-b.sps"
at_fn_check_prepare_trace "update.at:75"
( $at_check_trace; pspp -O format=csv save-b.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/update.at:75"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >update.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='a.data' /a b c 1-3 (A).
UPDATE
FILE=* /IN=InA /SORT
FILE='b.sav' /IN=InB /RENAME c=d
BY a.
LIST.
_ATEOF
cat update.sps
{ set +x
$as_echo "$at_srcdir/update.at:75: pspp -O format=csv update.sps"
at_fn_check_prepare_trace "update.at:75"
( $at_check_trace; pspp -O format=csv update.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "update.sps:6: warning: UPDATE: Encountered 3 sets of duplicate cases in the master file.
Table: Data List
a,b,c,d,InA,InB
0,a,A,,1,0
1,b,B,N,1,1
1,a,C,,1,0
2,a,D,,1,0
3,a,E,O,1,1
4,b,F,P,1,1
5,a,G,,1,0
5,a,H,,1,0
6,b,I,Q,1,1
7,b,J,R,1,1
7,a,K,,1,0
7,a,L,,1,0
8,a,M,,1,0
9,b,,S,0,1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/update.at:75"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_297
#AT_START_298
at_fn_group_banner 298 'attributes.at:3' \
"VARIABLE ATTRIBUTES and DATAFILE ATTRIBUTES" " " 43
at_xfail=no
(
$as_echo "298. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >save-attrs.pspp <<'_ATEOF'
DATA LIST FREE/a b c.
BEGIN DATA.
1 2 3
END DATA.
DATAFILE ATTRIBUTE
ATTRIBUTE=key('value')
array('array element 1')
Array[2]('array element 2').
VARIABLE ATTRIBUTE
VARIABLES=a b
ATTRIBUTE=ValidationRule[2]("a + b > 2")
ValidationRule[1]('a * b > 3')
/VARIABLES=c
ATTRIBUTE=QuestionWording('X or Y?').
DISPLAY ATTRIBUTES.
SAVE OUTFILE='attributes.sav'.
_ATEOF
cat >get-attrs.pspp <<'_ATEOF'
GET FILE='attributes.sav'.
DATAFILE ATTRIBUTE
DELETE=Array[1] Array[2].
VARIABLE ATTRIBUTE
VARIABLES=a
DELETE=ValidationRule
/VARIABLE=b
DELETE=validationrule[2].
DISPLAY ATTRIBUTES.
_ATEOF
{ set +x
$as_echo "$at_srcdir/attributes.at:37: pspp -O format=csv save-attrs.pspp"
at_fn_check_prepare_trace "attributes.at:37"
( $at_check_trace; pspp -O format=csv save-attrs.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description
a,\"Attribute,Value
ValidationRule[1],a * b > 3
ValidationRule[2],a + b > 2\"
b,\"Attribute,Value
ValidationRule[1],a * b > 3
ValidationRule[2],a + b > 2\"
c,\"Attribute,Value
QuestionWording,X or Y?\"
Table: Custom data file attributes.
Attribute,Value
array[1],array element 1
array[2],array element 2
key,value
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/attributes.at:37"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/attributes.at:54: pspp -O format=csv get-attrs.pspp"
at_fn_check_prepare_trace "attributes.at:54"
( $at_check_trace; pspp -O format=csv get-attrs.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description
a,
b,\"Attribute,Value
ValidationRule,a * b > 3\"
c,\"Attribute,Value
QuestionWording,X or Y?\"
Table: Custom data file attributes.
Attribute,Value
array,array element 2
key,value
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/attributes.at:54"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_298
#AT_START_299
at_fn_group_banner 299 'delete-variables.at:4' \
"DELETE VARIABLES with FILTER" " " 44
at_xfail=no
(
$as_echo "299. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >delete-variables.sps <<'_ATEOF'
DATA LIST LIST /a b.
BEGIN DATA.
1 3
4 6
7 9
END DATA.
FILTER BY b.
DELETE VARIABLES a.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/delete-variables.at:17: pspp -O format=csv delete-variables.sps"
at_fn_check_prepare_trace "delete-variables.at:17"
( $at_check_trace; pspp -O format=csv delete-variables.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
a,F8.0
b,F8.0
Table: Data List
b
3.00
6.00
9.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/delete-variables.at:17"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_299
#AT_START_300
at_fn_group_banner 300 'formats.at:3' \
"FORMATS positive tests" " " 45
at_xfail=no
(
$as_echo "300. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >formats.sps <<'_ATEOF'
DATA LIST LIST /a b c * x (A1) y (A2) z (A3).
DISPLAY VARIABLES.
FORMATS /a (COMMA10) b (N4).
DISPLAY VARIABLES.
FORMATS c (E8.1) x (A1) /y (AHEX4) z (A3).
DISPLAY VARIABLES.
_ATEOF
{ set +x
$as_echo "$at_srcdir/formats.at:12: pspp -o pspp.csv formats.sps"
at_fn_check_prepare_trace "formats.at:12"
( $at_check_trace; pspp -o pspp.csv formats.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/formats.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/formats.at:13: grep -E -v 'Measure|Display' pspp.csv"
at_fn_check_prepare_notrace 'a shell pipeline' "formats.at:13"
( $at_check_trace; grep -E -v 'Measure|Display' pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
a,F8.0
b,F8.0
c,F8.0
x,A1
y,A2
z,A3
Variable,Description,Position
a,Format: F8.2,1
b,Format: F8.2,2
c,Format: F8.2,3
x,Format: A1,4
y,Format: A2,5
z,Format: A3,6
Variable,Description,Position
a,Format: COMMA10.0,1
b,Format: N4.0,2
c,Format: F8.2,3
x,Format: A1,4
y,Format: A2,5
z,Format: A3,6
Variable,Description,Position
a,Format: COMMA10.0,1
b,Format: N4.0,2
c,Format: E8.1,3
x,Format: A1,4
y,Format: AHEX4,5
z,Format: A3,6
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/formats.at:13"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_300
#AT_START_301
at_fn_group_banner 301 'formats.at:49' \
"FORMATS negative tests" " " 45
at_xfail=no
(
$as_echo "301. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >formats.sps <<'_ATEOF'
DATA LIST LIST /a b c * x (A1) y (A2) z (A3).
FORMATS a (E6.1).
FORMATS a y (F4).
FORMATS x (A2).
FORMATS y (AHEX2).
FORMATS x y (A2).
_ATEOF
{ set +x
$as_echo "$at_srcdir/formats.at:58: pspp -O format=csv formats.sps"
at_fn_check_prepare_trace "formats.at:58"
( $at_check_trace; pspp -O format=csv formats.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
a,F8.0
b,F8.0
c,F8.0
x,A1
y,A2
z,A3
\"formats.sps:2: error: FORMATS: Output format E6.1 specifies 1 decimal place, but the given width does not allow for any decimals.\"
formats.sps:3: error: FORMATS: a and y are not the same type. All variables in this variable list must be of the same type. y will be omitted from the list.
formats.sps:4: error: FORMATS: String variable with width 1 is not compatible with format A2.
formats.sps:5: error: FORMATS: String variable with width 2 is not compatible with format AHEX2.
formats.sps:6: error: FORMATS: x and y are string variables with different widths. All variables in this variable list must have the same width. y will be omitted from the list.
formats.sps:6: error: FORMATS: String variable with width 1 is not compatible with format A2.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/formats.at:58"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_301
#AT_START_302
at_fn_group_banner 302 'missing-values.at:3' \
"MISSING VALUES valid cases" " " 46
at_xfail=no
(
$as_echo "302. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >missing-values.sps <<'_ATEOF'
DATA LIST NOTABLE/str1 1-5 (A) str2 6-8 (A) date1 9-19 (DATE) num1 20-25
longstr 26-36 (A).
* Numeric missing values.
MISSING VALUES date1 num1 (1).
DISPLAY DICTIONARY date1 num1.
MISSING VALUES date1 num1 (1, 2).
DISPLAY DICTIONARY date1 num1.
MISSING VALUES date1 num1 (1, 2, 3).
DISPLAY DICTIONARY date1 num1.
MISSING VALUES date1 num1 (9999998, 9999984, 3).
DISPLAY DICTIONARY date1 num1.
* Numeric missing values using the first variable's format.
MISSING VALUES num1 date1 ('1').
DISPLAY DICTIONARY date1 num1.
MISSING VALUES num1 date1 ('1', '2').
DISPLAY DICTIONARY date1 num1.
MISSING VALUES num1 date1 ('1', '2', '3').
DISPLAY DICTIONARY date1 num1.
MISSING VALUES date1 num1 ('06-AUG-05').
DISPLAY DICTIONARY date1 num1.
MISSING VALUES date1 num1 ('06-AUG-05', '01-OCT-78').
DISPLAY DICTIONARY date1 num1.
MISSING VALUES date1 num1 ('06-AUG-05', '01-OCT-78', '14-FEB-81').
DISPLAY DICTIONARY date1 num1.
* Ranges of numeric missing values.
MISSING VALUES num1 (1 THRU 2).
DISPLAY DICTIONARY num1.
MISSING VALUES num1 (LO THRU 2).
DISPLAY DICTIONARY num1.
MISSING VALUES num1 (LOWEST THRU 2).
DISPLAY DICTIONARY num1.
MISSING VALUES num1 (1 THRU HI).
DISPLAY DICTIONARY num1.
MISSING VALUES num1 (1 THRU HIGHEST).
DISPLAY DICTIONARY num1.
* A range of numeric missing values, plus an individual value.
MISSING VALUES num1 (1 THRU 2, 3).
DISPLAY DICTIONARY num1.
MISSING VALUES num1 (LO THRU 2, 3).
DISPLAY DICTIONARY num1.
MISSING VALUES num1 (LOWEST THRU 2, 3).
DISPLAY DICTIONARY num1.
MISSING VALUES num1 (1 THRU HI, -1).
DISPLAY DICTIONARY num1.
MISSING VALUES num1 (1 THRU HIGHEST, -1).
DISPLAY DICTIONARY num1.
* String missing values.
MISSING VALUES str1 str2 longstr ('abc ','def').
DISPLAY DICTIONARY str1 str2 longstr.
* May mix variable types when clearing missing values.
MISSING VALUES ALL ().
DISPLAY DICTIONARY
_ATEOF
{ set +x
$as_echo "$at_srcdir/missing-values.at:64: pspp -o pspp.csv missing-values.sps"
at_fn_check_prepare_trace "missing-values.at:64"
( $at_check_trace; pspp -o pspp.csv missing-values.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/missing-values.at:64"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/missing-values.at:65: sed -n '/^\$/p; /^[^\"]*\"[^\"]*\$/N; s/^\\([a-z0-9]*\\),\".*Missing Values: \\(.*\\)\",[0-9]*\$/\\1: \\2/p; s/^\\([a-z0-9]*\\),Format: [A-Z0-9.]*,[0-9]*\$/\\1: none/p' pspp.csv
"
at_fn_check_prepare_notrace 'an embedded newline' "missing-values.at:65"
( $at_check_trace; sed -n '/^$/p; /^[^"]*"[^"]*$/N; s/^\([a-z0-9]*\),".*Missing Values: \(.*\)",[0-9]*$/\1: \2/p; s/^\([a-z0-9]*\),Format: [A-Z0-9.]*,[0-9]*$/\1: none/p' pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "date1: 1
num1: 1
date1: 1; 2
num1: 1; 2
date1: 1; 2; 3
num1: 1; 2; 3
date1: 9999998; 9999984; 3
num1: 9999998; 9999984; 3
date1: 1
num1: 1
date1: 1; 2
num1: 1; 2
date1: 1; 2; 3
num1: 1; 2; 3
date1: 13342665600
num1: 13342665600
date1: 13342665600; 12495427200
num1: 13342665600; 12495427200
date1: 13342665600; 12495427200; 12570336000
num1: 13342665600; 12495427200; 12570336000
num1: 1 THRU 2
num1: LOWEST THRU 2
num1: LOWEST THRU 2
num1: 1 THRU HIGHEST
num1: 1 THRU HIGHEST
num1: 1 THRU 2; 3
num1: LOWEST THRU 2; 3
num1: LOWEST THRU 2; 3
num1: 1 THRU HIGHEST; -1
num1: 1 THRU HIGHEST; -1
str1: \"\"abc \"\"; \"\"def \"\"
str2: \"\"abc\"\"; \"\"def\"\"
longstr: \"\"abc \"\"; \"\"def \"\"
str1: none
str2: none
date1: none
num1: none
longstr: none
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/missing-values.at:65"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_302
#AT_START_303
at_fn_group_banner 303 'missing-values.at:129' \
"MISSING VALUES invalid cases" " " 46
at_xfail=no
(
$as_echo "303. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >missing-values.sps <<'_ATEOF'
DATA LIST NOTABLE/str1 1-5 (A) str2 6-8 (A) date1 9-19 (DATE) num1 20-25
longstr 26-36 (A).
* Too long for str2.
MISSING VALUES str1 str2 longstr ('abcde').
* Long string missing value longer than 8 bytes.
MISSING VALUES longstr ('abcdefghijk').
* No string ranges.
MISSING VALUES str1 ('a' THRU 'z').
* Mixing string and numeric variables.
MISSING VALUES str1 num1 ('123').
_ATEOF
{ set +x
$as_echo "$at_srcdir/missing-values.at:146: pspp -O format=csv missing-values.sps"
at_fn_check_prepare_trace "missing-values.at:146"
( $at_check_trace; pspp -O format=csv missing-values.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "missing-values.sps:5: error: MISSING VALUES: Missing values provided are too long to assign to variable of width 3.
missing-values.sps:8: error: MISSING VALUES: Truncating missing value to maximum acceptable length (8 bytes).
missing-values.sps:11.26-11.29: error: MISSING VALUES: Syntax error at \`THRU': expecting string.
missing-values.sps:11: error: MISSING VALUES: THRU is not a variable name.
missing-values.sps:14: error: MISSING VALUES: Cannot mix numeric variables (e.g. num1) and string variables (e.g. str1) within a single list.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/missing-values.at:146"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_303
#AT_START_304
at_fn_group_banner 304 'mrsets.at:121' \
"MRSETS add, display, delete" " " 47
at_xfail=no
(
$as_echo "304. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >mrsets.sps <<'_ATEOF'
DATA LIST NOTABLE /w x y z 1-4 a b c d 5-8 (a).
BEGIN DATA.
1234acbd
5678efgh
END DATA.
VARIABLE LABEL
w 'duplicate variable label'
x 'Variable x'
z 'Duplicate variable label'.
VALUE LABELS
/w 1 'w value 1'
/y 1 'duplicate Value label'
/z 1 'duplicate value Label'
/a b c d 'a' 'burger' 'b' 'fries' 'c' 'shake' 'd' 'taco'.
ADD VALUE LABELS
/b 'b' 'Fries'
/c 'b' 'XXX'.
MRSETS
/MDGROUP NAME=$a
LABEL='First multiple dichotomy group'
CATEGORYLABELS=VARLABELS
VARIABLES=w x y z
VALUE=5
/MDGROUP NAME=$b
CATEGORYLABELS=COUNTEDVALUES
VARIABLES=z y
VALUE=123
/MDGROUP NAME=$c
LABELSOURCE=VARLABEL
CATEGORYLABELS=COUNTEDVALUES
VARIABLES=w x y z
VALUE=1
/MDGROUP NAME=$d
LABELSOURCE=VARLABEL
VARIABLES=a b c d
VALUE='c'
/MCGROUP NAME=$e
LABEL='First multiple category group'
VARIABLES=w x y z
/MCGROUP NAME=$f
VARIABLES=a b c d.
MRSETS
/DISPLAY NAME=[$a]
/DISPLAY NAME=ALL
/DELETE NAME=[$c]
/DISPLAY NAME=ALL
/DELETE NAME=ALL
/DISPLAY NAME=ALL.
_ATEOF
{ set +x
$as_echo "$at_srcdir/mrsets.at:132: pspp -O format=csv mrsets.sps"
at_fn_check_prepare_trace "mrsets.at:132"
( $at_check_trace; pspp -O format=csv mrsets.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "mrsets.sps:25: warning: MRSETS: Variables w and z specified as part of multiple dichotomy group \$a have the same variable label. Categories represented by these variables will not be distinguishable in output.
mrsets.sps:29: warning: MRSETS: Variable z specified as part of multiple dichotomy group \$b (which has CATEGORYLABELS=COUNTEDVALUES) has no value label for its counted value. This category will not be distinguishable in output.
mrsets.sps:29: warning: MRSETS: Variable y specified as part of multiple dichotomy group \$b (which has CATEGORYLABELS=COUNTEDVALUES) has no value label for its counted value. This category will not be distinguishable in output.
mrsets.sps:34: warning: MRSETS: Variable x specified as part of multiple dichotomy group \$c (which has CATEGORYLABELS=COUNTEDVALUES) has no value label for its counted value. This category will not be distinguishable in output.
mrsets.sps:34: warning: MRSETS: Variables y and z specified as part of multiple dichotomy group \$c (which has CATEGORYLABELS=COUNTEDVALUES) have the same value label for the group's counted value. These categories will not be distinguishable in output.
mrsets.sps:38: warning: MRSETS: MDGROUP subcommand for group \$d specifies LABELSOURCE=VARLABEL but not CATEGORYLABELS=COUNTEDVALUES. Ignoring LABELSOURCE.
\"mrsets.sps:41: warning: MRSETS: Variables specified on MCGROUP should have the same categories, but w and y (and possibly others) in multiple category group \$e have different value labels for value 1.\"
\"mrsets.sps:42: warning: MRSETS: Variables specified on MCGROUP should have the same categories, but a and c (and possibly others) in multiple category group \$f have different value labels for value b.\"
Table: Multiple Response Sets
Name,Variables,Details
\$a,\"w
x
y
z
\",\"Multiple dichotomy set
Label: First multiple dichotomy group
Label source: Provided by user
Counted value: 5
Category label source: Variable labels
\"
Table: Multiple Response Sets
Name,Variables,Details
\$a,\"w
x
y
z
\",\"Multiple dichotomy set
Label: First multiple dichotomy group
Label source: Provided by user
Counted value: 5
Category label source: Variable labels
\"
\$b,\"z
y
\",\"Multiple dichotomy set
Counted value: 123
Category label source: Value labels of counted value
\"
\$c,\"w
x
y
z
\",\"Multiple dichotomy set
Label: duplicate variable label
Label source: First variable label among variables
Counted value: 1
Category label source: Value labels of counted value
\"
\$d,\"a
b
c
d
\",\"Multiple dichotomy set
Counted value: \`c'
Category label source: Variable labels
\"
\$e,\"w
x
y
z
\",\"Multiple category set
Label: First multiple category group
\"
\$f,\"a
b
c
d
\",\"Multiple category set
\"
Table: Multiple Response Sets
Name,Variables,Details
\$a,\"w
x
y
z
\",\"Multiple dichotomy set
Label: First multiple dichotomy group
Label source: Provided by user
Counted value: 5
Category label source: Variable labels
\"
\$b,\"z
y
\",\"Multiple dichotomy set
Counted value: 123
Category label source: Value labels of counted value
\"
\$d,\"a
b
c
d
\",\"Multiple dichotomy set
Counted value: \`c'
Category label source: Variable labels
\"
\$e,\"w
x
y
z
\",\"Multiple category set
Label: First multiple category group
\"
\$f,\"a
b
c
d
\",\"Multiple category set
\"
mrsets.sps:50: note: MRSETS: The active dataset dictionary does not contain any multiple response sets.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/mrsets.at:132"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_304
#AT_START_305
at_fn_group_banner 305 'mrsets.at:192' \
"MRSETS read and write" " " 47
at_xfail=no
(
$as_echo "305. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >mrsets.sps <<'_ATEOF'
DATA LIST NOTABLE /w x y z 1-4 a b c d 5-8 (a).
BEGIN DATA.
1234acbd
5678efgh
END DATA.
VARIABLE LABEL
w 'duplicate variable label'
x 'Variable x'
z 'Duplicate variable label'.
VALUE LABELS
/w 1 'w value 1'
/y 1 'duplicate Value label'
/z 1 'duplicate value Label'
/a b c d 'a' 'burger' 'b' 'fries' 'c' 'shake' 'd' 'taco'.
ADD VALUE LABELS
/b 'b' 'Fries'
/c 'b' 'XXX'.
MRSETS
/MDGROUP NAME=$a
LABEL='First multiple dichotomy group'
CATEGORYLABELS=VARLABELS
VARIABLES=w x y z
VALUE=5
/MDGROUP NAME=$b
CATEGORYLABELS=COUNTEDVALUES
VARIABLES=z y
VALUE=123
/MDGROUP NAME=$c
LABELSOURCE=VARLABEL
CATEGORYLABELS=COUNTEDVALUES
VARIABLES=w x y z
VALUE=1
/MDGROUP NAME=$d
LABELSOURCE=VARLABEL
VARIABLES=a b c d
VALUE='c'
/MCGROUP NAME=$e
LABEL='First multiple category group'
VARIABLES=w x y z
/MCGROUP NAME=$f
VARIABLES=a b c d.
SAVE OUTFILE='mrsets.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/mrsets.at:197: pspp -O format=csv mrsets.sps"
at_fn_check_prepare_trace "mrsets.at:197"
( $at_check_trace; pspp -O format=csv mrsets.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "mrsets.sps:25: warning: MRSETS: Variables w and z specified as part of multiple dichotomy group \$a have the same variable label. Categories represented by these variables will not be distinguishable in output.
mrsets.sps:29: warning: MRSETS: Variable z specified as part of multiple dichotomy group \$b (which has CATEGORYLABELS=COUNTEDVALUES) has no value label for its counted value. This category will not be distinguishable in output.
mrsets.sps:29: warning: MRSETS: Variable y specified as part of multiple dichotomy group \$b (which has CATEGORYLABELS=COUNTEDVALUES) has no value label for its counted value. This category will not be distinguishable in output.
mrsets.sps:34: warning: MRSETS: Variable x specified as part of multiple dichotomy group \$c (which has CATEGORYLABELS=COUNTEDVALUES) has no value label for its counted value. This category will not be distinguishable in output.
mrsets.sps:34: warning: MRSETS: Variables y and z specified as part of multiple dichotomy group \$c (which has CATEGORYLABELS=COUNTEDVALUES) have the same value label for the group's counted value. These categories will not be distinguishable in output.
mrsets.sps:38: warning: MRSETS: MDGROUP subcommand for group \$d specifies LABELSOURCE=VARLABEL but not CATEGORYLABELS=COUNTEDVALUES. Ignoring LABELSOURCE.
\"mrsets.sps:41: warning: MRSETS: Variables specified on MCGROUP should have the same categories, but w and y (and possibly others) in multiple category group \$e have different value labels for value 1.\"
\"mrsets.sps:42: warning: MRSETS: Variables specified on MCGROUP should have the same categories, but a and c (and possibly others) in multiple category group \$f have different value labels for value b.\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/mrsets.at:197"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >mrsets2.sps <<'_ATEOF'
GET FILE='mrsets.sav'.
MRSETS /DISPLAY NAME=ALL.
_ATEOF
{ set +x
$as_echo "$at_srcdir/mrsets.at:202: pspp -O format=csv mrsets2.sps"
at_fn_check_prepare_trace "mrsets.at:202"
( $at_check_trace; pspp -O format=csv mrsets2.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Multiple Response Sets
Name,Variables,Details
\$a,\"w
x
y
z
\",\"Multiple dichotomy set
Label: First multiple dichotomy group
Label source: Provided by user
Counted value: 5
Category label source: Variable labels
\"
\$b,\"z
y
\",\"Multiple dichotomy set
Counted value: 123
Category label source: Value labels of counted value
\"
\$c,\"w
x
y
z
\",\"Multiple dichotomy set
Label: duplicate variable label
Label source: First variable label among variables
Counted value: 1
Category label source: Value labels of counted value
\"
\$d,\"a
b
c
d
\",\"Multiple dichotomy set
Counted value: \`c'
Category label source: Variable labels
\"
\$e,\"w
x
y
z
\",\"Multiple category set
Label: First multiple category group
\"
\$f,\"a
b
c
d
\",\"Multiple category set
\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/mrsets.at:202"
if $at_failed; then :
hd mrsets.sav
fi
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_305
#AT_START_306
at_fn_group_banner 306 'mrsets.at:206' \
"MRSETS names must begin with \$" " " 47
at_xfail=no
(
$as_echo "306. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >mrsets.sps <<'_ATEOF'
DATA LIST NOTABLE /w x y z 1-4 a b c d 5-8 (a).
BEGIN DATA.
1234acbd
5678efgh
END DATA.
MRSETS /MCGROUP NAME=x.
_ATEOF
{ set +x
$as_echo "$at_srcdir/mrsets.at:211: pspp -O format=csv mrsets.sps"
at_fn_check_prepare_trace "mrsets.at:211"
( $at_check_trace; pspp -O format=csv mrsets.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "mrsets.sps:6: error: MRSETS: x is not a valid name for a multiple response set. Multiple response set names must begin with \`\$'.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/mrsets.at:211"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_306
#AT_START_307
at_fn_group_banner 307 'mrsets.at:216' \
"MRSETS must have at least 2 variables" " " 47
at_xfail=no
(
$as_echo "307. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >mrsets.sps <<'_ATEOF'
DATA LIST NOTABLE /w x y z 1-4 a b c d 5-8 (a).
BEGIN DATA.
1234acbd
5678efgh
END DATA.
MRSETS /MCGROUP NAME=$x VARIABLES=a.
_ATEOF
{ set +x
$as_echo "$at_srcdir/mrsets.at:221: pspp -O format=csv mrsets.sps"
at_fn_check_prepare_trace "mrsets.at:221"
( $at_check_trace; pspp -O format=csv mrsets.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"mrsets.sps:6: error: MRSETS: VARIABLES specified only variable a on MCGROUP, but at least two variables are required.\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/mrsets.at:221"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_307
#AT_START_308
at_fn_group_banner 308 'mrsets.at:226' \
"MRSETS does not allow noninteger VALUE" " " 47
at_xfail=no
(
$as_echo "308. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >mrsets.sps <<'_ATEOF'
DATA LIST NOTABLE /w x y z 1-4 a b c d 5-8 (a).
BEGIN DATA.
1234acbd
5678efgh
END DATA.
MRSETS /MDGROUP VALUE=1.5.
_ATEOF
{ set +x
$as_echo "$at_srcdir/mrsets.at:231: pspp -O format=csv mrsets.sps"
at_fn_check_prepare_trace "mrsets.at:231"
( $at_check_trace; pspp -O format=csv mrsets.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "mrsets.sps:6: error: MRSETS: Numeric VALUE must be an integer.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/mrsets.at:231"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_308
#AT_START_309
at_fn_group_banner 309 'mrsets.at:236' \
"MRSETS requires NAME to define a group" " " 47
at_xfail=no
(
$as_echo "309. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >mrsets.sps <<'_ATEOF'
DATA LIST NOTABLE /w x y z 1-4 a b c d 5-8 (a).
BEGIN DATA.
1234acbd
5678efgh
END DATA.
MRSETS /MCGROUP VARIABLES=a b c.
_ATEOF
{ set +x
$as_echo "$at_srcdir/mrsets.at:241: pspp -O format=csv mrsets.sps"
at_fn_check_prepare_trace "mrsets.at:241"
( $at_check_trace; pspp -O format=csv mrsets.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "mrsets.sps:6.32: error: MRSETS: Syntax error at end of command: Required MCGROUP specification missing from NAME subcommand.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/mrsets.at:241"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_309
#AT_START_310
at_fn_group_banner 310 'mrsets.at:246' \
"MRSETS requires VARIABLES to define a group" " " 47
at_xfail=no
(
$as_echo "310. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >mrsets.sps <<'_ATEOF'
DATA LIST NOTABLE /w x y z 1-4 a b c d 5-8 (a).
BEGIN DATA.
1234acbd
5678efgh
END DATA.
MRSETS /MCGROUP NAME=$Mcgroup.
_ATEOF
{ set +x
$as_echo "$at_srcdir/mrsets.at:251: pspp -O format=csv mrsets.sps"
at_fn_check_prepare_trace "mrsets.at:251"
( $at_check_trace; pspp -O format=csv mrsets.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "mrsets.sps:6.30: error: MRSETS: Syntax error at end of command: Required MCGROUP specification missing from VARIABLES subcommand.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/mrsets.at:251"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_310
#AT_START_311
at_fn_group_banner 311 'mrsets.at:256' \
"MRSETS variables must be same type" " " 47
at_xfail=no
(
$as_echo "311. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >mrsets.sps <<'_ATEOF'
DATA LIST NOTABLE /w x y z 1-4 a b c d 5-8 (a).
BEGIN DATA.
1234acbd
5678efgh
END DATA.
MRSETS /MCGROUP NAME=$mygroup VARIABLES=a b x y.
_ATEOF
{ set +x
$as_echo "$at_srcdir/mrsets.at:261: pspp -O format=csv mrsets.sps"
at_fn_check_prepare_trace "mrsets.at:261"
( $at_check_trace; pspp -O format=csv mrsets.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "mrsets.sps:6: error: MRSETS: a and x are not the same type. All variables in this variable list must be of the same type. x will be omitted from the list.
mrsets.sps:6: error: MRSETS: a and y are not the same type. All variables in this variable list must be of the same type. y will be omitted from the list.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/mrsets.at:261"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_311
#AT_START_312
at_fn_group_banner 312 'mrsets.at:268' \
"MRSETS variables and VALUE must be same type" " " 47
at_xfail=no
(
$as_echo "312. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >mrsets.sps <<'_ATEOF'
DATA LIST NOTABLE /w x y z 1-4 a b c d 5-8 (a).
BEGIN DATA.
1234acbd
5678efgh
END DATA.
MRSETS /MDGROUP NAME=$group1 VARIABLES=a b VALUE=1.
MRSETS /MDGROUP NAME=$group2 VARIABLES=x y VALUE='abc'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/mrsets.at:274: pspp -O format=csv mrsets.sps"
at_fn_check_prepare_trace "mrsets.at:274"
( $at_check_trace; pspp -O format=csv mrsets.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"mrsets.sps:6: error: MRSETS: MDGROUP subcommand for group \$group1 specifies a string VALUE, but the variables specified for this group are numeric.\"
\"mrsets.sps:7: error: MRSETS: MDGROUP subcommand for group \$group2 specifies a string VALUE, but the variables specified for this group are numeric.\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/mrsets.at:274"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_312
#AT_START_313
at_fn_group_banner 313 'mrsets.at:281' \
"MRSETS VALUE must not be too wide" " " 47
at_xfail=no
(
$as_echo "313. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >mrsets.sps <<'_ATEOF'
DATA LIST NOTABLE /w x y z 1-4 a b c d 5-8 (a).
BEGIN DATA.
1234acbd
5678efgh
END DATA.
MRSETS /MDGROUP NAME=$group1 VARIABLES=a b VALUE='abc'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/mrsets.at:286: pspp -O format=csv mrsets.sps"
at_fn_check_prepare_trace "mrsets.at:286"
( $at_check_trace; pspp -O format=csv mrsets.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"mrsets.sps:6: error: MRSETS: VALUE string on MDGROUP subcommand for group \$group1 is 3 bytes long, but it must be no longer than the narrowest variable in the group, which is a with a width of 1 bytes.\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/mrsets.at:286"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_313
#AT_START_314
at_fn_group_banner 314 'mrsets.at:291' \
"MRSETS LABEL and LABELSOURCE are exclusive" " " 47
at_xfail=no
(
$as_echo "314. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >mrsets.sps <<'_ATEOF'
DATA LIST NOTABLE /w x y z 1-4 a b c d 5-8 (a).
BEGIN DATA.
1234acbd
5678efgh
END DATA.
MRSETS /MDGROUP NAME=$group1 VARIABLES=a b VALUE='a'
LABEL='label' LABELSOURCE=VARLABEL.
_ATEOF
{ set +x
$as_echo "$at_srcdir/mrsets.at:297: pspp -O format=csv mrsets.sps"
at_fn_check_prepare_trace "mrsets.at:297"
( $at_check_trace; pspp -O format=csv mrsets.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "mrsets.sps:7: warning: MRSETS: MDGROUP subcommand for group \$group1 specifies LABELSOURCE=VARLABEL but not CATEGORYLABELS=COUNTEDVALUES. Ignoring LABELSOURCE.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/mrsets.at:297"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_314
#AT_START_315
at_fn_group_banner 315 'mrsets.at:302' \
"MRSETS DISPLAY or DELETE unknown group" " " 47
at_xfail=no
(
$as_echo "315. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >mrsets.sps <<'_ATEOF'
DATA LIST NOTABLE /w x y z 1-4 a b c d 5-8 (a).
BEGIN DATA.
1234acbd
5678efgh
END DATA.
MRSETS /DISPLAY NAME=[$x].
MRSETS /DELETE NAME=[$y].
_ATEOF
{ set +x
$as_echo "$at_srcdir/mrsets.at:308: pspp -O format=csv mrsets.sps"
at_fn_check_prepare_trace "mrsets.at:308"
( $at_check_trace; pspp -O format=csv mrsets.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "mrsets.sps:6: error: MRSETS: No multiple response set named \$x.
mrsets.sps:7: error: MRSETS: No multiple response set named \$y.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/mrsets.at:308"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_315
#AT_START_316
at_fn_group_banner 316 'rename-variables.at:3' \
"RENAME VARIABLES" " " 48
at_xfail=no
(
$as_echo "316. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >rename-variables.sps <<'_ATEOF'
DATA LIST LIST /brakeFluid y auxiliary warp (F2.0).
BEGIN DATA.
1 3 5 9
2 3 6 10
3 3 7 11
4 3 8 11
END DATA.
LIST.
RENAME VARIABLES brakeFluid=applecarts y=bananamobiles.
RENAME VARIABLES (warp auxiliary=foobar xyzzy).
LIST.
SAVE /OUTFILE='rename.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/rename-variables.at:22: pspp -o pspp.csv rename-variables.sps"
at_fn_check_prepare_trace "rename-variables.at:22"
( $at_check_trace; pspp -o pspp.csv rename-variables.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rename-variables.at:22"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/rename-variables.at:23: cat pspp.csv"
at_fn_check_prepare_trace "rename-variables.at:23"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
brakeFluid,F2.0
y,F2.0
auxiliary,F2.0
warp,F2.0
Table: Data List
brakeFluid,y,auxiliary,warp
1,3,5,9
2,3,6,10
3,3,7,11
4,3,8,11
Table: Data List
applecarts,bananamobiles,xyzzy,foobar
1,3,5,9
2,3,6,10
3,3,7,11
4,3,8,11
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rename-variables.at:23"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/rename-variables.at:45: grep 'bBrRaAkKeE' rename.sav"
at_fn_check_prepare_trace "rename-variables.at:45"
( $at_check_trace; grep 'bBrRaAkKeE' rename.sav
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/rename-variables.at:45"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_316
#AT_START_317
at_fn_group_banner 317 'rename-variables.at:48' \
"RENAME VARIABLES -- invalid syntax 1" " " 48
at_xfail=no
(
$as_echo "317. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >rename-variables.sps <<'_ATEOF'
DATA LIST LIST /brakeFluid y auxiliary warp (F2.0).
RENAME VARIABLES warp auxiliary=foobar xyzzy.
_ATEOF
{ set +x
$as_echo "$at_srcdir/rename-variables.at:53: pspp -o pspp.csv rename-variables.sps"
at_fn_check_prepare_trace "rename-variables.at:53"
( $at_check_trace; pspp -o pspp.csv rename-variables.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "rename-variables.sps:2.23-2.31: error: RENAME VARIABLES: Syntax error at \`auxiliary': expecting \`='.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/rename-variables.at:53"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_317
#AT_START_318
at_fn_group_banner 318 'rename-variables.at:58' \
"RENAME VARIABLES -- invalid syntax 2" " " 48
at_xfail=no
(
$as_echo "318. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >rename-variables.sps <<'_ATEOF'
DATA LIST LIST /brakeFluid y auxiliary warp (F2.0).
RENAME VARIABLES (brakeFluid=applecarts y=bananamobiles).
_ATEOF
{ set +x
$as_echo "$at_srcdir/rename-variables.at:63: pspp -o pspp.csv rename-variables.sps"
at_fn_check_prepare_trace "rename-variables.at:63"
( $at_check_trace; pspp -o pspp.csv rename-variables.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "rename-variables.sps:2: error: RENAME VARIABLES: Differing number of variables in old name list (1) and in new name list (2).
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/rename-variables.at:63"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_318
#AT_START_319
at_fn_group_banner 319 'split-file.at:3' \
"SPLIT FILE - basic test" " " 49
at_xfail=no
(
$as_echo "319. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >split-file.sps <<'_ATEOF'
title 'Test SPLIT FILE utility'.
data list notable /X 1 Y 2.
begin data.
12
16
17
19
15
14
27
20
26
25
28
29
24
end data.
split file by x.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/split-file.at:26: pspp -o pspp.csv split-file.sps"
at_fn_check_prepare_trace "split-file.at:26"
( $at_check_trace; pspp -o pspp.csv split-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/split-file.at:26"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/split-file.at:27: cat pspp.csv"
at_fn_check_prepare_trace "split-file.at:27"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Title: Test SPLIT FILE utility
Variable,Value,Label
X,1,
Table: Data List
X,Y
1,2
1,6
1,7
1,9
1,5
1,4
Variable,Value,Label
X,2,
Table: Data List
X,Y
2,7
2,0
2,6
2,5
2,8
2,9
2,4
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/split-file.at:27"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_319
#AT_START_320
at_fn_group_banner 320 'split-file.at:61' \
"SPLIT FILE - vs procedures" " " 49
at_xfail=no
(
$as_echo "320. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >split-file.sps <<'_ATEOF'
* This test is a compendium of those procedures which might
* have problems when run in conjunction with SPLITS.
data list list /a b c q g *.
begin data.
1 2 3 1 0
4 5 6 0 0
7 8 9 1 0
10 11 12 0 1
13 14 15 1 1
end data.
split file by g.
* The commented out lines are ones which currently fail.
AGGREGATE outfile='foo' /break=c /X=sum(a).
AUTORECODE variables = c into d .
COUNT e = c (1 2 3 4 5 6 7).
CROSSTABS a by b.
CORRELATIONS /VARIABLES = a b.
DELETE VARIABLES a.
DESCRIPTIVES e .
EXAMINE c by b.
EXPORT outfile='xxx'.
FACTOR /VARIABLES = b c d.
FILTER BY c.
FREQUENCIES b.
GLM c BY b.
GRAPH /HISTOGRAM = b .
GRAPH /SCATTERPLOT(BIVARIATE) = b with c by e .
LIST.
LOGISTIC REGRESSION q WITH b.
MEANS c b.
NPAR TESTS /MCNEMAR q.
ONEWAY c BY b.
QUICK CLUSTER b c.
RANK b c.
REGRESSION /VARIABLES = c /DEPENDENT = q.
RELIABILITY /VARIABLES = c b d.
RENAME VARIABLES (b = bb).
ROC bb by q(1).
SAMPLE 0.9 .
SAVE outfile='xx.sav'.
SORT CASES by bb.
T-TEST /GROUP=q(0,1) /VARIABLES=bb.
USE ALL.
FLIP /VARIABLES = bb, c .
execute.
finish.
_ATEOF
{ set +x
$as_echo "$at_srcdir/split-file.at:118: pspp -O format=csv split-file.sps"
at_fn_check_prepare_trace "split-file.at:118"
( $at_check_trace; pspp -O format=csv split-file.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/split-file.at:118"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_320
#AT_START_321
at_fn_group_banner 321 'sys-file-info.at:3' \
"SYSFILE INFO" " " 50
at_xfail=no
(
$as_echo "321. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sysfile-info.sps <<'_ATEOF'
DATA LIST LIST /x * name (a10) .
BEGIN DATA
1 one
2 two
3 three
END DATA.
SAVE OUTFILE='pro.sav'.
sysfile info file='pro.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-info.at:15: pspp -o pspp.csv sysfile-info.sps"
at_fn_check_prepare_trace "sys-file-info.at:15"
( $at_check_trace; pspp -o pspp.csv sysfile-info.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-info.at:15"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sys-file-info.at:16: sed -e '/^Created:,/d' \\
-e '/^Endian:,/d' \\
-e '/^Integer Format:,/d' \\
-e '/^Real Format:,/d' \\
-e '/^Encoding:,/d' pspp.csv"
at_fn_check_prepare_notrace 'an embedded newline' "sys-file-info.at:16"
( $at_check_trace; sed -e '/^Created:,/d' \
-e '/^Endian:,/d' \
-e '/^Integer Format:,/d' \
-e '/^Real Format:,/d' \
-e '/^Encoding:,/d' pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
x,F8.0
name,A10
File:,pro.sav
Label:,No label.
Variables:,2
Cases:,3
Type:,SPSS System File
Weight:,Not weighted.
Compression:,SAV
Variable,Description,Position
x,\"Format: F8.2
Measure: Scale
Role: Input
Display Alignment: Right
Display Width: 8\",1
name,\"Format: A10
Measure: Nominal
Role: Input
Display Alignment: Left
Display Width: 10\",2
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-info.at:16"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_321
#AT_START_322
at_fn_group_banner 322 'sys-file-info.at:54' \
"DISPLAY FILE LABEL" " " 51
at_xfail=no
(
$as_echo "322. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >display.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /x * name (a10) .
DISPLAY FILE LABEL.
FILE LABEL 'foo bar baz quux'.
DISPLAY FILE LABEL.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-info.at:63: pspp -O format=csv display.sps"
at_fn_check_prepare_trace "sys-file-info.at:63"
( $at_check_trace; pspp -O format=csv display.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "The active dataset does not have a file label.
File label: foo bar baz quux
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-info.at:63"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_322
#AT_START_323
at_fn_group_banner 323 'sys-file-info.at:74' \
"DISPLAY SCRATCH" " " 51
at_xfail=no
(
$as_echo "323. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sysfile-info.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /x * name (a10) .
DISPLAY SCRATCH.
COMPUTE #x=0.
DISPLAY SCRATCH.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-info.at:81: pspp -O format=csv sysfile-info.sps"
at_fn_check_prepare_trace "sys-file-info.at:81"
( $at_check_trace; pspp -O format=csv sysfile-info.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "sysfile-info.sps:2: warning: DISPLAY: No variables to display.
Variable
#x
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-info.at:81"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_323
#AT_START_324
at_fn_group_banner 324 'sys-file-info.at:89' \
"DISPLAY INDEX" " " 51
at_xfail=no
(
$as_echo "324. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sysfile-info.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /x * name (a10) .
DISPLAY INDEX.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-info.at:94: pspp -O format=csv sysfile-info.sps"
at_fn_check_prepare_trace "sys-file-info.at:94"
( $at_check_trace; pspp -O format=csv sysfile-info.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Position
x,1
name,2
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-info.at:94"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_324
#AT_START_325
at_fn_group_banner 325 'sys-file-info.at:101' \
"DISPLAY NAMES" " " 51
at_xfail=no
(
$as_echo "325. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sysfile-info.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /x * name (a10) .
DISPLAY NAMES.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-info.at:106: pspp -O format=csv sysfile-info.sps"
at_fn_check_prepare_trace "sys-file-info.at:106"
( $at_check_trace; pspp -O format=csv sysfile-info.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable
x
name
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-info.at:106"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_325
#AT_START_326
at_fn_group_banner 326 'sys-file-info.at:113' \
"DISPLAY LABELS" " " 51
at_xfail=no
(
$as_echo "326. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sysfile-info.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /x * name (a10) .
VARIABLE LABEL x 'variable one' name 'variable two'.
VALUE LABEL x 1 'asdf' 2 'jkl;'.
DISPLAY LABELS.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sys-file-info.at:120: pspp -O format=csv sysfile-info.sps"
at_fn_check_prepare_trace "sys-file-info.at:120"
( $at_check_trace; pspp -O format=csv sysfile-info.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Label,Position
x,variable one,1
name,variable two,2
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sys-file-info.at:120"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_326
#AT_START_327
at_fn_group_banner 327 'value-labels.at:3' \
"VALUE LABELS date formats" " " 52
at_xfail=no
(
$as_echo "327. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >value-labels.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /ad (adate10) dt (datetime20).
VALUE LABELS ad 'july 10, 1982' 'label 1'
'1-2-93' 'label 2'
'5-4-2003' 'label 3'
/dt '12 Apr 2011 06:09:56' 'label 4'.
DISPLAY DICTIONARY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/value-labels.at:12: pspp -O format=csv value-labels.sps"
at_fn_check_prepare_trace "value-labels.at:12"
( $at_check_trace; pspp -O format=csv value-labels.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
ad,\"Format: ADATE10
Value,Label
07/10/1982,label 1
01/02/1993,label 2
05/04/2003,label 3\",1
dt,\"Format: DATETIME20.0
Value,Label
12-APR-2011 06:09:56,label 4\",2
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/value-labels.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_327
#AT_START_328
at_fn_group_banner 328 'value-labels.at:27' \
"VALUE LABELS with new-line" " " 52
at_xfail=no
(
$as_echo "328. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >value-labels.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /x.
VALUE LABELS x 1 'one' 2 'first line\nsecond line' 3 'three'.
BEGIN DATA.
1
2
3
END DATA.
DISPLAY DICTIONARY.
FREQUENCIES x/STAT=NONE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/value-labels.at:39: pspp -O format=csv value-labels.sps"
at_fn_check_prepare_trace "value-labels.at:39"
( $at_check_trace; pspp -O format=csv value-labels.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
x,\"Format: F8.2
Value,Label
1.00,one
2.00,first line\\nsecond line
3.00,three\",1
Table: x
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
one,1.00,1,33.33,33.33,33.33
\"first line
second line\",2.00,1,33.33,33.33,66.67
three,3.00,1,33.33,33.33,100.00
Total,,3,100.0,100.0,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/value-labels.at:39"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_328
#AT_START_329
at_fn_group_banner 329 'value-labels.at:58' \
"VALUE LABELS with new-line in system file" " " 52
at_xfail=no
(
$as_echo "329. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >save.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /x.
VALUE LABELS x 1 'one' 2 'first line\nsecond line' 3 'three'.
BEGIN DATA.
1
2
3
END DATA.
SAVE OUTFILE='value-labels.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/value-labels.at:69: pspp -O format=csv save.sps"
at_fn_check_prepare_trace "value-labels.at:69"
( $at_check_trace; pspp -O format=csv save.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/value-labels.at:69"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >get.sps <<'_ATEOF'
GET FILE='value-labels.sav'.
DISPLAY DICTIONARY.
FREQUENCIES x/STAT=NONE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/value-labels.at:75: pspp -O format=csv get.sps"
at_fn_check_prepare_trace "value-labels.at:75"
( $at_check_trace; pspp -O format=csv get.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
x,\"Format: F8.2
Value,Label
1.00,one
2.00,first line\\nsecond line
3.00,three\",1
Table: x
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
one,1.00,1,33.33,33.33,33.33
\"first line
second line\",2.00,1,33.33,33.33,66.67
three,3.00,1,33.33,33.33,100.00
Total,,3,100.0,100.0,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/value-labels.at:75"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_329
#AT_START_330
at_fn_group_banner 330 'value-labels.at:96' \
"VALUE LABELS invalid syntax bug" " " 52
at_xfail=no
(
$as_echo "330. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >value-labels.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /a * pref * .
BEGIN DATA.
1.00 1.00
1.00 2.00
2.00 1.00
2.00 2.00
END DATA.
VALUE LABELS /var=a 'label for a'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/value-labels.at:108: pspp -O format=csv value-labels.sps"
at_fn_check_prepare_trace "value-labels.at:108"
( $at_check_trace; pspp -O format=csv value-labels.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "value-labels.sps:9: error: VALUE LABELS: var is not a variable name.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/value-labels.at:108"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_330
#AT_START_331
at_fn_group_banner 331 'value-labels.at:114' \
"VALUE LABELS trailing \`/' bug" " " 52
at_xfail=no
(
$as_echo "331. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >value-labels.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /X * .
BEGIN DATA.
1
2
3
4
END DATA.
VALUE LABELS X 1 'one' 2 'two' 3 'three'/
LIST VARIABLES=X.
_ATEOF
{ set +x
$as_echo "$at_srcdir/value-labels.at:130: pspp -O format=csv value-labels.sps"
at_fn_check_prepare_trace "value-labels.at:130"
( $at_check_trace; pspp -O format=csv value-labels.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
X
1.00
2.00
3.00
4.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/value-labels.at:130"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_331
#AT_START_332
at_fn_group_banner 332 'variable-display.at:3' \
"variable display attribute commands" " " 53
at_xfail=no
(
$as_echo "332. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >var-display.sps <<'_ATEOF'
DATA LIST FREE /x y z.
VARIABLE ALIGNMENT x (LEFT)/y (RIGHT)/z (CENTER).
VARIABLE WIDTH x (10)/y (12)/z (14).
VARIABLE LEVEL x (SCALE)/y (ORDINAL)/z (NOMINAL).
VARIABLE ROLE /TARGET x /BOTH y /NONE z.
DISPLAY DICTIONARY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/variable-display.at:12: pspp -o pspp.csv var-display.sps"
at_fn_check_prepare_trace "variable-display.at:12"
( $at_check_trace; pspp -o pspp.csv var-display.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/variable-display.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/variable-display.at:13: cat pspp.csv"
at_fn_check_prepare_trace "variable-display.at:13"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
x,\"Format: F8.2
Measure: Scale
Role: Output
Display Alignment: Left
Display Width: 10\",1
y,\"Format: F8.2
Measure: Ordinal
Role: Both
Display Alignment: Right
Display Width: 12\",2
z,\"Format: F8.2
Measure: Nominal
Role: None
Display Alignment: Center
Display Width: 14\",3
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/variable-display.at:13"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_332
#AT_START_333
at_fn_group_banner 333 'variable-display.at:36' \
"variable labels" " " 54
at_xfail=no
(
$as_echo "333. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >var-labels.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /x * y *.
BEGIN DATA.
1 100
2 200
3 300
4 400
END DATA.
* While no labels have been set, the TVARS is irrelevant.
SET TVARS=NAMES.
DESCRIPTIVES ALL.
SET TVARS=LABELS.
DESCRIPTIVES ALL.
SET TVARS=BOTH.
DESCRIPTIVES ALL.
VARIABLE LABEL x 'foo' y 'bar'.
* Now, the TVARS setting should have effect
SET TVARS=NAMES.
DESCRIPTIVES ALL.
SET TVARS=LABELS.
DESCRIPTIVES ALL.
SET TVARS=BOTH.
DESCRIPTIVES ALL.
_ATEOF
{ set +x
$as_echo "$at_srcdir/variable-display.at:73: pspp -O format=csv var-labels.sps"
at_fn_check_prepare_trace "variable-display.at:73"
( $at_check_trace; pspp -O format=csv var-labels.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Valid cases = 4; cases with missing value(s) = 0.
Variable,N,Mean,Std Dev,Minimum,Maximum
x,4,2.50,1.29,1.00,4.00
y,4,250.00,129.10,100.00,400.00
Table: Valid cases = 4; cases with missing value(s) = 0.
Variable,N,Mean,Std Dev,Minimum,Maximum
x,4,2.50,1.29,1.00,4.00
y,4,250.00,129.10,100.00,400.00
Table: Valid cases = 4; cases with missing value(s) = 0.
Variable,N,Mean,Std Dev,Minimum,Maximum
x,4,2.50,1.29,1.00,4.00
y,4,250.00,129.10,100.00,400.00
Table: Valid cases = 4; cases with missing value(s) = 0.
Variable,N,Mean,Std Dev,Minimum,Maximum
x,4,2.50,1.29,1.00,4.00
y,4,250.00,129.10,100.00,400.00
Table: Valid cases = 4; cases with missing value(s) = 0.
Variable,N,Mean,Std Dev,Minimum,Maximum
foo,4,2.50,1.29,1.00,4.00
bar,4,250.00,129.10,100.00,400.00
Table: Valid cases = 4; cases with missing value(s) = 0.
Variable,N,Mean,Std Dev,Minimum,Maximum
foo (x),4,2.50,1.29,1.00,4.00
bar (y),4,250.00,129.10,100.00,400.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/variable-display.at:73"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_333
#AT_START_334
at_fn_group_banner 334 'vector.at:3' \
"VECTOR short form" " " 55
at_xfail=no
(
$as_echo "334. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >vector.sps <<'_ATEOF'
data list notable/x 1.
vector v(4).
display vector.
_ATEOF
{ set +x
$as_echo "$at_srcdir/vector.at:9: pspp -o pspp.csv vector.sps"
at_fn_check_prepare_trace "vector.at:9"
( $at_check_trace; pspp -o pspp.csv vector.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/vector.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/vector.at:10: cat pspp.csv"
at_fn_check_prepare_trace "vector.at:10"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Vector,Position,Variable,Print Format
v,1,v1,F8.2
,2,v2,F8.2
,3,v3,F8.2
,4,v4,F8.2
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/vector.at:10"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_334
#AT_START_335
at_fn_group_banner 335 'vector.at:19' \
"VECTOR short form with format specification" " " 55
at_xfail=no
(
$as_echo "335. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >vector.sps <<'_ATEOF'
data list notable/x 1.
vector #vec(4, comma10.2).
display vector.
_ATEOF
{ set +x
$as_echo "$at_srcdir/vector.at:25: pspp -o pspp.csv vector.sps"
at_fn_check_prepare_trace "vector.at:25"
( $at_check_trace; pspp -o pspp.csv vector.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/vector.at:25"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/vector.at:26: cat pspp.csv"
at_fn_check_prepare_trace "vector.at:26"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Vector,Position,Variable,Print Format
#vec,1,#vec1,COMMA10.2
,2,#vec2,COMMA10.2
,3,#vec3,COMMA10.2
,4,#vec4,COMMA10.2
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/vector.at:26"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_335
#AT_START_336
at_fn_group_banner 336 'vector.at:35' \
"VECTOR short form in INPUT PROGRAM" " " 55
at_xfail=no
(
$as_echo "336. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >vector.sps <<'_ATEOF'
input program.
vector x(5).
data list notable/x5 x2 x3 x1 x4 1-5.
end input program.
display vector.
_ATEOF
{ set +x
$as_echo "$at_srcdir/vector.at:43: pspp -o pspp.csv vector.sps"
at_fn_check_prepare_trace "vector.at:43"
( $at_check_trace; pspp -o pspp.csv vector.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/vector.at:43"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/vector.at:44: cat pspp.csv"
at_fn_check_prepare_trace "vector.at:44"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Vector,Position,Variable,Print Format
x,1,x1,F8.2
,2,x2,F8.2
,3,x3,F8.2
,4,x4,F8.2
,5,x5,F8.2
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/vector.at:44"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_336
#AT_START_337
at_fn_group_banner 337 'vector.at:54' \
"VECTOR long form" " " 55
at_xfail=no
(
$as_echo "337. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >vector.sps <<'_ATEOF'
data list notable/u w x y z 1-5.
vector a=u to y.
vector b=x to z.
vector c=all.
display vector.
_ATEOF
{ set +x
$as_echo "$at_srcdir/vector.at:62: pspp -o pspp.csv vector.sps"
at_fn_check_prepare_trace "vector.at:62"
( $at_check_trace; pspp -o pspp.csv vector.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/vector.at:62"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/vector.at:63: cat pspp.csv"
at_fn_check_prepare_trace "vector.at:63"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Vector,Position,Variable,Print Format
a,1,u,F1.0
,2,w,F1.0
,3,x,F1.0
,4,y,F1.0
b,1,x,F1.0
,2,y,F1.0
,3,z,F1.0
c,1,u,F1.0
,2,w,F1.0
,3,x,F1.0
,4,y,F1.0
,5,z,F1.0
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/vector.at:63"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_337
#AT_START_338
at_fn_group_banner 338 'weight.at:3' \
"WEIGHT" " " 56
at_xfail=no
(
$as_echo "338. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >weight.txt <<'_ATEOF'
18 1
19 7
20 26
21 76
22 57
23 58
24 38
25 38
26 30
27 21
28 23
29 24
30 23
31 14
32 21
33 21
34 14
35 14
36 17
37 11
38 16
39 14
40 15
41 14
42 14
43 8
44 15
45 10
46 12
47 13
48 13
49 5
50 5
51 3
52 7
53 6
54 2
55 2
56 2
57 3
58 1
59 3
61 1
62 3
63 1
64 1
65 2
70 1
78 1
79 1
80 1
94 1
_ATEOF
cat >weight.sps <<'_ATEOF'
SET FORMAT F8.3.
data list file='weight.txt'/AVAR 1-5 BVAR 6-10.
weight by BVAR.
descriptives AVAR /statistics all /format serial.
frequencies AVAR /statistics all.
_ATEOF
{ set +x
$as_echo "$at_srcdir/weight.at:66: pspp -o pspp.csv weight.sps"
at_fn_check_prepare_trace "weight.at:66"
( $at_check_trace; pspp -o pspp.csv weight.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/weight.at:66"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/weight.at:67: cat pspp.csv"
at_fn_check_prepare_trace "weight.at:67"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading 1 record from \`weight.txt'.
Variable,Record,Columns,Format
AVAR,1,1- 5,F5.0
BVAR,1,6- 10,F5.0
Table: Valid cases = 730; cases with missing value(s) = 0.
Variable,Valid N,Missing N,Mean,S.E. Mean,Std Dev,Variance,Kurtosis,S.E. Kurt,Skewness,S.E. Skew,Range,Minimum,Maximum,Sum
AVAR,730,0,31.515,.405,10.937,119.608,2.411,.181,1.345,.090,76.000,18.000,94.000,23006.000
Table: AVAR
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
,18,1,.137,.137,.137
,19,7,.959,.959,1.096
,20,26,3.562,3.562,4.658
,21,76,10.411,10.411,15.068
,22,57,7.808,7.808,22.877
,23,58,7.945,7.945,30.822
,24,38,5.205,5.205,36.027
,25,38,5.205,5.205,41.233
,26,30,4.110,4.110,45.342
,27,21,2.877,2.877,48.219
,28,23,3.151,3.151,51.370
,29,24,3.288,3.288,54.658
,30,23,3.151,3.151,57.808
,31,14,1.918,1.918,59.726
,32,21,2.877,2.877,62.603
,33,21,2.877,2.877,65.479
,34,14,1.918,1.918,67.397
,35,14,1.918,1.918,69.315
,36,17,2.329,2.329,71.644
,37,11,1.507,1.507,73.151
,38,16,2.192,2.192,75.342
,39,14,1.918,1.918,77.260
,40,15,2.055,2.055,79.315
,41,14,1.918,1.918,81.233
,42,14,1.918,1.918,83.151
,43,8,1.096,1.096,84.247
,44,15,2.055,2.055,86.301
,45,10,1.370,1.370,87.671
,46,12,1.644,1.644,89.315
,47,13,1.781,1.781,91.096
,48,13,1.781,1.781,92.877
,49,5,.685,.685,93.562
,50,5,.685,.685,94.247
,51,3,.411,.411,94.658
,52,7,.959,.959,95.616
,53,6,.822,.822,96.438
,54,2,.274,.274,96.712
,55,2,.274,.274,96.986
,56,2,.274,.274,97.260
,57,3,.411,.411,97.671
,58,1,.137,.137,97.808
,59,3,.411,.411,98.219
,61,1,.137,.137,98.356
,62,3,.411,.411,98.767
,63,1,.137,.137,98.904
,64,1,.137,.137,99.041
,65,2,.274,.274,99.315
,70,1,.137,.137,99.452
,78,1,.137,.137,99.589
,79,1,.137,.137,99.726
,80,1,.137,.137,99.863
,94,1,.137,.137,100.000
Total,,730,100.0,100.0,
Table: AVAR
N,Valid,730
,Missing,0
Mean,,31.515
S.E. Mean,,.405
Mode,,21.000
Std Dev,,10.937
Variance,,119.608
Kurtosis,,2.411
S.E. Kurt,,.181
Skewness,,1.345
S.E. Skew,,.090
Range,,76.000
Minimum,,18.000
Maximum,,94.000
Sum,,23006.000
Percentiles,50 (Median),28
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/weight.at:67"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_338
#AT_START_339
at_fn_group_banner 339 'evaluate.at:35' \
"expressions - numeric syntax" " " 57
at_xfail=no
(
$as_echo "339. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /1e2.
DEBUG EVALUATE /1e2.
DEBUG EVALUATE NOOPT /1e+2.
DEBUG EVALUATE /1e+2.
DEBUG EVALUATE NOOPT /1e-2.
DEBUG EVALUATE /1e-2.
DEBUG EVALUATE NOOPT /1e-99.
DEBUG EVALUATE /1e-99.
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:35: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:35"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:35"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:35: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:35"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "100.00
100.00
100.00
100.00
0.01
0.01
0.00
0.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:35"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_339
#AT_START_340
at_fn_group_banner 340 'evaluate.at:41' \
"expressions - coercion to/from Boolean" " " 57
at_xfail=no
(
$as_echo "340. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /0 AND 1.
DEBUG EVALUATE /0 AND 1.
DEBUG EVALUATE NOOPT /$true AND 1.
DEBUG EVALUATE /$true AND 1.
DEBUG EVALUATE NOOPT /1 OR $false.
DEBUG EVALUATE /1 OR $false.
DEBUG EVALUATE NOOPT /1 OR $sysmis.
DEBUG EVALUATE /1 OR $sysmis.
DEBUG EVALUATE NOOPT /2 OR $sysmis.
DEBUG EVALUATE /2 OR $sysmis.
DEBUG EVALUATE NOOPT /2 AND $sysmis.
DEBUG EVALUATE /2 AND $sysmis.
DEBUG EVALUATE NOOPT /'string' AND $sysmis.
DEBUG EVALUATE /'string' AND $sysmis.
DEBUG EVALUATE NOOPT /0 AND $sysmis.
DEBUG EVALUATE /0 AND $sysmis.
DEBUG EVALUATE NOOPT /(1>2) + 1.
DEBUG EVALUATE /(1>2) + 1.
DEBUG EVALUATE NOOPT /$true + $false.
DEBUG EVALUATE /$true + $false.
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:41: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:41"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/evaluate.at:41"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:41: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:41"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "false
false
true
true
true
true
true
true
evaluate.sps:12: error: DEBUG EVALUATE: An operand of the logical disjunction (\`OR') operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.
sysmis
evaluate.sps:13: error: DEBUG EVALUATE: An operand of the logical disjunction (\`OR') operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.
sysmis
evaluate.sps:14: error: DEBUG EVALUATE: An operand of the logical conjunction (\`AND') operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.
false
evaluate.sps:15: error: DEBUG EVALUATE: An operand of the logical conjunction (\`AND') operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.
false
evaluate.sps:16: error: DEBUG EVALUATE: Type mismatch while applying logical conjunction (\`AND') operator: cannot convert string to boolean.
error
evaluate.sps:17: error: DEBUG EVALUATE: Type mismatch while applying logical conjunction (\`AND') operator: cannot convert string to boolean.
error
false
false
1.00
1.00
1.00
1.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:41"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_340
#AT_START_341
at_fn_group_banner 341 'evaluate.at:56' \
"expressions - addition and subtraction" " " 57
at_xfail=no
(
$as_echo "341. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /1 + 2.
DEBUG EVALUATE /1 + 2.
DEBUG EVALUATE NOOPT /1 + $true.
DEBUG EVALUATE /1 + $true.
DEBUG EVALUATE NOOPT /$sysmis + 1.
DEBUG EVALUATE /$sysmis + 1.
DEBUG EVALUATE NOOPT /7676 + $sysmis.
DEBUG EVALUATE /7676 + $sysmis.
DEBUG EVALUATE NOOPT /('foo') + 5.
DEBUG EVALUATE /('foo') + 5.
DEBUG EVALUATE NOOPT / ('foo') + ('bar').
DEBUG EVALUATE / ('foo') + ('bar').
DEBUG EVALUATE NOOPT / 'foo' + 'bar'.
DEBUG EVALUATE / 'foo' + 'bar'.
DEBUG EVALUATE NOOPT /1 +3 - 2 +4 -5.
DEBUG EVALUATE /1 +3 - 2 +4 -5.
DEBUG EVALUATE NOOPT /1 - $true.
DEBUG EVALUATE /1 - $true.
DEBUG EVALUATE NOOPT /$true - 4/3.
DEBUG EVALUATE /$true - 4/3.
DEBUG EVALUATE NOOPT /'string' - 1e10.
DEBUG EVALUATE /'string' - 1e10.
DEBUG EVALUATE NOOPT /9.5 - ''.
DEBUG EVALUATE /9.5 - ''.
DEBUG EVALUATE NOOPT /1 - 2.
DEBUG EVALUATE /1 - 2.
DEBUG EVALUATE NOOPT /52 -23.
DEBUG EVALUATE /52 -23.
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:56: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:56"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/evaluate.at:56"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:56: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:56"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "3.00
3.00
2.00
2.00
sysmis
sysmis
sysmis
sysmis
evaluate.sps:12: error: DEBUG EVALUATE: Type mismatch while applying addition (\`+') operator: cannot convert string to number.
error
evaluate.sps:13: error: DEBUG EVALUATE: Type mismatch while applying addition (\`+') operator: cannot convert string to number.
error
evaluate.sps:14: error: DEBUG EVALUATE: Type mismatch while applying addition (\`+') operator: cannot convert string to number.
error
evaluate.sps:15: error: DEBUG EVALUATE: Type mismatch while applying addition (\`+') operator: cannot convert string to number.
error
\"foobar\"
\"foobar\"
1.00
1.00
0.00
0.00
-0.33
-0.33
evaluate.sps:24: error: DEBUG EVALUATE: Type mismatch while applying subtraction (\`-') operator: cannot convert string to number.
error
evaluate.sps:25: error: DEBUG EVALUATE: Type mismatch while applying subtraction (\`-') operator: cannot convert string to number.
error
evaluate.sps:26: error: DEBUG EVALUATE: Type mismatch while applying subtraction (\`-') operator: cannot convert string to number.
error
evaluate.sps:27: error: DEBUG EVALUATE: Type mismatch while applying subtraction (\`-') operator: cannot convert string to number.
error
-1.00
-1.00
29.00
29.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:56"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_341
#AT_START_342
at_fn_group_banner 342 'evaluate.at:78' \
"expressions - multiplication and division" " " 57
at_xfail=no
(
$as_echo "342. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /5 * 10.
DEBUG EVALUATE /5 * 10.
DEBUG EVALUATE NOOPT /10 * $true.
DEBUG EVALUATE /10 * $true.
DEBUG EVALUATE NOOPT /$true * 5.
DEBUG EVALUATE /$true * 5.
DEBUG EVALUATE NOOPT /1.5 * $true.
DEBUG EVALUATE /1.5 * $true.
DEBUG EVALUATE NOOPT /5 * $sysmis.
DEBUG EVALUATE /5 * $sysmis.
DEBUG EVALUATE NOOPT /$sysmis * 15.
DEBUG EVALUATE /$sysmis * 15.
DEBUG EVALUATE NOOPT /2 * 5 / 10.
DEBUG EVALUATE /2 * 5 / 10.
DEBUG EVALUATE NOOPT /1 / 2.
DEBUG EVALUATE /1 / 2.
DEBUG EVALUATE NOOPT /2 / 5.
DEBUG EVALUATE /2 / 5.
DEBUG EVALUATE NOOPT /12 / 3 / 2.
DEBUG EVALUATE /12 / 3 / 2.
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:78: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:78"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:78"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:78: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:78"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "50.00
50.00
10.00
10.00
5.00
5.00
1.50
1.50
sysmis
sysmis
sysmis
sysmis
1.00
1.00
0.50
0.50
0.40
0.40
2.00
2.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:78"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_342
#AT_START_343
at_fn_group_banner 343 'evaluate.at:90' \
"expressions - exponentiation" " " 57
at_xfail=no
(
$as_echo "343. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /2**8.
DEBUG EVALUATE /2**8.
DEBUG EVALUATE NOOPT /(2**3)**4.
DEBUG EVALUATE /(2**3)**4.
DEBUG EVALUATE NOOPT /2**3**4.
DEBUG EVALUATE /2**3**4.
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:90: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:90"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:90"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:90: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:90"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "256.00
256.00
4096.00
4096.00
evaluate.sps:8: warning: DEBUG EVALUATE: The exponentiation operator (\`**') is left-associative, even though right-associative semantics are more useful. That is, \`a**b**c' equals \`(a**b)**c', not as \`a**(b**c)'. To disable this warning, insert parentheses.
4096.00
evaluate.sps:9: warning: DEBUG EVALUATE: The exponentiation operator (\`**') is left-associative, even though right-associative semantics are more useful. That is, \`a**b**c' equals \`(a**b)**c', not as \`a**(b**c)'. To disable this warning, insert parentheses.
4096.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:90"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_343
#AT_START_344
at_fn_group_banner 344 'evaluate.at:96' \
"expressions - unary minus" " " 57
at_xfail=no
(
$as_echo "344. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /2+-3.
DEBUG EVALUATE /2+-3.
DEBUG EVALUATE NOOPT /2*-3.
DEBUG EVALUATE /2*-3.
DEBUG EVALUATE NOOPT /-3**2.
DEBUG EVALUATE /-3**2.
DEBUG EVALUATE NOOPT /(-3)**2.
DEBUG EVALUATE /(-3)**2.
DEBUG EVALUATE NOOPT /2**-1.
DEBUG EVALUATE /2**-1.
DEBUG EVALUATE NOOPT /0**0.
DEBUG EVALUATE /0**0.
DEBUG EVALUATE NOOPT /0**-1.
DEBUG EVALUATE /0**-1.
DEBUG EVALUATE NOOPT /(-3)**1.5.
DEBUG EVALUATE /(-3)**1.5.
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:96: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:96"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:96"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:96: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:96"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "-1.00
-1.00
-6.00
-6.00
-9.00
-9.00
9.00
9.00
0.50
0.50
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:96"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_344
#AT_START_345
at_fn_group_banner 345 'evaluate.at:106' \
"expressions - AND truth table" " " 57
at_xfail=no
(
$as_echo "345. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /$false AND $false.
DEBUG EVALUATE /$false AND $false.
DEBUG EVALUATE NOOPT /$false AND $true.
DEBUG EVALUATE /$false AND $true.
DEBUG EVALUATE NOOPT /$false AND $sysmis.
DEBUG EVALUATE /$false AND $sysmis.
DEBUG EVALUATE NOOPT /$true AND $false.
DEBUG EVALUATE /$true AND $false.
DEBUG EVALUATE NOOPT /$true AND $true.
DEBUG EVALUATE /$true AND $true.
DEBUG EVALUATE NOOPT /$true AND $sysmis.
DEBUG EVALUATE /$true AND $sysmis.
DEBUG EVALUATE NOOPT /$sysmis AND $false.
DEBUG EVALUATE /$sysmis AND $false.
DEBUG EVALUATE NOOPT /$sysmis AND $true.
DEBUG EVALUATE /$sysmis AND $true.
DEBUG EVALUATE NOOPT /$sysmis AND $sysmis.
DEBUG EVALUATE /$sysmis AND $sysmis.
DEBUG EVALUATE NOOPT /$false & $false.
DEBUG EVALUATE /$false & $false.
DEBUG EVALUATE NOOPT /$false & $true.
DEBUG EVALUATE /$false & $true.
DEBUG EVALUATE NOOPT /$false & $sysmis.
DEBUG EVALUATE /$false & $sysmis.
DEBUG EVALUATE NOOPT /$true & $false.
DEBUG EVALUATE /$true & $false.
DEBUG EVALUATE NOOPT /$true & $true.
DEBUG EVALUATE /$true & $true.
DEBUG EVALUATE NOOPT /$true & $sysmis.
DEBUG EVALUATE /$true & $sysmis.
DEBUG EVALUATE NOOPT /$sysmis & $false.
DEBUG EVALUATE /$sysmis & $false.
DEBUG EVALUATE NOOPT /$sysmis & $true.
DEBUG EVALUATE /$sysmis & $true.
DEBUG EVALUATE NOOPT /$sysmis & $sysmis.
DEBUG EVALUATE /$sysmis & $sysmis.
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:106: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:106"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:106"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:106: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:106"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "false
false
false
false
false
false
false
false
true
true
sysmis
sysmis
false
false
sysmis
sysmis
sysmis
sysmis
false
false
false
false
false
false
false
false
true
true
sysmis
sysmis
false
false
sysmis
sysmis
sysmis
sysmis
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:106"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_345
#AT_START_346
at_fn_group_banner 346 'evaluate.at:126' \
"expressions - OR truth table" " " 57
at_xfail=no
(
$as_echo "346. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /$false OR $false.
DEBUG EVALUATE /$false OR $false.
DEBUG EVALUATE NOOPT /$false OR $true.
DEBUG EVALUATE /$false OR $true.
DEBUG EVALUATE NOOPT /$false OR $sysmis.
DEBUG EVALUATE /$false OR $sysmis.
DEBUG EVALUATE NOOPT /$true OR $false.
DEBUG EVALUATE /$true OR $false.
DEBUG EVALUATE NOOPT /$true OR $true.
DEBUG EVALUATE /$true OR $true.
DEBUG EVALUATE NOOPT /$true OR $sysmis.
DEBUG EVALUATE /$true OR $sysmis.
DEBUG EVALUATE NOOPT /$sysmis OR $false.
DEBUG EVALUATE /$sysmis OR $false.
DEBUG EVALUATE NOOPT /$sysmis OR $true.
DEBUG EVALUATE /$sysmis OR $true.
DEBUG EVALUATE NOOPT /$sysmis OR $sysmis.
DEBUG EVALUATE /$sysmis OR $sysmis.
DEBUG EVALUATE NOOPT /$false | $false.
DEBUG EVALUATE /$false | $false.
DEBUG EVALUATE NOOPT /$false | $true.
DEBUG EVALUATE /$false | $true.
DEBUG EVALUATE NOOPT /$false | $sysmis.
DEBUG EVALUATE /$false | $sysmis.
DEBUG EVALUATE NOOPT /$true | $false.
DEBUG EVALUATE /$true | $false.
DEBUG EVALUATE NOOPT /$true | $true.
DEBUG EVALUATE /$true | $true.
DEBUG EVALUATE NOOPT /$true | $sysmis.
DEBUG EVALUATE /$true | $sysmis.
DEBUG EVALUATE NOOPT /$sysmis | $false.
DEBUG EVALUATE /$sysmis | $false.
DEBUG EVALUATE NOOPT /$sysmis | $true.
DEBUG EVALUATE /$sysmis | $true.
DEBUG EVALUATE NOOPT /$sysmis | $sysmis.
DEBUG EVALUATE /$sysmis | $sysmis.
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:126: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:126"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:126"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:126: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:126"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "false
false
true
true
sysmis
sysmis
true
true
true
true
true
true
sysmis
sysmis
true
true
sysmis
sysmis
false
false
true
true
sysmis
sysmis
true
true
true
true
true
true
sysmis
sysmis
true
true
sysmis
sysmis
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:126"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_346
#AT_START_347
at_fn_group_banner 347 'evaluate.at:146' \
"expressions - NOT truth table" " " 57
at_xfail=no
(
$as_echo "347. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /not $false.
DEBUG EVALUATE /not $false.
DEBUG EVALUATE NOOPT /not 0.
DEBUG EVALUATE /not 0.
DEBUG EVALUATE NOOPT /not 2.5.
DEBUG EVALUATE /not 2.5.
DEBUG EVALUATE NOOPT /not $true.
DEBUG EVALUATE /not $true.
DEBUG EVALUATE NOOPT /not 1.
DEBUG EVALUATE /not 1.
DEBUG EVALUATE NOOPT /not $sysmis.
DEBUG EVALUATE /not $sysmis.
DEBUG EVALUATE NOOPT /~ $false.
DEBUG EVALUATE /~ $false.
DEBUG EVALUATE NOOPT /~ 0.
DEBUG EVALUATE /~ 0.
DEBUG EVALUATE NOOPT /~ 2.5.
DEBUG EVALUATE /~ 2.5.
DEBUG EVALUATE NOOPT /~ $true.
DEBUG EVALUATE /~ $true.
DEBUG EVALUATE NOOPT /~ 1.
DEBUG EVALUATE /~ 1.
DEBUG EVALUATE NOOPT /~ $sysmis.
DEBUG EVALUATE /~ $sysmis.
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:146: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:146"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/evaluate.at:146"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:146: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:146"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "true
true
true
true
evaluate.sps:8: error: DEBUG EVALUATE: An operand of the logical negation (\`NOT') operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.
true
evaluate.sps:9: error: DEBUG EVALUATE: An operand of the logical negation (\`NOT') operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.
true
false
false
false
false
sysmis
sysmis
true
true
true
true
evaluate.sps:20: error: DEBUG EVALUATE: An operand of the logical negation (\`NOT') operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.
true
evaluate.sps:21: error: DEBUG EVALUATE: An operand of the logical negation (\`NOT') operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.
true
false
false
false
false
sysmis
sysmis
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:146"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_347
#AT_START_348
at_fn_group_banner 348 'evaluate.at:162' \
"expressions - = <= <" " " 57
at_xfail=no
(
$as_echo "348. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /1 eq 1.
DEBUG EVALUATE /1 eq 1.
DEBUG EVALUATE NOOPT /1 = 1.
DEBUG EVALUATE /1 = 1.
DEBUG EVALUATE NOOPT /1 eq 2.
DEBUG EVALUATE /1 eq 2.
DEBUG EVALUATE NOOPT /2 = 3.
DEBUG EVALUATE /2 = 3.
DEBUG EVALUATE NOOPT /1 eq 'foobar'.
DEBUG EVALUATE /1 eq 'foobar'.
DEBUG EVALUATE NOOPT /5 eq 'foobar'.
DEBUG EVALUATE /5 eq 'foobar'.
DEBUG EVALUATE NOOPT /'baz' = 10.
DEBUG EVALUATE /'baz' = 10.
DEBUG EVALUATE NOOPT /'quux' = 5.55.
DEBUG EVALUATE /'quux' = 5.55.
DEBUG EVALUATE NOOPT /'foobar' = 'foobar'.
DEBUG EVALUATE /'foobar' = 'foobar'.
DEBUG EVALUATE NOOPT /'quux' = 'bar'.
DEBUG EVALUATE /'quux' = 'bar'.
DEBUG EVALUATE NOOPT /'bar ' = 'bar'.
DEBUG EVALUATE /'bar ' = 'bar'.
DEBUG EVALUATE NOOPT /'asdf ' = 'asdf '.
DEBUG EVALUATE /'asdf ' = 'asdf '.
DEBUG EVALUATE NOOPT /'asdfj ' = 'asdf'.
DEBUG EVALUATE /'asdfj ' = 'asdf'.
DEBUG EVALUATE NOOPT / 1 + 2 = 3.
DEBUG EVALUATE / 1 + 2 = 3.
DEBUG EVALUATE NOOPT /1 >= 2 = 2 ge 3.
DEBUG EVALUATE /1 >= 2 = 2 ge 3.
DEBUG EVALUATE NOOPT / 3 ne 2 ~= 1.
DEBUG EVALUATE / 3 ne 2 ~= 1.
DEBUG EVALUATE NOOPT /3 > 2 > 1.
DEBUG EVALUATE /3 > 2 > 1.
DEBUG EVALUATE NOOPT /1 <= 2.
DEBUG EVALUATE /1 <= 2.
DEBUG EVALUATE NOOPT /2.5 <= 1.5.
DEBUG EVALUATE /2.5 <= 1.5.
DEBUG EVALUATE NOOPT /1 le 2.
DEBUG EVALUATE /1 le 2.
DEBUG EVALUATE NOOPT /2 <= 2.
DEBUG EVALUATE /2 <= 2.
DEBUG EVALUATE NOOPT /2 le 2.
DEBUG EVALUATE /2 le 2.
DEBUG EVALUATE NOOPT / 2 < = 2.
DEBUG EVALUATE / 2 < = 2.
DEBUG EVALUATE NOOPT /1 <= 'foobar'.
DEBUG EVALUATE /1 <= 'foobar'.
DEBUG EVALUATE NOOPT /5 <= 'foobar'.
DEBUG EVALUATE /5 <= 'foobar'.
DEBUG EVALUATE NOOPT /'baz' <= 10.
DEBUG EVALUATE /'baz' <= 10.
DEBUG EVALUATE NOOPT /'quux' <= 5.55.
DEBUG EVALUATE /'quux' <= 5.55.
DEBUG EVALUATE NOOPT /'0123' <= '0123'.
DEBUG EVALUATE /'0123' <= '0123'.
DEBUG EVALUATE NOOPT /'0123' <= '0124'.
DEBUG EVALUATE /'0123' <= '0124'.
DEBUG EVALUATE NOOPT /'0124' le '0123'.
DEBUG EVALUATE /'0124' le '0123'.
DEBUG EVALUATE NOOPT /'0123 ' <= '0123'.
DEBUG EVALUATE /'0123 ' <= '0123'.
DEBUG EVALUATE NOOPT /'0123' le '0123 '.
DEBUG EVALUATE /'0123' le '0123 '.
DEBUG EVALUATE NOOPT /1 < 2.
DEBUG EVALUATE /1 < 2.
DEBUG EVALUATE NOOPT /2.5 < 1.5.
DEBUG EVALUATE /2.5 < 1.5.
DEBUG EVALUATE NOOPT /3.5 lt 4.
DEBUG EVALUATE /3.5 lt 4.
DEBUG EVALUATE NOOPT /4 lt 3.5.
DEBUG EVALUATE /4 lt 3.5.
DEBUG EVALUATE NOOPT /1 lt 'foobar'.
DEBUG EVALUATE /1 lt 'foobar'.
DEBUG EVALUATE NOOPT /5 lt 'foobar'.
DEBUG EVALUATE /5 lt 'foobar'.
DEBUG EVALUATE NOOPT /'baz' < 10.
DEBUG EVALUATE /'baz' < 10.
DEBUG EVALUATE NOOPT /'quux' < 5.55.
DEBUG EVALUATE /'quux' < 5.55.
DEBUG EVALUATE NOOPT /'0123' lt '0123'.
DEBUG EVALUATE /'0123' lt '0123'.
DEBUG EVALUATE NOOPT /'0123' < '0124'.
DEBUG EVALUATE /'0123' < '0124'.
DEBUG EVALUATE NOOPT /'0124' lt '0123'.
DEBUG EVALUATE /'0124' lt '0123'.
DEBUG EVALUATE NOOPT /'0123 ' < '0123'.
DEBUG EVALUATE /'0123 ' < '0123'.
DEBUG EVALUATE NOOPT /'0123' lt '0123 '.
DEBUG EVALUATE /'0123' lt '0123 '.
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:162: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:162"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/evaluate.at:162"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:162: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:162"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "true
true
true
true
false
false
false
false
evaluate.sps:12: error: DEBUG EVALUATE: Type mismatch while applying numeric equality (\`EQ') operator: cannot convert string to number.
error
evaluate.sps:13: error: DEBUG EVALUATE: Type mismatch while applying numeric equality (\`EQ') operator: cannot convert string to number.
error
evaluate.sps:14: error: DEBUG EVALUATE: Type mismatch while applying numeric equality (\`EQ') operator: cannot convert string to number.
error
evaluate.sps:15: error: DEBUG EVALUATE: Type mismatch while applying numeric equality (\`EQ') operator: cannot convert string to number.
error
evaluate.sps:16: error: DEBUG EVALUATE: Type mismatch while applying string equality (\`=') operator: cannot convert number to string.
error
evaluate.sps:17: error: DEBUG EVALUATE: Type mismatch while applying string equality (\`=') operator: cannot convert number to string.
error
evaluate.sps:18: error: DEBUG EVALUATE: Type mismatch while applying string equality (\`=') operator: cannot convert number to string.
error
evaluate.sps:19: error: DEBUG EVALUATE: Type mismatch while applying string equality (\`=') operator: cannot convert number to string.
error
true
true
false
false
true
true
true
true
false
false
true
true
evaluate.sps:32: warning: DEBUG EVALUATE: Chaining relational operators (e.g. \`a < b < c') will not produce the mathematically expected result. Use the AND logical operator to fix the problem (e.g. \`a < b AND b < c'). If chaining is really intended, parentheses will disable this warning (e.g. \`(a < b) < c'.)
false
evaluate.sps:33: warning: DEBUG EVALUATE: Chaining relational operators (e.g. \`a < b < c') will not produce the mathematically expected result. Use the AND logical operator to fix the problem (e.g. \`a < b AND b < c'). If chaining is really intended, parentheses will disable this warning (e.g. \`(a < b) < c'.)
false
evaluate.sps:34: warning: DEBUG EVALUATE: Chaining relational operators (e.g. \`a < b < c') will not produce the mathematically expected result. Use the AND logical operator to fix the problem (e.g. \`a < b AND b < c'). If chaining is really intended, parentheses will disable this warning (e.g. \`(a < b) < c'.)
false
evaluate.sps:35: warning: DEBUG EVALUATE: Chaining relational operators (e.g. \`a < b < c') will not produce the mathematically expected result. Use the AND logical operator to fix the problem (e.g. \`a < b AND b < c'). If chaining is really intended, parentheses will disable this warning (e.g. \`(a < b) < c'.)
false
evaluate.sps:36: warning: DEBUG EVALUATE: Chaining relational operators (e.g. \`a < b < c') will not produce the mathematically expected result. Use the AND logical operator to fix the problem (e.g. \`a < b AND b < c'). If chaining is really intended, parentheses will disable this warning (e.g. \`(a < b) < c'.)
false
evaluate.sps:37: warning: DEBUG EVALUATE: Chaining relational operators (e.g. \`a < b < c') will not produce the mathematically expected result. Use the AND logical operator to fix the problem (e.g. \`a < b AND b < c'). If chaining is really intended, parentheses will disable this warning (e.g. \`(a < b) < c'.)
false
true
true
false
false
true
true
true
true
true
true
evaluate.sps:48: error: DEBUG EVALUATE: Syntax error at \`='.
error
evaluate.sps:49: error: DEBUG EVALUATE: Syntax error at \`='.
error
evaluate.sps:50: error: DEBUG EVALUATE: Type mismatch while applying numeric less-than-or-equal-to (\`<=') operator: cannot convert string to number.
error
evaluate.sps:51: error: DEBUG EVALUATE: Type mismatch while applying numeric less-than-or-equal-to (\`<=') operator: cannot convert string to number.
error
evaluate.sps:52: error: DEBUG EVALUATE: Type mismatch while applying numeric less-than-or-equal-to (\`<=') operator: cannot convert string to number.
error
evaluate.sps:53: error: DEBUG EVALUATE: Type mismatch while applying numeric less-than-or-equal-to (\`<=') operator: cannot convert string to number.
error
evaluate.sps:54: error: DEBUG EVALUATE: Type mismatch while applying string less-than-or-equal-to (\`<=') operator: cannot convert number to string.
error
evaluate.sps:55: error: DEBUG EVALUATE: Type mismatch while applying string less-than-or-equal-to (\`<=') operator: cannot convert number to string.
error
evaluate.sps:56: error: DEBUG EVALUATE: Type mismatch while applying string less-than-or-equal-to (\`<=') operator: cannot convert number to string.
error
evaluate.sps:57: error: DEBUG EVALUATE: Type mismatch while applying string less-than-or-equal-to (\`<=') operator: cannot convert number to string.
error
true
true
true
true
false
false
true
true
true
true
true
true
false
false
true
true
false
false
evaluate.sps:76: error: DEBUG EVALUATE: Type mismatch while applying numeric less than (\`<') operator: cannot convert string to number.
error
evaluate.sps:77: error: DEBUG EVALUATE: Type mismatch while applying numeric less than (\`<') operator: cannot convert string to number.
error
evaluate.sps:78: error: DEBUG EVALUATE: Type mismatch while applying numeric less than (\`<') operator: cannot convert string to number.
error
evaluate.sps:79: error: DEBUG EVALUATE: Type mismatch while applying numeric less than (\`<') operator: cannot convert string to number.
error
evaluate.sps:80: error: DEBUG EVALUATE: Type mismatch while applying string less than (\`<') operator: cannot convert number to string.
error
evaluate.sps:81: error: DEBUG EVALUATE: Type mismatch while applying string less than (\`<') operator: cannot convert number to string.
error
evaluate.sps:82: error: DEBUG EVALUATE: Type mismatch while applying string less than (\`<') operator: cannot convert number to string.
error
evaluate.sps:83: error: DEBUG EVALUATE: Type mismatch while applying string less than (\`<') operator: cannot convert number to string.
error
false
false
true
true
false
false
false
false
false
false
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:162"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_348
#AT_START_349
at_fn_group_banner 349 'evaluate.at:230' \
"expressions - >= > <>" " " 57
at_xfail=no
(
$as_echo "349. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /1 >= 2.
DEBUG EVALUATE /1 >= 2.
DEBUG EVALUATE NOOPT /2.5 >= 1.5.
DEBUG EVALUATE /2.5 >= 1.5.
DEBUG EVALUATE NOOPT /1 ge 2.
DEBUG EVALUATE /1 ge 2.
DEBUG EVALUATE NOOPT /2 >= 2.
DEBUG EVALUATE /2 >= 2.
DEBUG EVALUATE NOOPT /2 ge 2.
DEBUG EVALUATE /2 ge 2.
DEBUG EVALUATE NOOPT / 2 > = 2.
DEBUG EVALUATE / 2 > = 2.
DEBUG EVALUATE NOOPT /1 >= 'foobar'.
DEBUG EVALUATE /1 >= 'foobar'.
DEBUG EVALUATE NOOPT /5 ge 'foobar'.
DEBUG EVALUATE /5 ge 'foobar'.
DEBUG EVALUATE NOOPT /'baz' ge 10.
DEBUG EVALUATE /'baz' ge 10.
DEBUG EVALUATE NOOPT /'quux' >= 5.55.
DEBUG EVALUATE /'quux' >= 5.55.
DEBUG EVALUATE NOOPT /'0123' ge '0123'.
DEBUG EVALUATE /'0123' ge '0123'.
DEBUG EVALUATE NOOPT /'0123' >= '0124'.
DEBUG EVALUATE /'0123' >= '0124'.
DEBUG EVALUATE NOOPT /'0124' >= '0123'.
DEBUG EVALUATE /'0124' >= '0123'.
DEBUG EVALUATE NOOPT /'0123 ' ge '0123'.
DEBUG EVALUATE /'0123 ' ge '0123'.
DEBUG EVALUATE NOOPT /'0123' >= '0123 '.
DEBUG EVALUATE /'0123' >= '0123 '.
DEBUG EVALUATE NOOPT /1 > 2.
DEBUG EVALUATE /1 > 2.
DEBUG EVALUATE NOOPT /2.5 > 1.5.
DEBUG EVALUATE /2.5 > 1.5.
DEBUG EVALUATE NOOPT /3.5 gt 4.
DEBUG EVALUATE /3.5 gt 4.
DEBUG EVALUATE NOOPT /4 gt 3.5.
DEBUG EVALUATE /4 gt 3.5.
DEBUG EVALUATE NOOPT /1 gt 'foobar'.
DEBUG EVALUATE /1 gt 'foobar'.
DEBUG EVALUATE NOOPT /5 gt 'foobar'.
DEBUG EVALUATE /5 gt 'foobar'.
DEBUG EVALUATE NOOPT /'baz' > 10.
DEBUG EVALUATE /'baz' > 10.
DEBUG EVALUATE NOOPT /'quux' > 5.55.
DEBUG EVALUATE /'quux' > 5.55.
DEBUG EVALUATE NOOPT /'0123' gt '0123'.
DEBUG EVALUATE /'0123' gt '0123'.
DEBUG EVALUATE NOOPT /'0123' > '0124'.
DEBUG EVALUATE /'0123' > '0124'.
DEBUG EVALUATE NOOPT /'0124' gt '0123'.
DEBUG EVALUATE /'0124' gt '0123'.
DEBUG EVALUATE NOOPT /'0123 ' > '0123'.
DEBUG EVALUATE /'0123 ' > '0123'.
DEBUG EVALUATE NOOPT /'0123' gt '0123 '.
DEBUG EVALUATE /'0123' gt '0123 '.
DEBUG EVALUATE NOOPT /1 ne 1.
DEBUG EVALUATE /1 ne 1.
DEBUG EVALUATE NOOPT /1 ~= 1.
DEBUG EVALUATE /1 ~= 1.
DEBUG EVALUATE NOOPT /1 <> 2.
DEBUG EVALUATE /1 <> 2.
DEBUG EVALUATE NOOPT /2 ne 3.
DEBUG EVALUATE /2 ne 3.
DEBUG EVALUATE NOOPT /1 ~= 'foobar'.
DEBUG EVALUATE /1 ~= 'foobar'.
DEBUG EVALUATE NOOPT /5 <> 'foobar'.
DEBUG EVALUATE /5 <> 'foobar'.
DEBUG EVALUATE NOOPT /'baz' ne 10.
DEBUG EVALUATE /'baz' ne 10.
DEBUG EVALUATE NOOPT /'quux' ~= 5.55.
DEBUG EVALUATE /'quux' ~= 5.55.
DEBUG EVALUATE NOOPT /'foobar' <> 'foobar'.
DEBUG EVALUATE /'foobar' <> 'foobar'.
DEBUG EVALUATE NOOPT /'quux' ne 'bar'.
DEBUG EVALUATE /'quux' ne 'bar'.
DEBUG EVALUATE NOOPT /'bar ' <> 'bar'.
DEBUG EVALUATE /'bar ' <> 'bar'.
DEBUG EVALUATE NOOPT /'asdf ' ~= 'asdf '.
DEBUG EVALUATE /'asdf ' ~= 'asdf '.
DEBUG EVALUATE NOOPT /'asdfj ' ne 'asdf'.
DEBUG EVALUATE /'asdfj ' ne 'asdf'.
DEBUG EVALUATE NOOPT / 1 < > 1.
DEBUG EVALUATE / 1 < > 1.
DEBUG EVALUATE NOOPT / 1 ~ = 1.
DEBUG EVALUATE / 1 ~ = 1.
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:230: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:230"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/evaluate.at:230"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:230: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:230"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "false
false
true
true
false
false
true
true
true
true
evaluate.sps:14: error: DEBUG EVALUATE: Syntax error at \`='.
error
evaluate.sps:15: error: DEBUG EVALUATE: Syntax error at \`='.
error
evaluate.sps:16: error: DEBUG EVALUATE: Type mismatch while applying numeric greater-than-or-equal-to (\`>=') operator: cannot convert string to number.
error
evaluate.sps:17: error: DEBUG EVALUATE: Type mismatch while applying numeric greater-than-or-equal-to (\`>=') operator: cannot convert string to number.
error
evaluate.sps:18: error: DEBUG EVALUATE: Type mismatch while applying numeric greater-than-or-equal-to (\`>=') operator: cannot convert string to number.
error
evaluate.sps:19: error: DEBUG EVALUATE: Type mismatch while applying numeric greater-than-or-equal-to (\`>=') operator: cannot convert string to number.
error
evaluate.sps:20: error: DEBUG EVALUATE: Type mismatch while applying string greater-than-or-equal-to (\`>=') operator: cannot convert number to string.
error
evaluate.sps:21: error: DEBUG EVALUATE: Type mismatch while applying string greater-than-or-equal-to (\`>=') operator: cannot convert number to string.
error
evaluate.sps:22: error: DEBUG EVALUATE: Type mismatch while applying string greater-than-or-equal-to (\`>=') operator: cannot convert number to string.
error
evaluate.sps:23: error: DEBUG EVALUATE: Type mismatch while applying string greater-than-or-equal-to (\`>=') operator: cannot convert number to string.
error
true
true
false
false
true
true
true
true
true
true
false
false
true
true
false
false
true
true
evaluate.sps:42: error: DEBUG EVALUATE: Type mismatch while applying numeric greater than (\`>') operator: cannot convert string to number.
error
evaluate.sps:43: error: DEBUG EVALUATE: Type mismatch while applying numeric greater than (\`>') operator: cannot convert string to number.
error
evaluate.sps:44: error: DEBUG EVALUATE: Type mismatch while applying numeric greater than (\`>') operator: cannot convert string to number.
error
evaluate.sps:45: error: DEBUG EVALUATE: Type mismatch while applying numeric greater than (\`>') operator: cannot convert string to number.
error
evaluate.sps:46: error: DEBUG EVALUATE: Type mismatch while applying string greater than (\`>') operator: cannot convert number to string.
error
evaluate.sps:47: error: DEBUG EVALUATE: Type mismatch while applying string greater than (\`>') operator: cannot convert number to string.
error
evaluate.sps:48: error: DEBUG EVALUATE: Type mismatch while applying string greater than (\`>') operator: cannot convert number to string.
error
evaluate.sps:49: error: DEBUG EVALUATE: Type mismatch while applying string greater than (\`>') operator: cannot convert number to string.
error
false
false
false
false
true
true
false
false
false
false
false
false
false
false
true
true
true
true
evaluate.sps:68: error: DEBUG EVALUATE: Type mismatch while applying numeric inequality (\`<>') operator: cannot convert string to number.
error
evaluate.sps:69: error: DEBUG EVALUATE: Type mismatch while applying numeric inequality (\`<>') operator: cannot convert string to number.
error
evaluate.sps:70: error: DEBUG EVALUATE: Type mismatch while applying numeric inequality (\`<>') operator: cannot convert string to number.
error
evaluate.sps:71: error: DEBUG EVALUATE: Type mismatch while applying numeric inequality (\`<>') operator: cannot convert string to number.
error
evaluate.sps:72: error: DEBUG EVALUATE: Type mismatch while applying string inequality (\`<>') operator: cannot convert number to string.
error
evaluate.sps:73: error: DEBUG EVALUATE: Type mismatch while applying string inequality (\`<>') operator: cannot convert number to string.
error
evaluate.sps:74: error: DEBUG EVALUATE: Type mismatch while applying string inequality (\`<>') operator: cannot convert number to string.
error
evaluate.sps:75: error: DEBUG EVALUATE: Type mismatch while applying string inequality (\`<>') operator: cannot convert number to string.
error
false
false
true
true
false
false
false
false
true
true
evaluate.sps:86: error: DEBUG EVALUATE: Syntax error at \`>'.
error
evaluate.sps:87: error: DEBUG EVALUATE: Syntax error at \`>'.
error
evaluate.sps:88: error: DEBUG EVALUATE: Syntax error at \`~': expecting end of command.
error
evaluate.sps:89: error: DEBUG EVALUATE: Syntax error at \`~': expecting end of command.
error
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:230"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_349
#AT_START_350
at_fn_group_banner 350 'evaluate.at:295' \
"expressions - exp lg10 ln sqrt abs mod mod10 rnd trunc" "" 57
at_xfail=no
(
$as_echo "350. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /exp(10).
DEBUG EVALUATE /exp(10).
DEBUG EVALUATE NOOPT /exp('x').
DEBUG EVALUATE /exp('x').
DEBUG EVALUATE NOOPT /lg10(500).
DEBUG EVALUATE /lg10(500).
DEBUG EVALUATE NOOPT /lg10('x').
DEBUG EVALUATE /lg10('x').
DEBUG EVALUATE NOOPT /ln(10).
DEBUG EVALUATE /ln(10).
DEBUG EVALUATE NOOPT /ln('x').
DEBUG EVALUATE /ln('x').
DEBUG EVALUATE NOOPT /sqrt(500).
DEBUG EVALUATE /sqrt(500).
DEBUG EVALUATE NOOPT /sqrt('x').
DEBUG EVALUATE /sqrt('x').
DEBUG EVALUATE NOOPT /abs(-10.5).
DEBUG EVALUATE /abs(-10.5).
DEBUG EVALUATE NOOPT /abs(-55.79).
DEBUG EVALUATE /abs(-55.79).
DEBUG EVALUATE NOOPT /abs(22).
DEBUG EVALUATE /abs(22).
DEBUG EVALUATE NOOPT /abs(0).
DEBUG EVALUATE /abs(0).
DEBUG EVALUATE NOOPT /mod(55.5, 2).
DEBUG EVALUATE /mod(55.5, 2).
DEBUG EVALUATE NOOPT /mod(-55.5, 2).
DEBUG EVALUATE /mod(-55.5, 2).
DEBUG EVALUATE NOOPT /mod(55.5, -2).
DEBUG EVALUATE /mod(55.5, -2).
DEBUG EVALUATE NOOPT /mod(-55.5, -2).
DEBUG EVALUATE /mod(-55.5, -2).
DEBUG EVALUATE NOOPT /mod('a', 2).
DEBUG EVALUATE /mod('a', 2).
DEBUG EVALUATE NOOPT /mod(2, 'a').
DEBUG EVALUATE /mod(2, 'a').
DEBUG EVALUATE NOOPT /mod('a', 'b').
DEBUG EVALUATE /mod('a', 'b').
DEBUG EVALUATE NOOPT /mod10(55.5).
DEBUG EVALUATE /mod10(55.5).
DEBUG EVALUATE NOOPT /mod10(-55.5).
DEBUG EVALUATE /mod10(-55.5).
DEBUG EVALUATE NOOPT /mod10('x').
DEBUG EVALUATE /mod10('x').
DEBUG EVALUATE NOOPT /rnd(5.4).
DEBUG EVALUATE /rnd(5.4).
DEBUG EVALUATE NOOPT /rnd(5.6).
DEBUG EVALUATE /rnd(5.6).
DEBUG EVALUATE NOOPT /rnd(-5.4).
DEBUG EVALUATE /rnd(-5.4).
DEBUG EVALUATE NOOPT /rnd(-5.6).
DEBUG EVALUATE /rnd(-5.6).
DEBUG EVALUATE NOOPT /rnd(5.56, .1).
DEBUG EVALUATE /rnd(5.56, .1).
DEBUG EVALUATE NOOPT /rnd(-5.56, .1).
DEBUG EVALUATE /rnd(-5.56, .1).
DEBUG EVALUATE NOOPT /rnd(.5).
DEBUG EVALUATE /rnd(.5).
DEBUG EVALUATE NOOPT /rnd(.5 - 2**-53).
DEBUG EVALUATE /rnd(.5 - 2**-53).
DEBUG EVALUATE NOOPT /rnd(.5 - 2**-52).
DEBUG EVALUATE /rnd(.5 - 2**-52).
DEBUG EVALUATE NOOPT /rnd(.5 - 2**-51).
DEBUG EVALUATE /rnd(.5 - 2**-51).
DEBUG EVALUATE NOOPT /rnd(.5 - 2**-45).
DEBUG EVALUATE /rnd(.5 - 2**-45).
DEBUG EVALUATE NOOPT /rnd(.5 - 2**-45, 1, 10).
DEBUG EVALUATE /rnd(.5 - 2**-45, 1, 10).
DEBUG EVALUATE NOOPT /rnd('x').
DEBUG EVALUATE /rnd('x').
DEBUG EVALUATE NOOPT /trunc(1.2).
DEBUG EVALUATE /trunc(1.2).
DEBUG EVALUATE NOOPT /trunc(1.9).
DEBUG EVALUATE /trunc(1.9).
DEBUG EVALUATE NOOPT /trunc(-1.2).
DEBUG EVALUATE /trunc(-1.2).
DEBUG EVALUATE NOOPT /trunc(-1.9).
DEBUG EVALUATE /trunc(-1.9).
DEBUG EVALUATE NOOPT /trunc('x').
DEBUG EVALUATE /trunc('x').
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:295: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:295"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/evaluate.at:295"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:295: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:295"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "22026.47
22026.47
evaluate.sps:6: error: DEBUG EVALUATE: Type mismatch invoking EXP(number) as exp(string).
error
evaluate.sps:7: error: DEBUG EVALUATE: Type mismatch invoking EXP(number) as exp(string).
error
2.70
2.70
evaluate.sps:10: error: DEBUG EVALUATE: Type mismatch invoking LG10(number) as lg10(string).
error
evaluate.sps:11: error: DEBUG EVALUATE: Type mismatch invoking LG10(number) as lg10(string).
error
2.30
2.30
evaluate.sps:14: error: DEBUG EVALUATE: Type mismatch invoking LN(number) as ln(string).
error
evaluate.sps:15: error: DEBUG EVALUATE: Type mismatch invoking LN(number) as ln(string).
error
22.36
22.36
evaluate.sps:18: error: DEBUG EVALUATE: Type mismatch invoking SQRT(number) as sqrt(string).
error
evaluate.sps:19: error: DEBUG EVALUATE: Type mismatch invoking SQRT(number) as sqrt(string).
error
10.50
10.50
55.79
55.79
22.00
22.00
0.00
0.00
1.50
1.50
-1.50
-1.50
1.50
1.50
-1.50
-1.50
evaluate.sps:36: error: DEBUG EVALUATE: Type mismatch invoking MOD(number, number) as mod(string, number).
error
evaluate.sps:37: error: DEBUG EVALUATE: Type mismatch invoking MOD(number, number) as mod(string, number).
error
evaluate.sps:38: error: DEBUG EVALUATE: Type mismatch invoking MOD(number, number) as mod(number, string).
error
evaluate.sps:39: error: DEBUG EVALUATE: Type mismatch invoking MOD(number, number) as mod(number, string).
error
evaluate.sps:40: error: DEBUG EVALUATE: Type mismatch invoking MOD(number, number) as mod(string, string).
error
evaluate.sps:41: error: DEBUG EVALUATE: Type mismatch invoking MOD(number, number) as mod(string, string).
error
5.50
5.50
-5.50
-5.50
evaluate.sps:46: error: DEBUG EVALUATE: Type mismatch invoking MOD10(number) as mod10(string).
error
evaluate.sps:47: error: DEBUG EVALUATE: Type mismatch invoking MOD10(number) as mod10(string).
error
5.00
5.00
6.00
6.00
-5.00
-5.00
-6.00
-6.00
5.60
5.60
-5.60
-5.60
1.00
1.00
1.00
1.00
1.00
1.00
1.00
1.00
0.00
0.00
1.00
1.00
evaluate.sps:72: error: DEBUG EVALUATE: Function invocation rnd(string) does not match any known function. Candidates are:
RND(number)
RND(number, number)
RND(number, number, number).
error
evaluate.sps:73: error: DEBUG EVALUATE: Function invocation rnd(string) does not match any known function. Candidates are:
RND(number)
RND(number, number)
RND(number, number, number).
error
1.00
1.00
1.00
1.00
-1.00
-1.00
-1.00
-1.00
evaluate.sps:82: error: DEBUG EVALUATE: Type mismatch invoking TRUNC(number) as trunc(string).
error
evaluate.sps:83: error: DEBUG EVALUATE: Type mismatch invoking TRUNC(number) as trunc(string).
error
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:295"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_350
#AT_START_351
at_fn_group_banner 351 'evaluate.at:358' \
"expressions - acos arsin artan cos sin tan" " " 57
at_xfail=no
(
$as_echo "351. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /acos(.5) / 3.14159 * 180.
DEBUG EVALUATE /acos(.5) / 3.14159 * 180.
DEBUG EVALUATE NOOPT /arcos(.75) / 3.14159 * 180.
DEBUG EVALUATE /arcos(.75) / 3.14159 * 180.
DEBUG EVALUATE NOOPT /arcos(-.5) / 3.14159 * 180.
DEBUG EVALUATE /arcos(-.5) / 3.14159 * 180.
DEBUG EVALUATE NOOPT /acos(-.75) / 3.14159 * 180.
DEBUG EVALUATE /acos(-.75) / 3.14159 * 180.
DEBUG EVALUATE NOOPT /acos(-1) / 3.14159 * 180.
DEBUG EVALUATE /acos(-1) / 3.14159 * 180.
DEBUG EVALUATE NOOPT /arcos(1) / 3.14159 * 180.
DEBUG EVALUATE /arcos(1) / 3.14159 * 180.
DEBUG EVALUATE NOOPT /acos(-1.01).
DEBUG EVALUATE /acos(-1.01).
DEBUG EVALUATE NOOPT /arcos(1.01).
DEBUG EVALUATE /arcos(1.01).
DEBUG EVALUATE NOOPT /acos('x').
DEBUG EVALUATE /acos('x').
DEBUG EVALUATE NOOPT /arsin(.5) / 3.14159 * 180.
DEBUG EVALUATE /arsin(.5) / 3.14159 * 180.
DEBUG EVALUATE NOOPT /asin(.25) / 3.14159 * 180.
DEBUG EVALUATE /asin(.25) / 3.14159 * 180.
DEBUG EVALUATE NOOPT /arsin(-.5) / 3.14159 * 180.
DEBUG EVALUATE /arsin(-.5) / 3.14159 * 180.
DEBUG EVALUATE NOOPT /asin(-.25) / 3.14159 * 180.
DEBUG EVALUATE /asin(-.25) / 3.14159 * 180.
DEBUG EVALUATE NOOPT /arsin(-1.01).
DEBUG EVALUATE /arsin(-1.01).
DEBUG EVALUATE NOOPT /asin(1.01).
DEBUG EVALUATE /asin(1.01).
DEBUG EVALUATE NOOPT /arsin('x').
DEBUG EVALUATE /arsin('x').
DEBUG EVALUATE NOOPT /artan(1) / 3.14159 * 180.
DEBUG EVALUATE /artan(1) / 3.14159 * 180.
DEBUG EVALUATE NOOPT /atan(10) / 3.14159 * 180.
DEBUG EVALUATE /atan(10) / 3.14159 * 180.
DEBUG EVALUATE NOOPT /artan(-1) / 3.14159 * 180.
DEBUG EVALUATE /artan(-1) / 3.14159 * 180.
DEBUG EVALUATE NOOPT /atan(-10) / 3.14159 * 180.
DEBUG EVALUATE /atan(-10) / 3.14159 * 180.
DEBUG EVALUATE NOOPT /artan('x').
DEBUG EVALUATE /artan('x').
DEBUG EVALUATE NOOPT /cos(60 / 180 * 3.14159).
DEBUG EVALUATE /cos(60 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /cos(45 / 180 * 3.14159).
DEBUG EVALUATE /cos(45 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /cos(30 / 180 * 3.14159).
DEBUG EVALUATE /cos(30 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /cos(15 / 180 * 3.14159).
DEBUG EVALUATE /cos(15 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /cos(-60 / 180 * 3.14159).
DEBUG EVALUATE /cos(-60 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /cos(-45 / 180 * 3.14159).
DEBUG EVALUATE /cos(-45 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /cos(-30 / 180 * 3.14159).
DEBUG EVALUATE /cos(-30 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /cos(-15 / 180 * 3.14159).
DEBUG EVALUATE /cos(-15 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /cos(123 / 180 * 3.14159).
DEBUG EVALUATE /cos(123 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /cos(321 / 180 * 3.14159).
DEBUG EVALUATE /cos(321 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /cos('x').
DEBUG EVALUATE /cos('x').
DEBUG EVALUATE NOOPT /sin(60 / 180 * 3.14159).
DEBUG EVALUATE /sin(60 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /sin(45 / 180 * 3.14159).
DEBUG EVALUATE /sin(45 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /sin(30 / 180 * 3.14159).
DEBUG EVALUATE /sin(30 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /sin(15 / 180 * 3.14159).
DEBUG EVALUATE /sin(15 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /sin(-60 / 180 * 3.14159).
DEBUG EVALUATE /sin(-60 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /sin(-45 / 180 * 3.14159).
DEBUG EVALUATE /sin(-45 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /sin(-30 / 180 * 3.14159).
DEBUG EVALUATE /sin(-30 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /sin(-15 / 180 * 3.14159).
DEBUG EVALUATE /sin(-15 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /sin(123 / 180 * 3.14159).
DEBUG EVALUATE /sin(123 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /sin(321 / 180 * 3.14159).
DEBUG EVALUATE /sin(321 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /sin('x').
DEBUG EVALUATE /sin('x').
DEBUG EVALUATE NOOPT /tan(60 / 180 * 3.14159).
DEBUG EVALUATE /tan(60 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /tan(45 / 180 * 3.14159).
DEBUG EVALUATE /tan(45 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /tan(30 / 180 * 3.14159).
DEBUG EVALUATE /tan(30 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /tan(15 / 180 * 3.14159).
DEBUG EVALUATE /tan(15 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /tan(-60 / 180 * 3.14159).
DEBUG EVALUATE /tan(-60 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /tan(-45 / 180 * 3.14159).
DEBUG EVALUATE /tan(-45 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /tan(-30 / 180 * 3.14159).
DEBUG EVALUATE /tan(-30 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /tan(-15 / 180 * 3.14159).
DEBUG EVALUATE /tan(-15 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /tan(123 / 180 * 3.14159).
DEBUG EVALUATE /tan(123 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /tan(321 / 180 * 3.14159).
DEBUG EVALUATE /tan(321 / 180 * 3.14159).
DEBUG EVALUATE NOOPT /tan('x').
DEBUG EVALUATE /tan('x').
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:358: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:358"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/evaluate.at:358"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:358: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:358"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "60.00
60.00
41.41
41.41
120.00
120.00
138.59
138.59
180.00
180.00
0.00
0.00
sysmis
sysmis
sysmis
sysmis
evaluate.sps:20: error: DEBUG EVALUATE: Type mismatch invoking ACOS(number) as acos(string).
error
evaluate.sps:21: error: DEBUG EVALUATE: Type mismatch invoking ACOS(number) as acos(string).
error
30.00
30.00
14.48
14.48
-30.00
-30.00
-14.48
-14.48
sysmis
sysmis
sysmis
sysmis
evaluate.sps:34: error: DEBUG EVALUATE: Type mismatch invoking ARSIN(number) as arsin(string).
error
evaluate.sps:35: error: DEBUG EVALUATE: Type mismatch invoking ARSIN(number) as arsin(string).
error
45.00
45.00
84.29
84.29
-45.00
-45.00
-84.29
-84.29
evaluate.sps:44: error: DEBUG EVALUATE: Type mismatch invoking ARTAN(number) as artan(string).
error
evaluate.sps:45: error: DEBUG EVALUATE: Type mismatch invoking ARTAN(number) as artan(string).
error
0.50
0.50
0.71
0.71
0.87
0.87
0.97
0.97
0.50
0.50
0.71
0.71
0.87
0.87
0.97
0.97
-0.54
-0.54
0.78
0.78
evaluate.sps:66: error: DEBUG EVALUATE: Type mismatch invoking COS(number) as cos(string).
error
evaluate.sps:67: error: DEBUG EVALUATE: Type mismatch invoking COS(number) as cos(string).
error
0.87
0.87
0.71
0.71
0.50
0.50
0.26
0.26
-0.87
-0.87
-0.71
-0.71
-0.50
-0.50
-0.26
-0.26
0.84
0.84
-0.63
-0.63
evaluate.sps:88: error: DEBUG EVALUATE: Type mismatch invoking SIN(number) as sin(string).
error
evaluate.sps:89: error: DEBUG EVALUATE: Type mismatch invoking SIN(number) as sin(string).
error
1.73
1.73
1.00
1.00
0.58
0.58
0.27
0.27
-1.73
-1.73
-1.00
-1.00
-0.58
-0.58
-0.27
-0.27
-1.54
-1.54
-0.81
-0.81
evaluate.sps:110: error: DEBUG EVALUATE: Type mismatch invoking TAN(number) as tan(string).
error
evaluate.sps:111: error: DEBUG EVALUATE: Type mismatch invoking TAN(number) as tan(string).
error
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:358"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_351
#AT_START_352
at_fn_group_banner 352 'evaluate.at:426' \
"expressions - missing nmiss nvalid sysmis any range max min" "" 57
at_xfail=no
(
$as_echo "352. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /missing(10).
DEBUG EVALUATE /missing(10).
DEBUG EVALUATE NOOPT /missing($sysmis).
DEBUG EVALUATE /missing($sysmis).
DEBUG EVALUATE NOOPT /missing(asin(1.01)).
DEBUG EVALUATE /missing(asin(1.01)).
DEBUG EVALUATE NOOPT /missing(asin(.5)).
DEBUG EVALUATE /missing(asin(.5)).
DEBUG EVALUATE NOOPT /missing(' ').
DEBUG EVALUATE /missing(' ').
DEBUG EVALUATE NOOPT /nmiss($sysmis).
DEBUG EVALUATE /nmiss($sysmis).
DEBUG EVALUATE NOOPT /nmiss(0).
DEBUG EVALUATE /nmiss(0).
DEBUG EVALUATE NOOPT /nmiss($sysmis, $sysmis, $sysmis).
DEBUG EVALUATE /nmiss($sysmis, $sysmis, $sysmis).
DEBUG EVALUATE NOOPT /nmiss(1, 2, 3, 4).
DEBUG EVALUATE /nmiss(1, 2, 3, 4).
DEBUG EVALUATE NOOPT /nmiss(1, $sysmis, $sysmis, 2, 2, $sysmis, $sysmis, 3, 4).
DEBUG EVALUATE /nmiss(1, $sysmis, $sysmis, 2, 2, $sysmis, $sysmis, 3, 4).
DEBUG EVALUATE NOOPT /nvalid($sysmis).
DEBUG EVALUATE /nvalid($sysmis).
DEBUG EVALUATE NOOPT /nvalid(0).
DEBUG EVALUATE /nvalid(0).
DEBUG EVALUATE NOOPT /nvalid($sysmis, $sysmis, $sysmis).
DEBUG EVALUATE /nvalid($sysmis, $sysmis, $sysmis).
DEBUG EVALUATE NOOPT /nvalid(1, 2, 3, 4).
DEBUG EVALUATE /nvalid(1, 2, 3, 4).
DEBUG EVALUATE NOOPT /nvalid(1, $sysmis, $sysmis, 2, 2, $sysmis, $sysmis, 3, 4).
DEBUG EVALUATE /nvalid(1, $sysmis, $sysmis, 2, 2, $sysmis, $sysmis, 3, 4).
DEBUG EVALUATE NOOPT /sysmis(10).
DEBUG EVALUATE /sysmis(10).
DEBUG EVALUATE NOOPT /sysmis($sysmis).
DEBUG EVALUATE /sysmis($sysmis).
DEBUG EVALUATE NOOPT /sysmis(asin(1.01)).
DEBUG EVALUATE /sysmis(asin(1.01)).
DEBUG EVALUATE NOOPT /sysmis(asin(.5)).
DEBUG EVALUATE /sysmis(asin(.5)).
DEBUG EVALUATE NOOPT /sysmis(' ').
DEBUG EVALUATE /sysmis(' ').
DEBUG EVALUATE NOOPT /any($sysmis, 1, $sysmis, 3).
DEBUG EVALUATE /any($sysmis, 1, $sysmis, 3).
DEBUG EVALUATE NOOPT /any(1, 1, 2, 3).
DEBUG EVALUATE /any(1, 1, 2, 3).
DEBUG EVALUATE NOOPT /any(1, $true, 2, 3).
DEBUG EVALUATE /any(1, $true, 2, 3).
DEBUG EVALUATE NOOPT /any(1, $false, 2, 3).
DEBUG EVALUATE /any(1, $false, 2, 3).
DEBUG EVALUATE NOOPT /any(2, 1, 2, 3).
DEBUG EVALUATE /any(2, 1, 2, 3).
DEBUG EVALUATE NOOPT /any(3, 1, 2, 3).
DEBUG EVALUATE /any(3, 1, 2, 3).
DEBUG EVALUATE NOOPT /any(5, 1, 2, 3).
DEBUG EVALUATE /any(5, 1, 2, 3).
DEBUG EVALUATE NOOPT /any(1, 1, 1, 1).
DEBUG EVALUATE /any(1, 1, 1, 1).
DEBUG EVALUATE NOOPT /any($sysmis, 1, 1, 1).
DEBUG EVALUATE /any($sysmis, 1, 1, 1).
DEBUG EVALUATE NOOPT /any(1, $sysmis, $sysmis, $sysmis).
DEBUG EVALUATE /any(1, $sysmis, $sysmis, $sysmis).
DEBUG EVALUATE NOOPT /any($sysmis, $sysmis, $sysmis, $sysmis).
DEBUG EVALUATE /any($sysmis, $sysmis, $sysmis, $sysmis).
DEBUG EVALUATE NOOPT /any(1).
DEBUG EVALUATE /any(1).
DEBUG EVALUATE NOOPT /any('1', 2, 3, 4).
DEBUG EVALUATE /any('1', 2, 3, 4).
DEBUG EVALUATE NOOPT /any(1, '2', 3, 4).
DEBUG EVALUATE /any(1, '2', 3, 4).
DEBUG EVALUATE NOOPT /any(1, 2, '3', 4).
DEBUG EVALUATE /any(1, 2, '3', 4).
DEBUG EVALUATE NOOPT /any(1, 2, 3, '4').
DEBUG EVALUATE /any(1, 2, 3, '4').
DEBUG EVALUATE NOOPT /any('', 'a', '', 'c').
DEBUG EVALUATE /any('', 'a', '', 'c').
DEBUG EVALUATE NOOPT /any('a', 'a', 'b', 'c').
DEBUG EVALUATE /any('a', 'a', 'b', 'c').
DEBUG EVALUATE NOOPT /any('b', 'a', 'b', 'c').
DEBUG EVALUATE /any('b', 'a', 'b', 'c').
DEBUG EVALUATE NOOPT /any('c', 'a', 'b', 'c').
DEBUG EVALUATE /any('c', 'a', 'b', 'c').
DEBUG EVALUATE NOOPT /any('e', 'a', 'b', 'c').
DEBUG EVALUATE /any('e', 'a', 'b', 'c').
DEBUG EVALUATE NOOPT /any('a', 'a', 'a', 'a').
DEBUG EVALUATE /any('a', 'a', 'a', 'a').
DEBUG EVALUATE NOOPT /any('', 'a', 'a', 'a').
DEBUG EVALUATE /any('', 'a', 'a', 'a').
DEBUG EVALUATE NOOPT /any('a', '', '', '').
DEBUG EVALUATE /any('a', '', '', '').
DEBUG EVALUATE NOOPT /any('a').
DEBUG EVALUATE /any('a').
DEBUG EVALUATE NOOPT /any('a', 'a ', 'b', 'c').
DEBUG EVALUATE /any('a', 'a ', 'b', 'c').
DEBUG EVALUATE NOOPT /any('b ', 'a', 'b', 'c').
DEBUG EVALUATE /any('b ', 'a', 'b', 'c').
DEBUG EVALUATE NOOPT /any('c ', 'a', 'b', 'c ').
DEBUG EVALUATE /any('c ', 'a', 'b', 'c ').
DEBUG EVALUATE NOOPT /any(a10, 'b', 'c', 'd').
DEBUG EVALUATE /any(a10, 'b', 'c', 'd').
DEBUG EVALUATE NOOPT /any('a', b, 'c', 'd').
DEBUG EVALUATE /any('a', b, 'c', 'd').
DEBUG EVALUATE NOOPT /any('a', 'b', c, 'd').
DEBUG EVALUATE /any('a', 'b', c, 'd').
DEBUG EVALUATE NOOPT /any('a', 'b', 'c', d).
DEBUG EVALUATE /any('a', 'b', 'c', d).
DEBUG EVALUATE NOOPT /range(5, 1, 10).
DEBUG EVALUATE /range(5, 1, 10).
DEBUG EVALUATE NOOPT /range(1, 1, 10).
DEBUG EVALUATE /range(1, 1, 10).
DEBUG EVALUATE NOOPT /range(10, 1, 10).
DEBUG EVALUATE /range(10, 1, 10).
DEBUG EVALUATE NOOPT /range(-1, 1, 10).
DEBUG EVALUATE /range(-1, 1, 10).
DEBUG EVALUATE NOOPT /range(12, 1, 10).
DEBUG EVALUATE /range(12, 1, 10).
DEBUG EVALUATE NOOPT /range($sysmis, 1, 10).
DEBUG EVALUATE /range($sysmis, 1, 10).
DEBUG EVALUATE NOOPT /range(5, 1, $sysmis).
DEBUG EVALUATE /range(5, 1, $sysmis).
DEBUG EVALUATE NOOPT /range(5, $sysmis, 10).
DEBUG EVALUATE /range(5, $sysmis, 10).
DEBUG EVALUATE NOOPT /range($sysmis, $sysmis, 10).
DEBUG EVALUATE /range($sysmis, $sysmis, 10).
DEBUG EVALUATE NOOPT /range($sysmis, 1, $sysmis).
DEBUG EVALUATE /range($sysmis, 1, $sysmis).
DEBUG EVALUATE NOOPT /range($sysmis, $sysmis, $sysmis).
DEBUG EVALUATE /range($sysmis, $sysmis, $sysmis).
DEBUG EVALUATE NOOPT /range(0, 1, 8, 10, 18).
DEBUG EVALUATE /range(0, 1, 8, 10, 18).
DEBUG EVALUATE NOOPT /range(1, 1, 8, 10, 18).
DEBUG EVALUATE /range(1, 1, 8, 10, 18).
DEBUG EVALUATE NOOPT /range(6, 1, 8, 10, 18).
DEBUG EVALUATE /range(6, 1, 8, 10, 18).
DEBUG EVALUATE NOOPT /range(8, 1, 8, 10, 18).
DEBUG EVALUATE /range(8, 1, 8, 10, 18).
DEBUG EVALUATE NOOPT /range(9, 1, 8, 10, 18).
DEBUG EVALUATE /range(9, 1, 8, 10, 18).
DEBUG EVALUATE NOOPT /range(10, 1, 8, 10, 18).
DEBUG EVALUATE /range(10, 1, 8, 10, 18).
DEBUG EVALUATE NOOPT /range(13, 1, 8, 10, 18).
DEBUG EVALUATE /range(13, 1, 8, 10, 18).
DEBUG EVALUATE NOOPT /range(16, 1, 8, 10, 18).
DEBUG EVALUATE /range(16, 1, 8, 10, 18).
DEBUG EVALUATE NOOPT /range(18, 1, 8, 10, 18).
DEBUG EVALUATE /range(18, 1, 8, 10, 18).
DEBUG EVALUATE NOOPT /range(20, 1, 8, 10, 18).
DEBUG EVALUATE /range(20, 1, 8, 10, 18).
DEBUG EVALUATE NOOPT /range(1).
DEBUG EVALUATE /range(1).
DEBUG EVALUATE NOOPT /range(1, 2).
DEBUG EVALUATE /range(1, 2).
DEBUG EVALUATE NOOPT /range(1, 2, 3, 4).
DEBUG EVALUATE /range(1, 2, 3, 4).
DEBUG EVALUATE NOOPT /range(1, 2, 3, 4, 5, 6).
DEBUG EVALUATE /range(1, 2, 3, 4, 5, 6).
DEBUG EVALUATE NOOPT /range('1', 2, 3).
DEBUG EVALUATE /range('1', 2, 3).
DEBUG EVALUATE NOOPT /range(1, '2', 3).
DEBUG EVALUATE /range(1, '2', 3).
DEBUG EVALUATE NOOPT /range(1, 2, '3').
DEBUG EVALUATE /range(1, 2, '3').
DEBUG EVALUATE NOOPT /range('123', '111', '888').
DEBUG EVALUATE /range('123', '111', '888').
DEBUG EVALUATE NOOPT /range('111', '111', '888').
DEBUG EVALUATE /range('111', '111', '888').
DEBUG EVALUATE NOOPT /range('888', '111', '888').
DEBUG EVALUATE /range('888', '111', '888').
DEBUG EVALUATE NOOPT /range('110', '111', '888').
DEBUG EVALUATE /range('110', '111', '888').
DEBUG EVALUATE NOOPT /range('889', '111', '888').
DEBUG EVALUATE /range('889', '111', '888').
DEBUG EVALUATE NOOPT /range('000', '111', '888').
DEBUG EVALUATE /range('000', '111', '888').
DEBUG EVALUATE NOOPT /range('999', '111', '888').
DEBUG EVALUATE /range('999', '111', '888').
DEBUG EVALUATE NOOPT /range('123 ', '111', '888').
DEBUG EVALUATE /range('123 ', '111', '888').
DEBUG EVALUATE NOOPT /range('123', '111 ', '888').
DEBUG EVALUATE /range('123', '111 ', '888').
DEBUG EVALUATE NOOPT /range('123', '111', '888 ').
DEBUG EVALUATE /range('123', '111', '888 ').
DEBUG EVALUATE NOOPT /range('123', '111 ', '888 ').
DEBUG EVALUATE /range('123', '111 ', '888 ').
DEBUG EVALUATE NOOPT /range('00', '01', '08', '10', '18').
DEBUG EVALUATE /range('00', '01', '08', '10', '18').
DEBUG EVALUATE NOOPT /range('01', '01', '08', '10', '18').
DEBUG EVALUATE /range('01', '01', '08', '10', '18').
DEBUG EVALUATE NOOPT /range('06', '01', '08', '10', '18').
DEBUG EVALUATE /range('06', '01', '08', '10', '18').
DEBUG EVALUATE NOOPT /range('08', '01', '08', '10', '18').
DEBUG EVALUATE /range('08', '01', '08', '10', '18').
DEBUG EVALUATE NOOPT /range('09', '01', '08', '10', '18').
DEBUG EVALUATE /range('09', '01', '08', '10', '18').
DEBUG EVALUATE NOOPT /range('10', '01', '08', '10', '18').
DEBUG EVALUATE /range('10', '01', '08', '10', '18').
DEBUG EVALUATE NOOPT /range('15', '01', '08', '10', '18').
DEBUG EVALUATE /range('15', '01', '08', '10', '18').
DEBUG EVALUATE NOOPT /range('18', '01', '08', '10', '18').
DEBUG EVALUATE /range('18', '01', '08', '10', '18').
DEBUG EVALUATE NOOPT /range('19', '01', '08', '10', '18').
DEBUG EVALUATE /range('19', '01', '08', '10', '18').
DEBUG EVALUATE NOOPT /range('1').
DEBUG EVALUATE /range('1').
DEBUG EVALUATE NOOPT /range('1', '2').
DEBUG EVALUATE /range('1', '2').
DEBUG EVALUATE NOOPT /range('1', '2', '3', '4').
DEBUG EVALUATE /range('1', '2', '3', '4').
DEBUG EVALUATE NOOPT /range('1', '2', '3', '4', '5', '6').
DEBUG EVALUATE /range('1', '2', '3', '4', '5', '6').
DEBUG EVALUATE NOOPT /range(1, '2', '3').
DEBUG EVALUATE /range(1, '2', '3').
DEBUG EVALUATE NOOPT /range('1', 2, '3').
DEBUG EVALUATE /range('1', 2, '3').
DEBUG EVALUATE NOOPT /range('1', '2', 3).
DEBUG EVALUATE /range('1', '2', 3).
DEBUG EVALUATE NOOPT /max(1, 2, 3, 4, 5).
DEBUG EVALUATE /max(1, 2, 3, 4, 5).
DEBUG EVALUATE NOOPT /max(1, $sysmis, 2, 3, $sysmis, 4, 5).
DEBUG EVALUATE /max(1, $sysmis, 2, 3, $sysmis, 4, 5).
DEBUG EVALUATE NOOPT /max(1, 2).
DEBUG EVALUATE /max(1, 2).
DEBUG EVALUATE NOOPT /max().
DEBUG EVALUATE /max().
DEBUG EVALUATE NOOPT /max(1).
DEBUG EVALUATE /max(1).
DEBUG EVALUATE NOOPT /max(1, $sysmis).
DEBUG EVALUATE /max(1, $sysmis).
DEBUG EVALUATE NOOPT /max(1, 2, 3, $sysmis).
DEBUG EVALUATE /max(1, 2, 3, $sysmis).
DEBUG EVALUATE NOOPT /max.4(1, 2, 3, $sysmis).
DEBUG EVALUATE /max.4(1, 2, 3, $sysmis).
DEBUG EVALUATE NOOPT /max.4(1, 2, 3).
DEBUG EVALUATE /max.4(1, 2, 3).
DEBUG EVALUATE NOOPT /max("2", "3", "5", "1", "4").
DEBUG EVALUATE /max("2", "3", "5", "1", "4").
DEBUG EVALUATE NOOPT /max("1", "2").
DEBUG EVALUATE /max("1", "2").
DEBUG EVALUATE NOOPT /max("1").
DEBUG EVALUATE /max("1").
DEBUG EVALUATE NOOPT /min(1, 2, 3, 4, 5).
DEBUG EVALUATE /min(1, 2, 3, 4, 5).
DEBUG EVALUATE NOOPT /min(1, $sysmis, 2, 3, $sysmis, 4, 5).
DEBUG EVALUATE /min(1, $sysmis, 2, 3, $sysmis, 4, 5).
DEBUG EVALUATE NOOPT /min(1, 2).
DEBUG EVALUATE /min(1, 2).
DEBUG EVALUATE NOOPT /min().
DEBUG EVALUATE /min().
DEBUG EVALUATE NOOPT /min(1).
DEBUG EVALUATE /min(1).
DEBUG EVALUATE NOOPT /min(1, $sysmis).
DEBUG EVALUATE /min(1, $sysmis).
DEBUG EVALUATE NOOPT /min(1, 2, 3, $sysmis).
DEBUG EVALUATE /min(1, 2, 3, $sysmis).
DEBUG EVALUATE NOOPT /min.4(1, 2, 3, $sysmis).
DEBUG EVALUATE /min.4(1, 2, 3, $sysmis).
DEBUG EVALUATE NOOPT /min.4(1, 2, 3).
DEBUG EVALUATE /min.4(1, 2, 3).
DEBUG EVALUATE NOOPT /min("2", "3", "5", "1", "4").
DEBUG EVALUATE /min("2", "3", "5", "1", "4").
DEBUG EVALUATE NOOPT /min("1", "2").
DEBUG EVALUATE /min("1", "2").
DEBUG EVALUATE NOOPT /min("1").
DEBUG EVALUATE /min("1").
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:426: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:426"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/evaluate.at:426"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:426: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:426"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "false
false
true
true
true
true
false
false
evaluate.sps:12: error: DEBUG EVALUATE: Type mismatch invoking MISSING(number) as missing(string).
error
evaluate.sps:13: error: DEBUG EVALUATE: Type mismatch invoking MISSING(number) as missing(string).
error
1.00
1.00
0.00
0.00
3.00
3.00
0.00
0.00
4.00
4.00
0.00
0.00
1.00
1.00
0.00
0.00
4.00
4.00
5.00
5.00
false
false
true
true
true
true
false
false
evaluate.sps:42: error: DEBUG EVALUATE: Function invocation sysmis(string) does not match any known function. Candidates are:
SYSMIS(num_variable)
SYSMIS(number).
error
evaluate.sps:43: error: DEBUG EVALUATE: Function invocation sysmis(string) does not match any known function. Candidates are:
SYSMIS(num_variable)
SYSMIS(number).
error
sysmis
sysmis
true
true
true
true
false
false
true
true
true
true
false
false
true
true
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
evaluate.sps:66: error: DEBUG EVALUATE: Function invocation any(number) does not match any known function. Candidates are:
ANY(number, number[, number]...)
ANY(string, string[, string]...).
error
evaluate.sps:67: error: DEBUG EVALUATE: Function invocation any(number) does not match any known function. Candidates are:
ANY(number, number[, number]...)
ANY(string, string[, string]...).
error
evaluate.sps:68: error: DEBUG EVALUATE: Function invocation any(string, number, number, number) does not match any known function. Candidates are:
ANY(number, number[, number]...)
ANY(string, string[, string]...).
error
evaluate.sps:69: error: DEBUG EVALUATE: Function invocation any(string, number, number, number) does not match any known function. Candidates are:
ANY(number, number[, number]...)
ANY(string, string[, string]...).
error
evaluate.sps:70: error: DEBUG EVALUATE: Function invocation any(number, string, number, number) does not match any known function. Candidates are:
ANY(number, number[, number]...)
ANY(string, string[, string]...).
error
evaluate.sps:71: error: DEBUG EVALUATE: Function invocation any(number, string, number, number) does not match any known function. Candidates are:
ANY(number, number[, number]...)
ANY(string, string[, string]...).
error
evaluate.sps:72: error: DEBUG EVALUATE: Function invocation any(number, number, string, number) does not match any known function. Candidates are:
ANY(number, number[, number]...)
ANY(string, string[, string]...).
error
evaluate.sps:73: error: DEBUG EVALUATE: Function invocation any(number, number, string, number) does not match any known function. Candidates are:
ANY(number, number[, number]...)
ANY(string, string[, string]...).
error
evaluate.sps:74: error: DEBUG EVALUATE: Function invocation any(number, number, number, string) does not match any known function. Candidates are:
ANY(number, number[, number]...)
ANY(string, string[, string]...).
error
evaluate.sps:75: error: DEBUG EVALUATE: Function invocation any(number, number, number, string) does not match any known function. Candidates are:
ANY(number, number[, number]...)
ANY(string, string[, string]...).
error
true
true
true
true
true
true
true
true
false
false
true
true
false
false
false
false
evaluate.sps:92: error: DEBUG EVALUATE: Function invocation any(string) does not match any known function. Candidates are:
ANY(number, number[, number]...)
ANY(string, string[, string]...).
error
evaluate.sps:93: error: DEBUG EVALUATE: Function invocation any(string) does not match any known function. Candidates are:
ANY(number, number[, number]...)
ANY(string, string[, string]...).
error
true
true
true
true
true
true
evaluate.sps:100: error: DEBUG EVALUATE: Function invocation any(format, string, string, string) does not match any known function. Candidates are:
ANY(number, number[, number]...)
ANY(string, string[, string]...).
error
evaluate.sps:101: error: DEBUG EVALUATE: Function invocation any(format, string, string, string) does not match any known function. Candidates are:
ANY(number, number[, number]...)
ANY(string, string[, string]...).
error
evaluate.sps:102: error: DEBUG EVALUATE: Unknown identifier b.
error
evaluate.sps:103: error: DEBUG EVALUATE: Unknown identifier b.
error
evaluate.sps:104: error: DEBUG EVALUATE: Unknown identifier c.
error
evaluate.sps:105: error: DEBUG EVALUATE: Unknown identifier c.
error
evaluate.sps:106: error: DEBUG EVALUATE: Unknown identifier d.
error
evaluate.sps:107: error: DEBUG EVALUATE: Unknown identifier d.
error
true
true
true
true
true
true
false
false
false
false
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
false
false
true
true
true
true
true
true
false
false
true
true
true
true
true
true
true
true
false
false
evaluate.sps:150: error: DEBUG EVALUATE: Function invocation range(number) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).
error
evaluate.sps:151: error: DEBUG EVALUATE: Function invocation range(number) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).
error
evaluate.sps:152: error: DEBUG EVALUATE: RANGE(number, number, number[, number, number]...) must have an even number of arguments in list.
error
evaluate.sps:153: error: DEBUG EVALUATE: RANGE(number, number, number[, number, number]...) must have an even number of arguments in list.
error
evaluate.sps:154: error: DEBUG EVALUATE: RANGE(number, number, number[, number, number]...) must have an even number of arguments in list.
error
evaluate.sps:155: error: DEBUG EVALUATE: RANGE(number, number, number[, number, number]...) must have an even number of arguments in list.
error
evaluate.sps:156: error: DEBUG EVALUATE: RANGE(number, number, number[, number, number]...) must have an even number of arguments in list.
error
evaluate.sps:157: error: DEBUG EVALUATE: RANGE(number, number, number[, number, number]...) must have an even number of arguments in list.
error
evaluate.sps:158: error: DEBUG EVALUATE: Function invocation range(string, number, number) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).
error
evaluate.sps:159: error: DEBUG EVALUATE: Function invocation range(string, number, number) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).
error
evaluate.sps:160: error: DEBUG EVALUATE: Function invocation range(number, string, number) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).
error
evaluate.sps:161: error: DEBUG EVALUATE: Function invocation range(number, string, number) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).
error
evaluate.sps:162: error: DEBUG EVALUATE: Function invocation range(number, number, string) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).
error
evaluate.sps:163: error: DEBUG EVALUATE: Function invocation range(number, number, string) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).
error
true
true
true
true
true
true
false
false
false
false
false
false
false
false
true
true
true
true
true
true
true
true
false
false
true
true
true
true
true
true
false
false
true
true
true
true
true
true
false
false
evaluate.sps:204: error: DEBUG EVALUATE: Function invocation range(string) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).
error
evaluate.sps:205: error: DEBUG EVALUATE: Function invocation range(string) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).
error
evaluate.sps:206: error: DEBUG EVALUATE: RANGE(string, string, string[, string, string]...) must have an even number of arguments in list.
error
evaluate.sps:207: error: DEBUG EVALUATE: RANGE(string, string, string[, string, string]...) must have an even number of arguments in list.
error
evaluate.sps:208: error: DEBUG EVALUATE: RANGE(string, string, string[, string, string]...) must have an even number of arguments in list.
error
evaluate.sps:209: error: DEBUG EVALUATE: RANGE(string, string, string[, string, string]...) must have an even number of arguments in list.
error
evaluate.sps:210: error: DEBUG EVALUATE: RANGE(string, string, string[, string, string]...) must have an even number of arguments in list.
error
evaluate.sps:211: error: DEBUG EVALUATE: RANGE(string, string, string[, string, string]...) must have an even number of arguments in list.
error
evaluate.sps:212: error: DEBUG EVALUATE: Function invocation range(number, string, string) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).
error
evaluate.sps:213: error: DEBUG EVALUATE: Function invocation range(number, string, string) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).
error
evaluate.sps:214: error: DEBUG EVALUATE: Function invocation range(string, number, string) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).
error
evaluate.sps:215: error: DEBUG EVALUATE: Function invocation range(string, number, string) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).
error
evaluate.sps:216: error: DEBUG EVALUATE: Function invocation range(string, string, number) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).
error
evaluate.sps:217: error: DEBUG EVALUATE: Function invocation range(string, string, number) does not match any known function. Candidates are:
RANGE(number, number, number[, number, number]...)
RANGE(string, string, string[, string, string]...).
error
5.00
5.00
5.00
5.00
2.00
2.00
evaluate.sps:224: error: DEBUG EVALUATE: Function invocation max() does not match any known function. Candidates are:
MAX(number[, number]...)
MAX(string[, string]...).
error
evaluate.sps:225: error: DEBUG EVALUATE: Function invocation max() does not match any known function. Candidates are:
MAX(number[, number]...)
MAX(string[, string]...).
error
1.00
1.00
1.00
1.00
3.00
3.00
sysmis
sysmis
evaluate.sps:234: error: DEBUG EVALUATE: With MAX(number[, number]...), using minimum valid argument count of 4 does not make sense when passing only 3 arguments in list.
error
evaluate.sps:235: error: DEBUG EVALUATE: With MAX(number[, number]...), using minimum valid argument count of 4 does not make sense when passing only 3 arguments in list.
error
\"5\"
\"5\"
\"2\"
\"2\"
\"1\"
\"1\"
1.00
1.00
1.00
1.00
1.00
1.00
evaluate.sps:248: error: DEBUG EVALUATE: Function invocation min() does not match any known function. Candidates are:
MIN(number[, number]...)
MIN(string[, string]...).
error
evaluate.sps:249: error: DEBUG EVALUATE: Function invocation min() does not match any known function. Candidates are:
MIN(number[, number]...)
MIN(string[, string]...).
error
1.00
1.00
1.00
1.00
1.00
1.00
sysmis
sysmis
evaluate.sps:258: error: DEBUG EVALUATE: With MIN(number[, number]...), using minimum valid argument count of 4 does not make sense when passing only 3 arguments in list.
error
evaluate.sps:259: error: DEBUG EVALUATE: With MIN(number[, number]...), using minimum valid argument count of 4 does not make sense when passing only 3 arguments in list.
error
\"1\"
\"1\"
\"1\"
\"1\"
\"1\"
\"1\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:426"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_352
#AT_START_353
at_fn_group_banner 353 'evaluate.at:636' \
"expressions - cfvar mean sd sum variance" " " 57
at_xfail=no
(
$as_echo "353. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /cfvar(1, 2, 3, 4, 5).
DEBUG EVALUATE /cfvar(1, 2, 3, 4, 5).
DEBUG EVALUATE NOOPT /cfvar(1, $sysmis, 2, 3, $sysmis, 4, 5).
DEBUG EVALUATE /cfvar(1, $sysmis, 2, 3, $sysmis, 4, 5).
DEBUG EVALUATE NOOPT /cfvar(1, 2).
DEBUG EVALUATE /cfvar(1, 2).
DEBUG EVALUATE NOOPT /cfvar(1).
DEBUG EVALUATE /cfvar(1).
DEBUG EVALUATE NOOPT /cfvar(1, $sysmis).
DEBUG EVALUATE /cfvar(1, $sysmis).
DEBUG EVALUATE NOOPT /cfvar(1, 2, 3, $sysmis).
DEBUG EVALUATE /cfvar(1, 2, 3, $sysmis).
DEBUG EVALUATE NOOPT /cfvar.4(1, 2, 3, $sysmis).
DEBUG EVALUATE /cfvar.4(1, 2, 3, $sysmis).
DEBUG EVALUATE NOOPT /cfvar.4(1, 2, 3).
DEBUG EVALUATE /cfvar.4(1, 2, 3).
DEBUG EVALUATE NOOPT /cfvar('x').
DEBUG EVALUATE /cfvar('x').
DEBUG EVALUATE NOOPT /cfvar('x', 1, 2, 3).
DEBUG EVALUATE /cfvar('x', 1, 2, 3).
DEBUG EVALUATE NOOPT /mean(1, 2, 3, 4, 5).
DEBUG EVALUATE /mean(1, 2, 3, 4, 5).
DEBUG EVALUATE NOOPT /mean(1, $sysmis, 2, 3, $sysmis, 4, 5).
DEBUG EVALUATE /mean(1, $sysmis, 2, 3, $sysmis, 4, 5).
DEBUG EVALUATE NOOPT /mean(1, 2).
DEBUG EVALUATE /mean(1, 2).
DEBUG EVALUATE NOOPT /mean().
DEBUG EVALUATE /mean().
DEBUG EVALUATE NOOPT /mean(1).
DEBUG EVALUATE /mean(1).
DEBUG EVALUATE NOOPT /mean(1, $sysmis).
DEBUG EVALUATE /mean(1, $sysmis).
DEBUG EVALUATE NOOPT /mean(1, 2, 3, $sysmis).
DEBUG EVALUATE /mean(1, 2, 3, $sysmis).
DEBUG EVALUATE NOOPT /mean.4(1, 2, 3, $sysmis).
DEBUG EVALUATE /mean.4(1, 2, 3, $sysmis).
DEBUG EVALUATE NOOPT /mean.4(1, 2, 3).
DEBUG EVALUATE /mean.4(1, 2, 3).
DEBUG EVALUATE NOOPT /sd(1, 2, 3, 4, 5).
DEBUG EVALUATE /sd(1, 2, 3, 4, 5).
DEBUG EVALUATE NOOPT /sd(1, $sysmis, 2, 3, $sysmis, 4, 5).
DEBUG EVALUATE /sd(1, $sysmis, 2, 3, $sysmis, 4, 5).
DEBUG EVALUATE NOOPT /sd(1, 2).
DEBUG EVALUATE /sd(1, 2).
DEBUG EVALUATE NOOPT /sd(1).
DEBUG EVALUATE /sd(1).
DEBUG EVALUATE NOOPT /sd(1, $sysmis).
DEBUG EVALUATE /sd(1, $sysmis).
DEBUG EVALUATE NOOPT /sd(1, 2, 3, $sysmis).
DEBUG EVALUATE /sd(1, 2, 3, $sysmis).
DEBUG EVALUATE NOOPT /sd.4(1, 2, 3, $sysmis).
DEBUG EVALUATE /sd.4(1, 2, 3, $sysmis).
DEBUG EVALUATE NOOPT /sd.4(1, 2, 3).
DEBUG EVALUATE /sd.4(1, 2, 3).
DEBUG EVALUATE NOOPT /sd('x').
DEBUG EVALUATE /sd('x').
DEBUG EVALUATE NOOPT /sd('x', 1, 2, 3).
DEBUG EVALUATE /sd('x', 1, 2, 3).
DEBUG EVALUATE NOOPT /sum(1, 2, 3, 4, 5).
DEBUG EVALUATE /sum(1, 2, 3, 4, 5).
DEBUG EVALUATE NOOPT /sum(1, $sysmis, 2, 3, $sysmis, 4, 5).
DEBUG EVALUATE /sum(1, $sysmis, 2, 3, $sysmis, 4, 5).
DEBUG EVALUATE NOOPT /sum(1, 2).
DEBUG EVALUATE /sum(1, 2).
DEBUG EVALUATE NOOPT /sum().
DEBUG EVALUATE /sum().
DEBUG EVALUATE NOOPT /sum(1).
DEBUG EVALUATE /sum(1).
DEBUG EVALUATE NOOPT /sum(1, $sysmis).
DEBUG EVALUATE /sum(1, $sysmis).
DEBUG EVALUATE NOOPT /sum(1, 2, 3, $sysmis).
DEBUG EVALUATE /sum(1, 2, 3, $sysmis).
DEBUG EVALUATE NOOPT /sum.4(1, 2, 3, $sysmis).
DEBUG EVALUATE /sum.4(1, 2, 3, $sysmis).
DEBUG EVALUATE NOOPT /sum.4(1, 2, 3).
DEBUG EVALUATE /sum.4(1, 2, 3).
DEBUG EVALUATE NOOPT /variance(1, 2, 3, 4, 5).
DEBUG EVALUATE /variance(1, 2, 3, 4, 5).
DEBUG EVALUATE NOOPT /variance(1, $sysmis, 2, 3, $sysmis, 4, 5).
DEBUG EVALUATE /variance(1, $sysmis, 2, 3, $sysmis, 4, 5).
DEBUG EVALUATE NOOPT /variance(1, 2).
DEBUG EVALUATE /variance(1, 2).
DEBUG EVALUATE NOOPT /variance(1).
DEBUG EVALUATE /variance(1).
DEBUG EVALUATE NOOPT /variance(1, $sysmis).
DEBUG EVALUATE /variance(1, $sysmis).
DEBUG EVALUATE NOOPT /variance(1, 2, 3, $sysmis).
DEBUG EVALUATE /variance(1, 2, 3, $sysmis).
DEBUG EVALUATE NOOPT /variance.4(1, 2, 3, $sysmis).
DEBUG EVALUATE /variance.4(1, 2, 3, $sysmis).
DEBUG EVALUATE NOOPT /variance.4(1, 2, 3).
DEBUG EVALUATE /variance.4(1, 2, 3).
DEBUG EVALUATE NOOPT /variance('x').
DEBUG EVALUATE /variance('x').
DEBUG EVALUATE NOOPT /variance('x', 1, 2, 3).
DEBUG EVALUATE /variance('x', 1, 2, 3).
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:636: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:636"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/evaluate.at:636"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:636: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:636"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0.53
0.53
0.53
0.53
0.47
0.47
evaluate.sps:10: error: DEBUG EVALUATE: Type mismatch invoking CFVAR(number, number[, number]...) as cfvar(number).
error
evaluate.sps:11: error: DEBUG EVALUATE: Type mismatch invoking CFVAR(number, number[, number]...) as cfvar(number).
error
sysmis
sysmis
0.50
0.50
sysmis
sysmis
evaluate.sps:18: error: DEBUG EVALUATE: With CFVAR(number, number[, number]...), using minimum valid argument count of 4 does not make sense when passing only 3 arguments in list.
error
evaluate.sps:19: error: DEBUG EVALUATE: With CFVAR(number, number[, number]...), using minimum valid argument count of 4 does not make sense when passing only 3 arguments in list.
error
evaluate.sps:20: error: DEBUG EVALUATE: Type mismatch invoking CFVAR(number, number[, number]...) as cfvar(string).
error
evaluate.sps:21: error: DEBUG EVALUATE: Type mismatch invoking CFVAR(number, number[, number]...) as cfvar(string).
error
evaluate.sps:22: error: DEBUG EVALUATE: Type mismatch invoking CFVAR(number, number[, number]...) as cfvar(string, number, number, number).
error
evaluate.sps:23: error: DEBUG EVALUATE: Type mismatch invoking CFVAR(number, number[, number]...) as cfvar(string, number, number, number).
error
3.00
3.00
3.00
3.00
1.50
1.50
evaluate.sps:30: error: DEBUG EVALUATE: Type mismatch invoking MEAN(number[, number]...) as mean().
error
evaluate.sps:31: error: DEBUG EVALUATE: Type mismatch invoking MEAN(number[, number]...) as mean().
error
1.00
1.00
1.00
1.00
2.00
2.00
sysmis
sysmis
evaluate.sps:40: error: DEBUG EVALUATE: With MEAN(number[, number]...), using minimum valid argument count of 4 does not make sense when passing only 3 arguments in list.
error
evaluate.sps:41: error: DEBUG EVALUATE: With MEAN(number[, number]...), using minimum valid argument count of 4 does not make sense when passing only 3 arguments in list.
error
1.58
1.58
1.58
1.58
0.71
0.71
evaluate.sps:48: error: DEBUG EVALUATE: Type mismatch invoking SD(number, number[, number]...) as sd(number).
error
evaluate.sps:49: error: DEBUG EVALUATE: Type mismatch invoking SD(number, number[, number]...) as sd(number).
error
sysmis
sysmis
1.00
1.00
sysmis
sysmis
evaluate.sps:56: error: DEBUG EVALUATE: With SD(number, number[, number]...), using minimum valid argument count of 4 does not make sense when passing only 3 arguments in list.
error
evaluate.sps:57: error: DEBUG EVALUATE: With SD(number, number[, number]...), using minimum valid argument count of 4 does not make sense when passing only 3 arguments in list.
error
evaluate.sps:58: error: DEBUG EVALUATE: Type mismatch invoking SD(number, number[, number]...) as sd(string).
error
evaluate.sps:59: error: DEBUG EVALUATE: Type mismatch invoking SD(number, number[, number]...) as sd(string).
error
evaluate.sps:60: error: DEBUG EVALUATE: Type mismatch invoking SD(number, number[, number]...) as sd(string, number, number, number).
error
evaluate.sps:61: error: DEBUG EVALUATE: Type mismatch invoking SD(number, number[, number]...) as sd(string, number, number, number).
error
15.00
15.00
15.00
15.00
3.00
3.00
evaluate.sps:68: error: DEBUG EVALUATE: Type mismatch invoking SUM(number[, number]...) as sum().
error
evaluate.sps:69: error: DEBUG EVALUATE: Type mismatch invoking SUM(number[, number]...) as sum().
error
1.00
1.00
1.00
1.00
6.00
6.00
sysmis
sysmis
evaluate.sps:78: error: DEBUG EVALUATE: With SUM(number[, number]...), using minimum valid argument count of 4 does not make sense when passing only 3 arguments in list.
error
evaluate.sps:79: error: DEBUG EVALUATE: With SUM(number[, number]...), using minimum valid argument count of 4 does not make sense when passing only 3 arguments in list.
error
2.50
2.50
2.50
2.50
0.50
0.50
evaluate.sps:86: error: DEBUG EVALUATE: Type mismatch invoking VARIANCE(number, number[, number]...) as variance(number).
error
evaluate.sps:87: error: DEBUG EVALUATE: Type mismatch invoking VARIANCE(number, number[, number]...) as variance(number).
error
sysmis
sysmis
1.00
1.00
sysmis
sysmis
evaluate.sps:94: error: DEBUG EVALUATE: With VARIANCE(number, number[, number]...), using minimum valid argument count of 4 does not make sense when passing only 3 arguments in list.
error
evaluate.sps:95: error: DEBUG EVALUATE: With VARIANCE(number, number[, number]...), using minimum valid argument count of 4 does not make sense when passing only 3 arguments in list.
error
evaluate.sps:96: error: DEBUG EVALUATE: Type mismatch invoking VARIANCE(number, number[, number]...) as variance(string).
error
evaluate.sps:97: error: DEBUG EVALUATE: Type mismatch invoking VARIANCE(number, number[, number]...) as variance(string).
error
evaluate.sps:98: error: DEBUG EVALUATE: Type mismatch invoking VARIANCE(number, number[, number]...) as variance(string, number, number, number).
error
evaluate.sps:99: error: DEBUG EVALUATE: Type mismatch invoking VARIANCE(number, number[, number]...) as variance(string, number, number, number).
error
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:636"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_353
#AT_START_354
at_fn_group_banner 354 'evaluate.at:707' \
"expressions - concat index rindex length lower" " " 57
at_xfail=no
(
$as_echo "354. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /concat('').
DEBUG EVALUATE /concat('').
DEBUG EVALUATE NOOPT /concat('a', 'b').
DEBUG EVALUATE /concat('a', 'b').
DEBUG EVALUATE NOOPT /concat('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h').
DEBUG EVALUATE /concat('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h').
DEBUG EVALUATE NOOPT /concat('abcdefgh', 'ijklmnopq').
DEBUG EVALUATE /concat('abcdefgh', 'ijklmnopq').
DEBUG EVALUATE NOOPT /concat('a', 1).
DEBUG EVALUATE /concat('a', 1).
DEBUG EVALUATE NOOPT /concat(1, 2).
DEBUG EVALUATE /concat(1, 2).
DEBUG EVALUATE NOOPT /index('abcbcde', 'bc').
DEBUG EVALUATE /index('abcbcde', 'bc').
DEBUG EVALUATE NOOPT /index('abcbcde', 'bcd').
DEBUG EVALUATE /index('abcbcde', 'bcd').
DEBUG EVALUATE NOOPT /index('abcbcde', 'bcbc').
DEBUG EVALUATE /index('abcbcde', 'bcbc').
DEBUG EVALUATE NOOPT /index('abcdefgh', 'abc').
DEBUG EVALUATE /index('abcdefgh', 'abc').
DEBUG EVALUATE NOOPT /index('abcdefgh', 'bcd').
DEBUG EVALUATE /index('abcdefgh', 'bcd').
DEBUG EVALUATE NOOPT /index('abcdefgh', 'cde').
DEBUG EVALUATE /index('abcdefgh', 'cde').
DEBUG EVALUATE NOOPT /index('abcdefgh', 'def').
DEBUG EVALUATE /index('abcdefgh', 'def').
DEBUG EVALUATE NOOPT /index('abcdefgh', 'efg').
DEBUG EVALUATE /index('abcdefgh', 'efg').
DEBUG EVALUATE NOOPT /index('abcdefgh', 'fgh').
DEBUG EVALUATE /index('abcdefgh', 'fgh').
DEBUG EVALUATE NOOPT /index('abcdefgh', 'fghi').
DEBUG EVALUATE /index('abcdefgh', 'fghi').
DEBUG EVALUATE NOOPT /index('abcdefgh', 'x').
DEBUG EVALUATE /index('abcdefgh', 'x').
DEBUG EVALUATE NOOPT /index('abcdefgh', 'abch').
DEBUG EVALUATE /index('abcdefgh', 'abch').
DEBUG EVALUATE NOOPT /index('banana', 'na').
DEBUG EVALUATE /index('banana', 'na').
DEBUG EVALUATE NOOPT /index('banana', 'ana').
DEBUG EVALUATE /index('banana', 'ana').
DEBUG EVALUATE NOOPT /index('', 'x').
DEBUG EVALUATE /index('', 'x').
DEBUG EVALUATE NOOPT /index('', '').
DEBUG EVALUATE /index('', '').
DEBUG EVALUATE NOOPT /index('abcdefgh', '').
DEBUG EVALUATE /index('abcdefgh', '').
DEBUG EVALUATE NOOPT /index('abcdefgh', 'alkjsfdjlskalkjfa').
DEBUG EVALUATE /index('abcdefgh', 'alkjsfdjlskalkjfa').
DEBUG EVALUATE NOOPT /index('abcbcde', 'bc', 1).
DEBUG EVALUATE /index('abcbcde', 'bc', 1).
DEBUG EVALUATE NOOPT /index('abcbcde', 'dc', 1).
DEBUG EVALUATE /index('abcbcde', 'dc', 1).
DEBUG EVALUATE NOOPT /index('abcbcde', 'abc', 1).
DEBUG EVALUATE /index('abcbcde', 'abc', 1).
DEBUG EVALUATE NOOPT /index('abcbcde', 'bc', 2).
DEBUG EVALUATE /index('abcbcde', 'bc', 2).
DEBUG EVALUATE NOOPT /index('abcbcde', 'dc', 2).
DEBUG EVALUATE /index('abcbcde', 'dc', 2).
DEBUG EVALUATE NOOPT /index('abcbcde', 'abc', 1).
DEBUG EVALUATE /index('abcbcde', 'abc', 1).
DEBUG EVALUATE NOOPT /index('abcbcde', 'bccb', 2).
DEBUG EVALUATE /index('abcbcde', 'bccb', 2).
DEBUG EVALUATE NOOPT /index('abcbcde', 'bcbc', 2).
DEBUG EVALUATE /index('abcbcde', 'bcbc', 2).
DEBUG EVALUATE NOOPT /index('abcbcde', 'bcbc', $sysmis).
DEBUG EVALUATE /index('abcbcde', 'bcbc', $sysmis).
DEBUG EVALUATE NOOPT /rindex('abcbcde', 'bc').
DEBUG EVALUATE /rindex('abcbcde', 'bc').
DEBUG EVALUATE NOOPT /rindex('abcbcde', 'bcd').
DEBUG EVALUATE /rindex('abcbcde', 'bcd').
DEBUG EVALUATE NOOPT /rindex('abcbcde', 'bcbc').
DEBUG EVALUATE /rindex('abcbcde', 'bcbc').
DEBUG EVALUATE NOOPT /rindex('abcdefgh', 'abc').
DEBUG EVALUATE /rindex('abcdefgh', 'abc').
DEBUG EVALUATE NOOPT /rindex('abcdefgh', 'bcd').
DEBUG EVALUATE /rindex('abcdefgh', 'bcd').
DEBUG EVALUATE NOOPT /rindex('abcdefgh', 'cde').
DEBUG EVALUATE /rindex('abcdefgh', 'cde').
DEBUG EVALUATE NOOPT /rindex('abcdefgh', 'def').
DEBUG EVALUATE /rindex('abcdefgh', 'def').
DEBUG EVALUATE NOOPT /rindex('abcdefgh', 'efg').
DEBUG EVALUATE /rindex('abcdefgh', 'efg').
DEBUG EVALUATE NOOPT /rindex('abcdefgh', 'fgh').
DEBUG EVALUATE /rindex('abcdefgh', 'fgh').
DEBUG EVALUATE NOOPT /rindex('abcdefgh', 'fghi').
DEBUG EVALUATE /rindex('abcdefgh', 'fghi').
DEBUG EVALUATE NOOPT /rindex('abcdefgh', 'x').
DEBUG EVALUATE /rindex('abcdefgh', 'x').
DEBUG EVALUATE NOOPT /rindex('abcdefgh', 'abch').
DEBUG EVALUATE /rindex('abcdefgh', 'abch').
DEBUG EVALUATE NOOPT /rindex('banana', 'na').
DEBUG EVALUATE /rindex('banana', 'na').
DEBUG EVALUATE NOOPT /rindex('banana', 'ana').
DEBUG EVALUATE /rindex('banana', 'ana').
DEBUG EVALUATE NOOPT /rindex('', 'x').
DEBUG EVALUATE /rindex('', 'x').
DEBUG EVALUATE NOOPT /rindex('', '').
DEBUG EVALUATE /rindex('', '').
DEBUG EVALUATE NOOPT /rindex('abcdefgh', '').
DEBUG EVALUATE /rindex('abcdefgh', '').
DEBUG EVALUATE NOOPT /rindex('abcdefgh', 'alkjsfdjlskalkjfa').
DEBUG EVALUATE /rindex('abcdefgh', 'alkjsfdjlskalkjfa').
DEBUG EVALUATE NOOPT /rindex('abcbcde', 'bc', 1).
DEBUG EVALUATE /rindex('abcbcde', 'bc', 1).
DEBUG EVALUATE NOOPT /rindex('abcbcde', 'dc', 1).
DEBUG EVALUATE /rindex('abcbcde', 'dc', 1).
DEBUG EVALUATE NOOPT /rindex('abcbcde', 'abc', 1).
DEBUG EVALUATE /rindex('abcbcde', 'abc', 1).
DEBUG EVALUATE NOOPT /rindex('abcbcde', 'bc', 2).
DEBUG EVALUATE /rindex('abcbcde', 'bc', 2).
DEBUG EVALUATE NOOPT /rindex('abcbcde', 'dc', 2).
DEBUG EVALUATE /rindex('abcbcde', 'dc', 2).
DEBUG EVALUATE NOOPT /rindex('abcbcde', 'abc', 1).
DEBUG EVALUATE /rindex('abcbcde', 'abc', 1).
DEBUG EVALUATE NOOPT /rindex('abcbcde', 'bccb', 2).
DEBUG EVALUATE /rindex('abcbcde', 'bccb', 2).
DEBUG EVALUATE NOOPT /rindex('abcbcde', 'bcbc', 2).
DEBUG EVALUATE /rindex('abcbcde', 'bcbc', 2).
DEBUG EVALUATE NOOPT /rindex('abcbcde', 'bcbc', $sysmis).
DEBUG EVALUATE /rindex('abcbcde', 'bcbc', $sysmis).
DEBUG EVALUATE NOOPT /rindex('abcbcde', 'bcbcg', 2).
DEBUG EVALUATE /rindex('abcbcde', 'bcbcg', 2).
DEBUG EVALUATE NOOPT /rindex('abcbcde', 'bcbcg', $sysmis).
DEBUG EVALUATE /rindex('abcbcde', 'bcbcg', $sysmis).
DEBUG EVALUATE NOOPT /rindex('abcbcde', 'bcbcg', 'x').
DEBUG EVALUATE /rindex('abcbcde', 'bcbcg', 'x').
DEBUG EVALUATE NOOPT /rindex(1, 'bcdfkjl', 2).
DEBUG EVALUATE /rindex(1, 'bcdfkjl', 2).
DEBUG EVALUATE NOOPT /rindex('aksj', 2, 2).
DEBUG EVALUATE /rindex('aksj', 2, 2).
DEBUG EVALUATE NOOPT /rindex(1, 2, 3).
DEBUG EVALUATE /rindex(1, 2, 3).
DEBUG EVALUATE NOOPT /rindex(1, 2, '3').
DEBUG EVALUATE /rindex(1, 2, '3').
DEBUG EVALUATE NOOPT /length('').
DEBUG EVALUATE /length('').
DEBUG EVALUATE NOOPT /length('a').
DEBUG EVALUATE /length('a').
DEBUG EVALUATE NOOPT /length('xy').
DEBUG EVALUATE /length('xy').
DEBUG EVALUATE NOOPT /length('adsf ').
DEBUG EVALUATE /length('adsf ').
DEBUG EVALUATE NOOPT /length('abcdefghijkl').
DEBUG EVALUATE /length('abcdefghijkl').
DEBUG EVALUATE NOOPT /length(0).
DEBUG EVALUATE /length(0).
DEBUG EVALUATE NOOPT /length($sysmis).
DEBUG EVALUATE /length($sysmis).
DEBUG EVALUATE NOOPT /lower('ABCDEFGHIJKLMNOPQRSTUVWXYZ!@%&*089').
DEBUG EVALUATE /lower('ABCDEFGHIJKLMNOPQRSTUVWXYZ!@%&*089').
DEBUG EVALUATE NOOPT /lower('').
DEBUG EVALUATE /lower('').
DEBUG EVALUATE NOOPT /lower(1).
DEBUG EVALUATE /lower(1).
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:707: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:707"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/evaluate.at:707"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:707: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:707"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"\"
\"\"
\"ab\"
\"ab\"
\"abcdefgh\"
\"abcdefgh\"
\"abcdefghijklmnopq\"
\"abcdefghijklmnopq\"
evaluate.sps:12: error: DEBUG EVALUATE: Type mismatch invoking CONCAT(string[, string]...) as concat(string, number).
error
evaluate.sps:13: error: DEBUG EVALUATE: Type mismatch invoking CONCAT(string[, string]...) as concat(string, number).
error
evaluate.sps:14: error: DEBUG EVALUATE: Type mismatch invoking CONCAT(string[, string]...) as concat(number, number).
error
evaluate.sps:15: error: DEBUG EVALUATE: Type mismatch invoking CONCAT(string[, string]...) as concat(number, number).
error
2.00
2.00
4.00
4.00
2.00
2.00
1.00
1.00
2.00
2.00
3.00
3.00
4.00
4.00
5.00
5.00
6.00
6.00
0.00
0.00
0.00
0.00
0.00
0.00
3.00
3.00
2.00
2.00
0.00
0.00
sysmis
sysmis
sysmis
sysmis
0.00
0.00
2.00
2.00
3.00
3.00
1.00
1.00
2.00
2.00
0.00
0.00
1.00
1.00
2.00
2.00
2.00
2.00
sysmis
sysmis
4.00
4.00
4.00
4.00
2.00
2.00
1.00
1.00
2.00
2.00
3.00
3.00
4.00
4.00
5.00
5.00
6.00
6.00
0.00
0.00
0.00
0.00
0.00
0.00
5.00
5.00
4.00
4.00
0.00
0.00
sysmis
sysmis
sysmis
sysmis
0.00
0.00
5.00
5.00
6.00
6.00
5.00
5.00
4.00
4.00
0.00
0.00
5.00
5.00
4.00
4.00
4.00
4.00
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
evaluate.sps:128: error: DEBUG EVALUATE: Function invocation rindex(string, string, string) does not match any known function. Candidates are:
RINDEX(string, string)
RINDEX(string, string, number).
error
evaluate.sps:129: error: DEBUG EVALUATE: Function invocation rindex(string, string, string) does not match any known function. Candidates are:
RINDEX(string, string)
RINDEX(string, string, number).
error
evaluate.sps:130: error: DEBUG EVALUATE: Function invocation rindex(number, string, number) does not match any known function. Candidates are:
RINDEX(string, string)
RINDEX(string, string, number).
error
evaluate.sps:131: error: DEBUG EVALUATE: Function invocation rindex(number, string, number) does not match any known function. Candidates are:
RINDEX(string, string)
RINDEX(string, string, number).
error
evaluate.sps:132: error: DEBUG EVALUATE: Function invocation rindex(string, number, number) does not match any known function. Candidates are:
RINDEX(string, string)
RINDEX(string, string, number).
error
evaluate.sps:133: error: DEBUG EVALUATE: Function invocation rindex(string, number, number) does not match any known function. Candidates are:
RINDEX(string, string)
RINDEX(string, string, number).
error
evaluate.sps:134: error: DEBUG EVALUATE: Function invocation rindex(number, number, number) does not match any known function. Candidates are:
RINDEX(string, string)
RINDEX(string, string, number).
error
evaluate.sps:135: error: DEBUG EVALUATE: Function invocation rindex(number, number, number) does not match any known function. Candidates are:
RINDEX(string, string)
RINDEX(string, string, number).
error
evaluate.sps:136: error: DEBUG EVALUATE: Function invocation rindex(number, number, string) does not match any known function. Candidates are:
RINDEX(string, string)
RINDEX(string, string, number).
error
evaluate.sps:137: error: DEBUG EVALUATE: Function invocation rindex(number, number, string) does not match any known function. Candidates are:
RINDEX(string, string)
RINDEX(string, string, number).
error
0.00
0.00
1.00
1.00
2.00
2.00
8.00
8.00
12.00
12.00
evaluate.sps:148: error: DEBUG EVALUATE: Type mismatch invoking LENGTH(string) as length(number).
error
evaluate.sps:149: error: DEBUG EVALUATE: Type mismatch invoking LENGTH(string) as length(number).
error
evaluate.sps:150: error: DEBUG EVALUATE: Type mismatch invoking LENGTH(string) as length(number).
error
evaluate.sps:151: error: DEBUG EVALUATE: Type mismatch invoking LENGTH(string) as length(number).
error
\"abcdefghijklmnopqrstuvwxyz!@%&*089\"
\"abcdefghijklmnopqrstuvwxyz!@%&*089\"
\"\"
\"\"
evaluate.sps:156: error: DEBUG EVALUATE: Type mismatch invoking LOWER(string) as lower(number).
error
evaluate.sps:157: error: DEBUG EVALUATE: Type mismatch invoking LOWER(string) as lower(number).
error
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:707"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_354
#AT_START_355
at_fn_group_banner 355 'evaluate.at:812' \
"expressions - lpad number ltrim lpad rtrim rpad string substr upcase" "" 57
at_xfail=no
(
$as_echo "355. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /lpad('abc', -1).
DEBUG EVALUATE /lpad('abc', -1).
DEBUG EVALUATE NOOPT /lpad('abc', 0).
DEBUG EVALUATE /lpad('abc', 0).
DEBUG EVALUATE NOOPT /lpad('abc', 2).
DEBUG EVALUATE /lpad('abc', 2).
DEBUG EVALUATE NOOPT /lpad('abc', 3).
DEBUG EVALUATE /lpad('abc', 3).
DEBUG EVALUATE NOOPT /lpad('abc', 10).
DEBUG EVALUATE /lpad('abc', 10).
DEBUG EVALUATE NOOPT /lpad('abc', 32768).
DEBUG EVALUATE /lpad('abc', 32768).
DEBUG EVALUATE NOOPT /lpad('abc', $sysmis).
DEBUG EVALUATE /lpad('abc', $sysmis).
DEBUG EVALUATE NOOPT /lpad('abc', -1, '*').
DEBUG EVALUATE /lpad('abc', -1, '*').
DEBUG EVALUATE NOOPT /lpad('abc', 0, '*').
DEBUG EVALUATE /lpad('abc', 0, '*').
DEBUG EVALUATE NOOPT /lpad('abc', 2, '*').
DEBUG EVALUATE /lpad('abc', 2, '*').
DEBUG EVALUATE NOOPT /lpad('abc', 3, '*').
DEBUG EVALUATE /lpad('abc', 3, '*').
DEBUG EVALUATE NOOPT /lpad('abc', 10, '*').
DEBUG EVALUATE /lpad('abc', 10, '*').
DEBUG EVALUATE NOOPT /lpad('abc', 32768, '*').
DEBUG EVALUATE /lpad('abc', 32768, '*').
DEBUG EVALUATE NOOPT /lpad('abc', $sysmis, '*').
DEBUG EVALUATE /lpad('abc', $sysmis, '*').
DEBUG EVALUATE NOOPT /lpad('abc', $sysmis, '').
DEBUG EVALUATE /lpad('abc', $sysmis, '').
DEBUG EVALUATE NOOPT /lpad('abc', $sysmis, 'xy').
DEBUG EVALUATE /lpad('abc', $sysmis, 'xy').
DEBUG EVALUATE NOOPT /lpad(0, 10).
DEBUG EVALUATE /lpad(0, 10).
DEBUG EVALUATE NOOPT /lpad('abc', 'def').
DEBUG EVALUATE /lpad('abc', 'def').
DEBUG EVALUATE NOOPT /lpad(0, 10, ' ').
DEBUG EVALUATE /lpad(0, 10, ' ').
DEBUG EVALUATE NOOPT /lpad('abc', 'def', ' ').
DEBUG EVALUATE /lpad('abc', 'def', ' ').
DEBUG EVALUATE NOOPT /lpad('x', 5, 0).
DEBUG EVALUATE /lpad('x', 5, 0).
DEBUG EVALUATE NOOPT /lpad('x', 5, 2).
DEBUG EVALUATE /lpad('x', 5, 2).
DEBUG EVALUATE NOOPT /number("123", f3.0).
DEBUG EVALUATE /number("123", f3.0).
DEBUG EVALUATE NOOPT /number(" 123", f3.0).
DEBUG EVALUATE /number(" 123", f3.0).
DEBUG EVALUATE NOOPT /number("123", f3.1).
DEBUG EVALUATE /number("123", f3.1).
DEBUG EVALUATE NOOPT /number(" ", f3.1).
DEBUG EVALUATE /number(" ", f3.1).
DEBUG EVALUATE NOOPT /number("123", a8).
DEBUG EVALUATE /number("123", a8).
DEBUG EVALUATE NOOPT / number("123", cca1.2).
DEBUG EVALUATE / number("123", cca1.2).
DEBUG EVALUATE NOOPT /ltrim(' abc').
DEBUG EVALUATE /ltrim(' abc').
DEBUG EVALUATE NOOPT /rtrim(' abc ').
DEBUG EVALUATE /rtrim(' abc ').
DEBUG EVALUATE NOOPT /ltrim('abc').
DEBUG EVALUATE /ltrim('abc').
DEBUG EVALUATE NOOPT /ltrim(' abc').
DEBUG EVALUATE /ltrim(' abc').
DEBUG EVALUATE NOOPT /ltrim(' ').
DEBUG EVALUATE /ltrim(' ').
DEBUG EVALUATE NOOPT /ltrim('').
DEBUG EVALUATE /ltrim('').
DEBUG EVALUATE NOOPT /ltrim(8).
DEBUG EVALUATE /ltrim(8).
DEBUG EVALUATE NOOPT /ltrim('***abc', '*').
DEBUG EVALUATE /ltrim('***abc', '*').
DEBUG EVALUATE NOOPT /ltrim('abc', '*').
DEBUG EVALUATE /ltrim('abc', '*').
DEBUG EVALUATE NOOPT /ltrim('*abc', '*').
DEBUG EVALUATE /ltrim('*abc', '*').
DEBUG EVALUATE NOOPT /ltrim('', '*').
DEBUG EVALUATE /ltrim('', '*').
DEBUG EVALUATE NOOPT /ltrim(8, '*').
DEBUG EVALUATE /ltrim(8, '*').
DEBUG EVALUATE NOOPT /ltrim(' x', 8).
DEBUG EVALUATE /ltrim(' x', 8).
DEBUG EVALUATE NOOPT /ltrim(8, 9).
DEBUG EVALUATE /ltrim(8, 9).
DEBUG EVALUATE NOOPT /rpad('abc', -1).
DEBUG EVALUATE /rpad('abc', -1).
DEBUG EVALUATE NOOPT /rpad('abc', 0).
DEBUG EVALUATE /rpad('abc', 0).
DEBUG EVALUATE NOOPT /rpad('abc', 2).
DEBUG EVALUATE /rpad('abc', 2).
DEBUG EVALUATE NOOPT /rpad('abc', 3).
DEBUG EVALUATE /rpad('abc', 3).
DEBUG EVALUATE NOOPT /rpad('abc', 10).
DEBUG EVALUATE /rpad('abc', 10).
DEBUG EVALUATE NOOPT /rpad('abc', 32768).
DEBUG EVALUATE /rpad('abc', 32768).
DEBUG EVALUATE NOOPT /rpad('abc', $sysmis).
DEBUG EVALUATE /rpad('abc', $sysmis).
DEBUG EVALUATE NOOPT /rpad('abc', -1, '*').
DEBUG EVALUATE /rpad('abc', -1, '*').
DEBUG EVALUATE NOOPT /rpad('abc', 0, '*').
DEBUG EVALUATE /rpad('abc', 0, '*').
DEBUG EVALUATE NOOPT /rpad('abc', 2, '*').
DEBUG EVALUATE /rpad('abc', 2, '*').
DEBUG EVALUATE NOOPT /rpad('abc', 3, '*').
DEBUG EVALUATE /rpad('abc', 3, '*').
DEBUG EVALUATE NOOPT /rpad('abc', 10, '*').
DEBUG EVALUATE /rpad('abc', 10, '*').
DEBUG EVALUATE NOOPT /rpad('abc', 32768, '*').
DEBUG EVALUATE /rpad('abc', 32768, '*').
DEBUG EVALUATE NOOPT /rpad('abc', $sysmis, '*').
DEBUG EVALUATE /rpad('abc', $sysmis, '*').
DEBUG EVALUATE NOOPT /rpad('abc', $sysmis, '').
DEBUG EVALUATE /rpad('abc', $sysmis, '').
DEBUG EVALUATE NOOPT /rpad('abc', $sysmis, 'xy').
DEBUG EVALUATE /rpad('abc', $sysmis, 'xy').
DEBUG EVALUATE NOOPT /rpad(0, 10).
DEBUG EVALUATE /rpad(0, 10).
DEBUG EVALUATE NOOPT /rpad('abc', 'def').
DEBUG EVALUATE /rpad('abc', 'def').
DEBUG EVALUATE NOOPT /rpad(0, 10, ' ').
DEBUG EVALUATE /rpad(0, 10, ' ').
DEBUG EVALUATE NOOPT /rpad('abc', 'def', ' ').
DEBUG EVALUATE /rpad('abc', 'def', ' ').
DEBUG EVALUATE NOOPT /rpad('x', 5, 0).
DEBUG EVALUATE /rpad('x', 5, 0).
DEBUG EVALUATE NOOPT /rpad('x', 5, 2).
DEBUG EVALUATE /rpad('x', 5, 2).
DEBUG EVALUATE NOOPT /rtrim('abc ').
DEBUG EVALUATE /rtrim('abc ').
DEBUG EVALUATE NOOPT /rtrim(' abc ').
DEBUG EVALUATE /rtrim(' abc ').
DEBUG EVALUATE NOOPT /rtrim('abc').
DEBUG EVALUATE /rtrim('abc').
DEBUG EVALUATE NOOPT /rtrim('abc ').
DEBUG EVALUATE /rtrim('abc ').
DEBUG EVALUATE NOOPT /rtrim(' ').
DEBUG EVALUATE /rtrim(' ').
DEBUG EVALUATE NOOPT /rtrim('').
DEBUG EVALUATE /rtrim('').
DEBUG EVALUATE NOOPT /rtrim(8).
DEBUG EVALUATE /rtrim(8).
DEBUG EVALUATE NOOPT /rtrim('abc***', '*').
DEBUG EVALUATE /rtrim('abc***', '*').
DEBUG EVALUATE NOOPT /rtrim('abc', '*').
DEBUG EVALUATE /rtrim('abc', '*').
DEBUG EVALUATE NOOPT /rtrim('abc*', '*').
DEBUG EVALUATE /rtrim('abc*', '*').
DEBUG EVALUATE NOOPT /rtrim('', '*').
DEBUG EVALUATE /rtrim('', '*').
DEBUG EVALUATE NOOPT /rtrim(8, '*').
DEBUG EVALUATE /rtrim(8, '*').
DEBUG EVALUATE NOOPT /rtrim(' x', 8).
DEBUG EVALUATE /rtrim(' x', 8).
DEBUG EVALUATE NOOPT /rtrim(8, 9).
DEBUG EVALUATE /rtrim(8, 9).
DEBUG EVALUATE NOOPT /string(123.56, f5.1).
DEBUG EVALUATE /string(123.56, f5.1).
DEBUG EVALUATE NOOPT /string($sysmis, f5.1).
DEBUG EVALUATE /string($sysmis, f5.1).
DEBUG EVALUATE NOOPT /string("abc", A5).
DEBUG EVALUATE /string("abc", A5).
DEBUG EVALUATE NOOPT / string(123, e1).
DEBUG EVALUATE / string(123, e1).
DEBUG EVALUATE NOOPT /string(123, e6.0).
DEBUG EVALUATE /string(123, e6.0).
DEBUG EVALUATE NOOPT /substr('abcdefgh', -5).
DEBUG EVALUATE /substr('abcdefgh', -5).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 0).
DEBUG EVALUATE /substr('abcdefgh', 0).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 1).
DEBUG EVALUATE /substr('abcdefgh', 1).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 3).
DEBUG EVALUATE /substr('abcdefgh', 3).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 5).
DEBUG EVALUATE /substr('abcdefgh', 5).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 6).
DEBUG EVALUATE /substr('abcdefgh', 6).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 7).
DEBUG EVALUATE /substr('abcdefgh', 7).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 8).
DEBUG EVALUATE /substr('abcdefgh', 8).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 9).
DEBUG EVALUATE /substr('abcdefgh', 9).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 10).
DEBUG EVALUATE /substr('abcdefgh', 10).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 20).
DEBUG EVALUATE /substr('abcdefgh', 20).
DEBUG EVALUATE NOOPT /substr('abcdefgh', $sysmis).
DEBUG EVALUATE /substr('abcdefgh', $sysmis).
DEBUG EVALUATE NOOPT /substr(0, 10).
DEBUG EVALUATE /substr(0, 10).
DEBUG EVALUATE NOOPT /substr('abcd', 'abc').
DEBUG EVALUATE /substr('abcd', 'abc').
DEBUG EVALUATE NOOPT /substr(0, 'abc').
DEBUG EVALUATE /substr(0, 'abc').
DEBUG EVALUATE NOOPT /substr('abcdefgh', 0, 0).
DEBUG EVALUATE /substr('abcdefgh', 0, 0).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 3, 0).
DEBUG EVALUATE /substr('abcdefgh', 3, 0).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 5, 0).
DEBUG EVALUATE /substr('abcdefgh', 5, 0).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 9, 0).
DEBUG EVALUATE /substr('abcdefgh', 9, 0).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 0, 1).
DEBUG EVALUATE /substr('abcdefgh', 0, 1).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 0, 5).
DEBUG EVALUATE /substr('abcdefgh', 0, 5).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 1, 8).
DEBUG EVALUATE /substr('abcdefgh', 1, 8).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 1, 10).
DEBUG EVALUATE /substr('abcdefgh', 1, 10).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 1, 20).
DEBUG EVALUATE /substr('abcdefgh', 1, 20).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 3, 4).
DEBUG EVALUATE /substr('abcdefgh', 3, 4).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 5, 2).
DEBUG EVALUATE /substr('abcdefgh', 5, 2).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 6, 1).
DEBUG EVALUATE /substr('abcdefgh', 6, 1).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 7, 10).
DEBUG EVALUATE /substr('abcdefgh', 7, 10).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 8, 1).
DEBUG EVALUATE /substr('abcdefgh', 8, 1).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 8, 2).
DEBUG EVALUATE /substr('abcdefgh', 8, 2).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 9, 11).
DEBUG EVALUATE /substr('abcdefgh', 9, 11).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 10, 52).
DEBUG EVALUATE /substr('abcdefgh', 10, 52).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 20, 1).
DEBUG EVALUATE /substr('abcdefgh', 20, 1).
DEBUG EVALUATE NOOPT /substr('abcdefgh', $sysmis, 2).
DEBUG EVALUATE /substr('abcdefgh', $sysmis, 2).
DEBUG EVALUATE NOOPT /substr('abcdefgh', 9, $sysmis).
DEBUG EVALUATE /substr('abcdefgh', 9, $sysmis).
DEBUG EVALUATE NOOPT /substr('abcdefgh', $sysmis, $sysmis).
DEBUG EVALUATE /substr('abcdefgh', $sysmis, $sysmis).
DEBUG EVALUATE NOOPT /substr('abc', 1, 'x').
DEBUG EVALUATE /substr('abc', 1, 'x').
DEBUG EVALUATE NOOPT /substr(0, 10, 1).
DEBUG EVALUATE /substr(0, 10, 1).
DEBUG EVALUATE NOOPT /substr(0, 10, 'x').
DEBUG EVALUATE /substr(0, 10, 'x').
DEBUG EVALUATE NOOPT /substr('abcd', 'abc', 0).
DEBUG EVALUATE /substr('abcd', 'abc', 0).
DEBUG EVALUATE NOOPT /substr('abcd', 'abc', 'j').
DEBUG EVALUATE /substr('abcd', 'abc', 'j').
DEBUG EVALUATE NOOPT /substr(0, 'abc', 4).
DEBUG EVALUATE /substr(0, 'abc', 4).
DEBUG EVALUATE NOOPT /substr(0, 'abc', 'k').
DEBUG EVALUATE /substr(0, 'abc', 'k').
DEBUG EVALUATE NOOPT /upcase('abcdefghijklmnopqrstuvwxyz!@%&*089').
DEBUG EVALUATE /upcase('abcdefghijklmnopqrstuvwxyz!@%&*089').
DEBUG EVALUATE NOOPT /upcase('').
DEBUG EVALUATE /upcase('').
DEBUG EVALUATE NOOPT /upcase(1).
DEBUG EVALUATE /upcase(1).
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:812: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:812"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/evaluate.at:812"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:812: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:812"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"\"
\"\"
\"abc\"
\"abc\"
\"abc\"
\"abc\"
\"abc\"
\"abc\"
\" abc\"
\" abc\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"abc\"
\"abc\"
\"abc\"
\"abc\"
\"abc\"
\"abc\"
\"*******abc\"
\"*******abc\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
evaluate.sps:36: error: DEBUG EVALUATE: Function invocation lpad(number, number) does not match any known function. Candidates are:
LPAD(string, number)
LPAD(string, number, string).
error
evaluate.sps:37: error: DEBUG EVALUATE: Function invocation lpad(number, number) does not match any known function. Candidates are:
LPAD(string, number)
LPAD(string, number, string).
error
evaluate.sps:38: error: DEBUG EVALUATE: Function invocation lpad(string, string) does not match any known function. Candidates are:
LPAD(string, number)
LPAD(string, number, string).
error
evaluate.sps:39: error: DEBUG EVALUATE: Function invocation lpad(string, string) does not match any known function. Candidates are:
LPAD(string, number)
LPAD(string, number, string).
error
evaluate.sps:40: error: DEBUG EVALUATE: Function invocation lpad(number, number, string) does not match any known function. Candidates are:
LPAD(string, number)
LPAD(string, number, string).
error
evaluate.sps:41: error: DEBUG EVALUATE: Function invocation lpad(number, number, string) does not match any known function. Candidates are:
LPAD(string, number)
LPAD(string, number, string).
error
evaluate.sps:42: error: DEBUG EVALUATE: Function invocation lpad(string, string, string) does not match any known function. Candidates are:
LPAD(string, number)
LPAD(string, number, string).
error
evaluate.sps:43: error: DEBUG EVALUATE: Function invocation lpad(string, string, string) does not match any known function. Candidates are:
LPAD(string, number)
LPAD(string, number, string).
error
evaluate.sps:44: error: DEBUG EVALUATE: Function invocation lpad(string, number, number) does not match any known function. Candidates are:
LPAD(string, number)
LPAD(string, number, string).
error
evaluate.sps:45: error: DEBUG EVALUATE: Function invocation lpad(string, number, number) does not match any known function. Candidates are:
LPAD(string, number)
LPAD(string, number, string).
error
evaluate.sps:46: error: DEBUG EVALUATE: Function invocation lpad(string, number, number) does not match any known function. Candidates are:
LPAD(string, number)
LPAD(string, number, string).
error
evaluate.sps:47: error: DEBUG EVALUATE: Function invocation lpad(string, number, number) does not match any known function. Candidates are:
LPAD(string, number)
LPAD(string, number, string).
error
123.00
123.00
12.00
12.00
12.30
12.30
sysmis
sysmis
evaluate.sps:56: error: DEBUG EVALUATE: Type mismatch invoking NUMBER(string, num_input_format) as number(string, format).
error
evaluate.sps:57: error: DEBUG EVALUATE: Type mismatch invoking NUMBER(string, num_input_format) as number(string, format).
error
evaluate.sps:58: error: DEBUG EVALUATE: Type mismatch invoking NUMBER(string, num_input_format) as number(string, format).
error
evaluate.sps:59: error: DEBUG EVALUATE: Type mismatch invoking NUMBER(string, num_input_format) as number(string, format).
error
\"abc\"
\"abc\"
\" abc\"
\" abc\"
\"abc\"
\"abc\"
\" abc\"
\" abc\"
\"\"
\"\"
\"\"
\"\"
evaluate.sps:72: error: DEBUG EVALUATE: Function invocation ltrim(number) does not match any known function. Candidates are:
LTRIM(string)
LTRIM(string, string).
error
evaluate.sps:73: error: DEBUG EVALUATE: Function invocation ltrim(number) does not match any known function. Candidates are:
LTRIM(string)
LTRIM(string, string).
error
\"abc\"
\"abc\"
\"abc\"
\"abc\"
\"abc\"
\"abc\"
\"\"
\"\"
evaluate.sps:82: error: DEBUG EVALUATE: Function invocation ltrim(number, string) does not match any known function. Candidates are:
LTRIM(string)
LTRIM(string, string).
error
evaluate.sps:83: error: DEBUG EVALUATE: Function invocation ltrim(number, string) does not match any known function. Candidates are:
LTRIM(string)
LTRIM(string, string).
error
evaluate.sps:84: error: DEBUG EVALUATE: Function invocation ltrim(string, number) does not match any known function. Candidates are:
LTRIM(string)
LTRIM(string, string).
error
evaluate.sps:85: error: DEBUG EVALUATE: Function invocation ltrim(string, number) does not match any known function. Candidates are:
LTRIM(string)
LTRIM(string, string).
error
evaluate.sps:86: error: DEBUG EVALUATE: Function invocation ltrim(number, number) does not match any known function. Candidates are:
LTRIM(string)
LTRIM(string, string).
error
evaluate.sps:87: error: DEBUG EVALUATE: Function invocation ltrim(number, number) does not match any known function. Candidates are:
LTRIM(string)
LTRIM(string, string).
error
\"\"
\"\"
\"abc\"
\"abc\"
\"abc\"
\"abc\"
\"abc\"
\"abc\"
\"abc \"
\"abc \"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"abc\"
\"abc\"
\"abc\"
\"abc\"
\"abc\"
\"abc\"
\"abc*******\"
\"abc*******\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
evaluate.sps:120: error: DEBUG EVALUATE: Function invocation rpad(number, number) does not match any known function. Candidates are:
RPAD(string, number)
RPAD(string, number, string).
error
evaluate.sps:121: error: DEBUG EVALUATE: Function invocation rpad(number, number) does not match any known function. Candidates are:
RPAD(string, number)
RPAD(string, number, string).
error
evaluate.sps:122: error: DEBUG EVALUATE: Function invocation rpad(string, string) does not match any known function. Candidates are:
RPAD(string, number)
RPAD(string, number, string).
error
evaluate.sps:123: error: DEBUG EVALUATE: Function invocation rpad(string, string) does not match any known function. Candidates are:
RPAD(string, number)
RPAD(string, number, string).
error
evaluate.sps:124: error: DEBUG EVALUATE: Function invocation rpad(number, number, string) does not match any known function. Candidates are:
RPAD(string, number)
RPAD(string, number, string).
error
evaluate.sps:125: error: DEBUG EVALUATE: Function invocation rpad(number, number, string) does not match any known function. Candidates are:
RPAD(string, number)
RPAD(string, number, string).
error
evaluate.sps:126: error: DEBUG EVALUATE: Function invocation rpad(string, string, string) does not match any known function. Candidates are:
RPAD(string, number)
RPAD(string, number, string).
error
evaluate.sps:127: error: DEBUG EVALUATE: Function invocation rpad(string, string, string) does not match any known function. Candidates are:
RPAD(string, number)
RPAD(string, number, string).
error
evaluate.sps:128: error: DEBUG EVALUATE: Function invocation rpad(string, number, number) does not match any known function. Candidates are:
RPAD(string, number)
RPAD(string, number, string).
error
evaluate.sps:129: error: DEBUG EVALUATE: Function invocation rpad(string, number, number) does not match any known function. Candidates are:
RPAD(string, number)
RPAD(string, number, string).
error
evaluate.sps:130: error: DEBUG EVALUATE: Function invocation rpad(string, number, number) does not match any known function. Candidates are:
RPAD(string, number)
RPAD(string, number, string).
error
evaluate.sps:131: error: DEBUG EVALUATE: Function invocation rpad(string, number, number) does not match any known function. Candidates are:
RPAD(string, number)
RPAD(string, number, string).
error
\"abc\"
\"abc\"
\" abc\"
\" abc\"
\"abc\"
\"abc\"
\"abc \"
\"abc \"
\"\"
\"\"
\"\"
\"\"
evaluate.sps:144: error: DEBUG EVALUATE: Function invocation rtrim(number) does not match any known function. Candidates are:
RTRIM(string)
RTRIM(string, string).
error
evaluate.sps:145: error: DEBUG EVALUATE: Function invocation rtrim(number) does not match any known function. Candidates are:
RTRIM(string)
RTRIM(string, string).
error
\"abc\"
\"abc\"
\"abc\"
\"abc\"
\"abc\"
\"abc\"
\"\"
\"\"
evaluate.sps:154: error: DEBUG EVALUATE: Function invocation rtrim(number, string) does not match any known function. Candidates are:
RTRIM(string)
RTRIM(string, string).
error
evaluate.sps:155: error: DEBUG EVALUATE: Function invocation rtrim(number, string) does not match any known function. Candidates are:
RTRIM(string)
RTRIM(string, string).
error
evaluate.sps:156: error: DEBUG EVALUATE: Function invocation rtrim(string, number) does not match any known function. Candidates are:
RTRIM(string)
RTRIM(string, string).
error
evaluate.sps:157: error: DEBUG EVALUATE: Function invocation rtrim(string, number) does not match any known function. Candidates are:
RTRIM(string)
RTRIM(string, string).
error
evaluate.sps:158: error: DEBUG EVALUATE: Function invocation rtrim(number, number) does not match any known function. Candidates are:
RTRIM(string)
RTRIM(string, string).
error
evaluate.sps:159: error: DEBUG EVALUATE: Function invocation rtrim(number, number) does not match any known function. Candidates are:
RTRIM(string)
RTRIM(string, string).
error
\"123.6\"
\"123.6\"
\" . \"
\" . \"
evaluate.sps:164: error: DEBUG EVALUATE: Type mismatch invoking STRING(number, num_output_format) as string(string, format).
error
evaluate.sps:165: error: DEBUG EVALUATE: Type mismatch invoking STRING(number, num_output_format) as string(string, format).
error
evaluate.sps:166: error: DEBUG EVALUATE: Type mismatch invoking STRING(number, num_output_format) as string(number, format).
error
evaluate.sps:167: error: DEBUG EVALUATE: Type mismatch invoking STRING(number, num_output_format) as string(number, format).
error
\"1E+002\"
\"1E+002\"
\"\"
\"\"
\"\"
\"\"
\"abcdefgh\"
\"abcdefgh\"
\"cdefgh\"
\"cdefgh\"
\"efgh\"
\"efgh\"
\"fgh\"
\"fgh\"
\"gh\"
\"gh\"
\"h\"
\"h\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
evaluate.sps:194: error: DEBUG EVALUATE: Function invocation substr(number, number) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
evaluate.sps:195: error: DEBUG EVALUATE: Function invocation substr(number, number) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
evaluate.sps:196: error: DEBUG EVALUATE: Function invocation substr(string, string) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
evaluate.sps:197: error: DEBUG EVALUATE: Function invocation substr(string, string) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
evaluate.sps:198: error: DEBUG EVALUATE: Function invocation substr(number, string) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
evaluate.sps:199: error: DEBUG EVALUATE: Function invocation substr(number, string) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"abcdefgh\"
\"abcdefgh\"
\"abcdefgh\"
\"abcdefgh\"
\"abcdefgh\"
\"abcdefgh\"
\"cdef\"
\"cdef\"
\"ef\"
\"ef\"
\"f\"
\"f\"
\"gh\"
\"gh\"
\"h\"
\"h\"
\"h\"
\"h\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
\"\"
evaluate.sps:242: error: DEBUG EVALUATE: Function invocation substr(string, number, string) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
evaluate.sps:243: error: DEBUG EVALUATE: Function invocation substr(string, number, string) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
evaluate.sps:244: error: DEBUG EVALUATE: Function invocation substr(number, number, number) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
evaluate.sps:245: error: DEBUG EVALUATE: Function invocation substr(number, number, number) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
evaluate.sps:246: error: DEBUG EVALUATE: Function invocation substr(number, number, string) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
evaluate.sps:247: error: DEBUG EVALUATE: Function invocation substr(number, number, string) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
evaluate.sps:248: error: DEBUG EVALUATE: Function invocation substr(string, string, number) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
evaluate.sps:249: error: DEBUG EVALUATE: Function invocation substr(string, string, number) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
evaluate.sps:250: error: DEBUG EVALUATE: Function invocation substr(string, string, string) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
evaluate.sps:251: error: DEBUG EVALUATE: Function invocation substr(string, string, string) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
evaluate.sps:252: error: DEBUG EVALUATE: Function invocation substr(number, string, number) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
evaluate.sps:253: error: DEBUG EVALUATE: Function invocation substr(number, string, number) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
evaluate.sps:254: error: DEBUG EVALUATE: Function invocation substr(number, string, string) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
evaluate.sps:255: error: DEBUG EVALUATE: Function invocation substr(number, string, string) does not match any known function. Candidates are:
SUBSTR(string, number)
SUBSTR(string, number, number).
error
\"ABCDEFGHIJKLMNOPQRSTUVWXYZ!@%&*089\"
\"ABCDEFGHIJKLMNOPQRSTUVWXYZ!@%&*089\"
\"\"
\"\"
evaluate.sps:260: error: DEBUG EVALUATE: Type mismatch invoking UPCASE(string) as upcase(number).
error
evaluate.sps:261: error: DEBUG EVALUATE: Type mismatch invoking UPCASE(string) as upcase(number).
error
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:812"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_355
#AT_START_356
at_fn_group_banner 356 'evaluate.at:1048' \
"expressions - time ctime date yrmoda" " " 57
at_xfail=no
(
$as_echo "356. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /time.days(1).
DEBUG EVALUATE /time.days(1).
DEBUG EVALUATE NOOPT /time.days(-1).
DEBUG EVALUATE /time.days(-1).
DEBUG EVALUATE NOOPT /time.days(0.5).
DEBUG EVALUATE /time.days(0.5).
DEBUG EVALUATE NOOPT /time.days('x').
DEBUG EVALUATE /time.days('x').
DEBUG EVALUATE NOOPT /time.days($sysmis).
DEBUG EVALUATE /time.days($sysmis).
DEBUG EVALUATE NOOPT /time.hms(4,50,38).
DEBUG EVALUATE /time.hms(4,50,38).
DEBUG EVALUATE NOOPT /time.hms(12,31,35).
DEBUG EVALUATE /time.hms(12,31,35).
DEBUG EVALUATE NOOPT /time.hms(12,47,53).
DEBUG EVALUATE /time.hms(12,47,53).
DEBUG EVALUATE NOOPT /time.hms(1,26,0).
DEBUG EVALUATE /time.hms(1,26,0).
DEBUG EVALUATE NOOPT /time.hms(20,58,11).
DEBUG EVALUATE /time.hms(20,58,11).
DEBUG EVALUATE NOOPT /time.hms(7,36,5).
DEBUG EVALUATE /time.hms(7,36,5).
DEBUG EVALUATE NOOPT /time.hms(15,43,49).
DEBUG EVALUATE /time.hms(15,43,49).
DEBUG EVALUATE NOOPT /time.hms(4,25,9).
DEBUG EVALUATE /time.hms(4,25,9).
DEBUG EVALUATE NOOPT /time.hms(6,49,27).
DEBUG EVALUATE /time.hms(6,49,27).
DEBUG EVALUATE NOOPT /time.hms(2,57,52).
DEBUG EVALUATE /time.hms(2,57,52).
DEBUG EVALUATE NOOPT /time.hms(16,45,44).
DEBUG EVALUATE /time.hms(16,45,44).
DEBUG EVALUATE NOOPT /time.hms(21,30,57).
DEBUG EVALUATE /time.hms(21,30,57).
DEBUG EVALUATE NOOPT /time.hms(22,30,4).
DEBUG EVALUATE /time.hms(22,30,4).
DEBUG EVALUATE NOOPT /time.hms(1,56,51).
DEBUG EVALUATE /time.hms(1,56,51).
DEBUG EVALUATE NOOPT /time.hms(5, 6, 7).
DEBUG EVALUATE /time.hms(5, 6, 7).
DEBUG EVALUATE NOOPT /time.hms(5, 6, 0).
DEBUG EVALUATE /time.hms(5, 6, 0).
DEBUG EVALUATE NOOPT /time.hms(5, 0, 7).
DEBUG EVALUATE /time.hms(5, 0, 7).
DEBUG EVALUATE NOOPT /time.hms(0, 6, 7).
DEBUG EVALUATE /time.hms(0, 6, 7).
DEBUG EVALUATE NOOPT /time.hms(-5, 6, -7).
DEBUG EVALUATE /time.hms(-5, 6, -7).
DEBUG EVALUATE NOOPT /time.hms(-5, 5, -7).
DEBUG EVALUATE /time.hms(-5, 5, -7).
DEBUG EVALUATE NOOPT /time.hms($sysmis, 6, 7).
DEBUG EVALUATE /time.hms($sysmis, 6, 7).
DEBUG EVALUATE NOOPT /time.hms(5, $sysmis, 7).
DEBUG EVALUATE /time.hms(5, $sysmis, 7).
DEBUG EVALUATE NOOPT /time.hms(5, $sysmis, 7).
DEBUG EVALUATE /time.hms(5, $sysmis, 7).
DEBUG EVALUATE NOOPT /time.hms($sysmis, $sysmis, 7).
DEBUG EVALUATE /time.hms($sysmis, $sysmis, 7).
DEBUG EVALUATE NOOPT /time.hms(5, $sysmis, $sysmis).
DEBUG EVALUATE /time.hms(5, $sysmis, $sysmis).
DEBUG EVALUATE NOOPT /time.hms($sysmis, $sysmis, 7).
DEBUG EVALUATE /time.hms($sysmis, $sysmis, 7).
DEBUG EVALUATE NOOPT /time.hms($sysmis, $sysmis, $sysmis).
DEBUG EVALUATE /time.hms($sysmis, $sysmis, $sysmis).
DEBUG EVALUATE NOOPT /ctime.days(106272).
DEBUG EVALUATE /ctime.days(106272).
DEBUG EVALUATE NOOPT /ctime.hours(106272).
DEBUG EVALUATE /ctime.hours(106272).
DEBUG EVALUATE NOOPT /ctime.minutes(106272).
DEBUG EVALUATE /ctime.minutes(106272).
DEBUG EVALUATE NOOPT /ctime.seconds(106272).
DEBUG EVALUATE /ctime.seconds(106272).
DEBUG EVALUATE NOOPT /ctime.days(-106272).
DEBUG EVALUATE /ctime.days(-106272).
DEBUG EVALUATE NOOPT /ctime.hours(-106272).
DEBUG EVALUATE /ctime.hours(-106272).
DEBUG EVALUATE NOOPT /ctime.minutes(-106272).
DEBUG EVALUATE /ctime.minutes(-106272).
DEBUG EVALUATE NOOPT /ctime.seconds(-106272).
DEBUG EVALUATE /ctime.seconds(-106272).
DEBUG EVALUATE NOOPT /ctime.days($sysmis).
DEBUG EVALUATE /ctime.days($sysmis).
DEBUG EVALUATE NOOPT /ctime.hours($sysmis).
DEBUG EVALUATE /ctime.hours($sysmis).
DEBUG EVALUATE NOOPT /ctime.minutes($sysmis).
DEBUG EVALUATE /ctime.minutes($sysmis).
DEBUG EVALUATE NOOPT /ctime.seconds($sysmis).
DEBUG EVALUATE /ctime.seconds($sysmis).
DEBUG EVALUATE NOOPT /ctime.days('a').
DEBUG EVALUATE /ctime.days('a').
DEBUG EVALUATE NOOPT /ctime.hours('b').
DEBUG EVALUATE /ctime.hours('b').
DEBUG EVALUATE NOOPT /ctime.minutes('c').
DEBUG EVALUATE /ctime.minutes('c').
DEBUG EVALUATE NOOPT /ctime.seconds('d').
DEBUG EVALUATE /ctime.seconds('d').
DEBUG EVALUATE NOOPT /ctime.days(date.dmy(15,10,1582)).
DEBUG EVALUATE /ctime.days(date.dmy(15,10,1582)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy(6,9,1719)).
DEBUG EVALUATE /ctime.days(date.dmy(6,9,1719)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy(24,1,1583)).
DEBUG EVALUATE /ctime.days(date.dmy(24,1,1583)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy(14,12,1585)).
DEBUG EVALUATE /ctime.days(date.dmy(14,12,1585)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy(26,11,1621)).
DEBUG EVALUATE /ctime.days(date.dmy(26,11,1621)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy(25,12,1821)).
DEBUG EVALUATE /ctime.days(date.dmy(25,12,1821)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy(3,12,1882)).
DEBUG EVALUATE /ctime.days(date.dmy(3,12,1882)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy(6,4,2002)).
DEBUG EVALUATE /ctime.days(date.dmy(6,4,2002)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy(19,12,1999)).
DEBUG EVALUATE /ctime.days(date.dmy(19,12,1999)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy(1,10,1978)).
DEBUG EVALUATE /ctime.days(date.dmy(1,10,1978)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy(0,10,1978)).
DEBUG EVALUATE /ctime.days(date.dmy(0,10,1978)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy(32,10,1978)).
DEBUG EVALUATE /ctime.days(date.dmy(32,10,1978)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy(31,0,1978)).
DEBUG EVALUATE /ctime.days(date.dmy(31,0,1978)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy(31,13,1978)).
DEBUG EVALUATE /ctime.days(date.dmy(31,13,1978)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy($sysmis,10,1978)).
DEBUG EVALUATE /ctime.days(date.dmy($sysmis,10,1978)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy(31,$sysmis,1978)).
DEBUG EVALUATE /ctime.days(date.dmy(31,$sysmis,1978)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy(31,10,$sysmis)).
DEBUG EVALUATE /ctime.days(date.dmy(31,10,$sysmis)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy($sysmis,$sysmis,1978)).
DEBUG EVALUATE /ctime.days(date.dmy($sysmis,$sysmis,1978)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy(31,$sysmis,$sysmis)).
DEBUG EVALUATE /ctime.days(date.dmy(31,$sysmis,$sysmis)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy($sysmis,10,$sysmis)).
DEBUG EVALUATE /ctime.days(date.dmy($sysmis,10,$sysmis)).
DEBUG EVALUATE NOOPT /ctime.days(date.dmy($sysmis,$sysmis,$sysmis)).
DEBUG EVALUATE /ctime.days(date.dmy($sysmis,$sysmis,$sysmis)).
DEBUG EVALUATE NOOPT /date.dmy('a',1,2).
DEBUG EVALUATE /date.dmy('a',1,2).
DEBUG EVALUATE NOOPT /date.dmy(1,'a',2).
DEBUG EVALUATE /date.dmy(1,'a',2).
DEBUG EVALUATE NOOPT /date.dmy(1,2,'a').
DEBUG EVALUATE /date.dmy(1,2,'a').
DEBUG EVALUATE NOOPT / yrmoda(1582,10,15).
DEBUG EVALUATE / yrmoda(1582,10,15).
DEBUG EVALUATE NOOPT /yrmoda(1719,9,6).
DEBUG EVALUATE /yrmoda(1719,9,6).
DEBUG EVALUATE NOOPT /yrmoda(1583,1,24).
DEBUG EVALUATE /yrmoda(1583,1,24).
DEBUG EVALUATE NOOPT /yrmoda(1585,12,14).
DEBUG EVALUATE /yrmoda(1585,12,14).
DEBUG EVALUATE NOOPT /yrmoda(1621,11,26).
DEBUG EVALUATE /yrmoda(1621,11,26).
DEBUG EVALUATE NOOPT /yrmoda(1821,12,25).
DEBUG EVALUATE /yrmoda(1821,12,25).
DEBUG EVALUATE NOOPT /yrmoda(1882,12,3).
DEBUG EVALUATE /yrmoda(1882,12,3).
DEBUG EVALUATE NOOPT /yrmoda(2002,4,6).
DEBUG EVALUATE /yrmoda(2002,4,6).
DEBUG EVALUATE NOOPT /yrmoda(1999,12,19).
DEBUG EVALUATE /yrmoda(1999,12,19).
DEBUG EVALUATE NOOPT /yrmoda(1978,10,1).
DEBUG EVALUATE /yrmoda(1978,10,1).
DEBUG EVALUATE NOOPT /yrmoda(1978,10,0).
DEBUG EVALUATE /yrmoda(1978,10,0).
DEBUG EVALUATE NOOPT /yrmoda(1978,10,32).
DEBUG EVALUATE /yrmoda(1978,10,32).
DEBUG EVALUATE NOOPT /yrmoda(1978,0,31).
DEBUG EVALUATE /yrmoda(1978,0,31).
DEBUG EVALUATE NOOPT /yrmoda(1978,13,31).
DEBUG EVALUATE /yrmoda(1978,13,31).
DEBUG EVALUATE NOOPT /yrmoda(1978,10,$sysmis).
DEBUG EVALUATE /yrmoda(1978,10,$sysmis).
DEBUG EVALUATE NOOPT /yrmoda(1978,$sysmis,31).
DEBUG EVALUATE /yrmoda(1978,$sysmis,31).
DEBUG EVALUATE NOOPT /yrmoda($sysmis,10,31).
DEBUG EVALUATE /yrmoda($sysmis,10,31).
DEBUG EVALUATE NOOPT /yrmoda(1978,$sysmis,$sysmis).
DEBUG EVALUATE /yrmoda(1978,$sysmis,$sysmis).
DEBUG EVALUATE NOOPT /yrmoda($sysmis,$sysmis,31).
DEBUG EVALUATE /yrmoda($sysmis,$sysmis,31).
DEBUG EVALUATE NOOPT /yrmoda($sysmis,10,$sysmis).
DEBUG EVALUATE /yrmoda($sysmis,10,$sysmis).
DEBUG EVALUATE NOOPT /yrmoda($sysmis,$sysmis,$sysmis).
DEBUG EVALUATE /yrmoda($sysmis,$sysmis,$sysmis).
DEBUG EVALUATE NOOPT /yrmoda('a',1,2).
DEBUG EVALUATE /yrmoda('a',1,2).
DEBUG EVALUATE NOOPT /yrmoda(1,'a',2).
DEBUG EVALUATE /yrmoda(1,'a',2).
DEBUG EVALUATE NOOPT /yrmoda(1,2,'a').
DEBUG EVALUATE /yrmoda(1,2,'a').
DEBUG EVALUATE NOOPT / ctime.days(date.mdy(6,10,1648)) + 577735.
DEBUG EVALUATE / ctime.days(date.mdy(6,10,1648)) + 577735.
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(6,30,1680)) + 577735.
DEBUG EVALUATE /ctime.days(date.mdy(6,30,1680)) + 577735.
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(7,24,1716)) + 577735.
DEBUG EVALUATE /ctime.days(date.mdy(7,24,1716)) + 577735.
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(6,19,1768)) + 577735.
DEBUG EVALUATE /ctime.days(date.mdy(6,19,1768)) + 577735.
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(8,2,1819)) + 577735.
DEBUG EVALUATE /ctime.days(date.mdy(8,2,1819)) + 577735.
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(3,27,1839)) + 577735.
DEBUG EVALUATE /ctime.days(date.mdy(3,27,1839)) + 577735.
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(4,19,1903)) + 577735.
DEBUG EVALUATE /ctime.days(date.mdy(4,19,1903)) + 577735.
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(8,25,1929)) + 577735.
DEBUG EVALUATE /ctime.days(date.mdy(8,25,1929)) + 577735.
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(9,29,1941)) + 577735.
DEBUG EVALUATE /ctime.days(date.mdy(9,29,1941)) + 577735.
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(4,19,1943)) + 577735.
DEBUG EVALUATE /ctime.days(date.mdy(4,19,1943)) + 577735.
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(10,7,1943)) + 577735.
DEBUG EVALUATE /ctime.days(date.mdy(10,7,1943)) + 577735.
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(3,17,1992)) + 577735.
DEBUG EVALUATE /ctime.days(date.mdy(3,17,1992)) + 577735.
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(2,25,1996)) + 577735.
DEBUG EVALUATE /ctime.days(date.mdy(2,25,1996)) + 577735.
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(11,10,2038)) + 577735.
DEBUG EVALUATE /ctime.days(date.mdy(11,10,2038)) + 577735.
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(7,18,2094)) + 577735.
DEBUG EVALUATE /ctime.days(date.mdy(7,18,2094)) + 577735.
DEBUG EVALUATE NOOPT / ctime.days(date.mdy(10,15,1582)).
DEBUG EVALUATE / ctime.days(date.mdy(10,15,1582)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(9,6,1719)).
DEBUG EVALUATE /ctime.days(date.mdy(9,6,1719)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(1,24,1583)).
DEBUG EVALUATE /ctime.days(date.mdy(1,24,1583)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(12,14,1585)).
DEBUG EVALUATE /ctime.days(date.mdy(12,14,1585)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(11,26,1621)).
DEBUG EVALUATE /ctime.days(date.mdy(11,26,1621)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(12,25,1821)).
DEBUG EVALUATE /ctime.days(date.mdy(12,25,1821)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(12,3,1882)).
DEBUG EVALUATE /ctime.days(date.mdy(12,3,1882)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(4,6,2002)).
DEBUG EVALUATE /ctime.days(date.mdy(4,6,2002)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(12,19,1999)).
DEBUG EVALUATE /ctime.days(date.mdy(12,19,1999)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(10,1,1978)).
DEBUG EVALUATE /ctime.days(date.mdy(10,1,1978)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(10,0,1978)).
DEBUG EVALUATE /ctime.days(date.mdy(10,0,1978)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(10,32,1978)).
DEBUG EVALUATE /ctime.days(date.mdy(10,32,1978)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(0,31,1978)).
DEBUG EVALUATE /ctime.days(date.mdy(0,31,1978)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(13,31,1978)).
DEBUG EVALUATE /ctime.days(date.mdy(13,31,1978)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(10,$sysmis,1978)).
DEBUG EVALUATE /ctime.days(date.mdy(10,$sysmis,1978)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy($sysmis,31,1978)).
DEBUG EVALUATE /ctime.days(date.mdy($sysmis,31,1978)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(10,31,$sysmis)).
DEBUG EVALUATE /ctime.days(date.mdy(10,31,$sysmis)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy($sysmis,$sysmis,1978)).
DEBUG EVALUATE /ctime.days(date.mdy($sysmis,$sysmis,1978)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy($sysmis,31,$sysmis)).
DEBUG EVALUATE /ctime.days(date.mdy($sysmis,31,$sysmis)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(10,$sysmis,$sysmis)).
DEBUG EVALUATE /ctime.days(date.mdy(10,$sysmis,$sysmis)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy($sysmis,$sysmis,$sysmis)).
DEBUG EVALUATE /ctime.days(date.mdy($sysmis,$sysmis,$sysmis)).
DEBUG EVALUATE NOOPT /date.mdy('a',1,2).
DEBUG EVALUATE /date.mdy('a',1,2).
DEBUG EVALUATE NOOPT /date.mdy(1,'a',2).
DEBUG EVALUATE /date.mdy(1,'a',2).
DEBUG EVALUATE NOOPT /date.mdy(1,2,'a').
DEBUG EVALUATE /date.mdy(1,2,'a').
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(0,0,0)).
DEBUG EVALUATE /ctime.days(date.mdy(0,0,0)).
DEBUG EVALUATE NOOPT /ctime.days(date.mdy(0,0,999)).
DEBUG EVALUATE /ctime.days(date.mdy(0,0,999)).
DEBUG EVALUATE NOOPT /date.mdy(1,1,1582).
DEBUG EVALUATE /date.mdy(1,1,1582).
DEBUG EVALUATE NOOPT /date.mdy(10,14,1582).
DEBUG EVALUATE /date.mdy(10,14,1582).
DEBUG EVALUATE NOOPT /date.mdy(10,15,1582).
DEBUG EVALUATE /date.mdy(10,15,1582).
DEBUG EVALUATE NOOPT /ctime.days(date.moyr(1,2000)).
DEBUG EVALUATE /ctime.days(date.moyr(1,2000)).
DEBUG EVALUATE NOOPT /ctime.days(date.moyr(2,2000)).
DEBUG EVALUATE /ctime.days(date.moyr(2,2000)).
DEBUG EVALUATE NOOPT /ctime.days(date.moyr(3,2000)).
DEBUG EVALUATE /ctime.days(date.moyr(3,2000)).
DEBUG EVALUATE NOOPT /ctime.days(date.moyr(4,2000)).
DEBUG EVALUATE /ctime.days(date.moyr(4,2000)).
DEBUG EVALUATE NOOPT /ctime.days(date.moyr(5,2000)).
DEBUG EVALUATE /ctime.days(date.moyr(5,2000)).
DEBUG EVALUATE NOOPT /ctime.days(date.moyr(13,2000)).
DEBUG EVALUATE /ctime.days(date.moyr(13,2000)).
DEBUG EVALUATE NOOPT /ctime.days(date.moyr(14,2000)).
DEBUG EVALUATE /ctime.days(date.moyr(14,2000)).
DEBUG EVALUATE NOOPT /ctime.days(date.moyr($sysmis,2000)).
DEBUG EVALUATE /ctime.days(date.moyr($sysmis,2000)).
DEBUG EVALUATE NOOPT /ctime.days(date.moyr(1,$sysmis)).
DEBUG EVALUATE /ctime.days(date.moyr(1,$sysmis)).
DEBUG EVALUATE NOOPT /ctime.days(date.moyr($sysmis,$sysmis)).
DEBUG EVALUATE /ctime.days(date.moyr($sysmis,$sysmis)).
DEBUG EVALUATE NOOPT /date.moyr('a',2000).
DEBUG EVALUATE /date.moyr('a',2000).
DEBUG EVALUATE NOOPT /date.moyr(5,'a').
DEBUG EVALUATE /date.moyr(5,'a').
DEBUG EVALUATE NOOPT /date.moyr('a','b').
DEBUG EVALUATE /date.moyr('a','b').
DEBUG EVALUATE NOOPT /ctime.days(date.qyr(1,2000)).
DEBUG EVALUATE /ctime.days(date.qyr(1,2000)).
DEBUG EVALUATE NOOPT /ctime.days(date.qyr(2,2000)).
DEBUG EVALUATE /ctime.days(date.qyr(2,2000)).
DEBUG EVALUATE NOOPT /ctime.days(date.qyr(5,2000)).
DEBUG EVALUATE /ctime.days(date.qyr(5,2000)).
DEBUG EVALUATE NOOPT /ctime.days(date.qyr(6,2000)).
DEBUG EVALUATE /ctime.days(date.qyr(6,2000)).
DEBUG EVALUATE NOOPT /ctime.days(date.qyr($sysmis,2000)).
DEBUG EVALUATE /ctime.days(date.qyr($sysmis,2000)).
DEBUG EVALUATE NOOPT /ctime.days(date.qyr(1,$sysmis)).
DEBUG EVALUATE /ctime.days(date.qyr(1,$sysmis)).
DEBUG EVALUATE NOOPT /ctime.days(date.qyr($sysmis,$sysmis)).
DEBUG EVALUATE /ctime.days(date.qyr($sysmis,$sysmis)).
DEBUG EVALUATE NOOPT /date.qyr('a',2000).
DEBUG EVALUATE /date.qyr('a',2000).
DEBUG EVALUATE NOOPT /date.qyr(5,'a').
DEBUG EVALUATE /date.qyr(5,'a').
DEBUG EVALUATE NOOPT /date.qyr('a','b').
DEBUG EVALUATE /date.qyr('a','b').
DEBUG EVALUATE NOOPT /ctime.days(date.wkyr(1,2000)).
DEBUG EVALUATE /ctime.days(date.wkyr(1,2000)).
DEBUG EVALUATE NOOPT /ctime.days(date.wkyr(15,1999)).
DEBUG EVALUATE /ctime.days(date.wkyr(15,1999)).
DEBUG EVALUATE NOOPT /ctime.days(date.wkyr(36,1999)).
DEBUG EVALUATE /ctime.days(date.wkyr(36,1999)).
DEBUG EVALUATE NOOPT /ctime.days(date.wkyr(54,1999)).
DEBUG EVALUATE /ctime.days(date.wkyr(54,1999)).
DEBUG EVALUATE NOOPT /ctime.days(date.wkyr($sysmis,1999)).
DEBUG EVALUATE /ctime.days(date.wkyr($sysmis,1999)).
DEBUG EVALUATE NOOPT /ctime.days(date.wkyr(1,$sysmis)).
DEBUG EVALUATE /ctime.days(date.wkyr(1,$sysmis)).
DEBUG EVALUATE NOOPT /ctime.days(date.wkyr($sysmis,$sysmis)).
DEBUG EVALUATE /ctime.days(date.wkyr($sysmis,$sysmis)).
DEBUG EVALUATE NOOPT /date.wkyr('a',1999).
DEBUG EVALUATE /date.wkyr('a',1999).
DEBUG EVALUATE NOOPT /date.wkyr(5,'a').
DEBUG EVALUATE /date.wkyr(5,'a').
DEBUG EVALUATE NOOPT /date.wkyr('a','b').
DEBUG EVALUATE /date.wkyr('a','b').
DEBUG EVALUATE NOOPT /ctime.days(date.yrday(2000,1)).
DEBUG EVALUATE /ctime.days(date.yrday(2000,1)).
DEBUG EVALUATE NOOPT /ctime.days(date.yrday(2000,100)).
DEBUG EVALUATE /ctime.days(date.yrday(2000,100)).
DEBUG EVALUATE NOOPT /ctime.days(date.yrday(2000,253)).
DEBUG EVALUATE /ctime.days(date.yrday(2000,253)).
DEBUG EVALUATE NOOPT /ctime.days(date.yrday(2000,500)).
DEBUG EVALUATE /ctime.days(date.yrday(2000,500)).
DEBUG EVALUATE NOOPT /ctime.days(date.yrday(2000,-100)).
DEBUG EVALUATE /ctime.days(date.yrday(2000,-100)).
DEBUG EVALUATE NOOPT /ctime.days(date.yrday(1999,$sysmis)).
DEBUG EVALUATE /ctime.days(date.yrday(1999,$sysmis)).
DEBUG EVALUATE NOOPT /ctime.days(date.yrday($sysmis,1)).
DEBUG EVALUATE /ctime.days(date.yrday($sysmis,1)).
DEBUG EVALUATE NOOPT /ctime.days(date.yrday($sysmis,$sysmis)).
DEBUG EVALUATE /ctime.days(date.yrday($sysmis,$sysmis)).
DEBUG EVALUATE NOOPT /date.yrday(1999,'a').
DEBUG EVALUATE /date.yrday(1999,'a').
DEBUG EVALUATE NOOPT /date.yrday('a',5).
DEBUG EVALUATE /date.yrday('a',5).
DEBUG EVALUATE NOOPT /date.yrday('a','b').
DEBUG EVALUATE /date.yrday('a','b').
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:1048: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:1048"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/evaluate.at:1048"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:1048: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:1048"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "86400.00
86400.00
-86400.00
-86400.00
43200.00
43200.00
evaluate.sps:10: error: DEBUG EVALUATE: Type mismatch invoking TIME.DAYS(number) as time.days(string).
error
evaluate.sps:11: error: DEBUG EVALUATE: Type mismatch invoking TIME.DAYS(number) as time.days(string).
error
sysmis
sysmis
17438.00
17438.00
45095.00
45095.00
46073.00
46073.00
5160.00
5160.00
75491.00
75491.00
27365.00
27365.00
56629.00
56629.00
15909.00
15909.00
24567.00
24567.00
10672.00
10672.00
60344.00
60344.00
77457.00
77457.00
81004.00
81004.00
7011.00
7011.00
18367.00
18367.00
18360.00
18360.00
18007.00
18007.00
367.00
367.00
evaluate.sps:50: warning: DEBUG EVALUATE: TIME.HMS cannot mix positive and negative arguments.
sysmis
evaluate.sps:51: warning: DEBUG EVALUATE: TIME.HMS cannot mix positive and negative arguments.
sysmis
evaluate.sps:52: warning: DEBUG EVALUATE: TIME.HMS cannot mix positive and negative arguments.
sysmis
evaluate.sps:53: warning: DEBUG EVALUATE: TIME.HMS cannot mix positive and negative arguments.
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
1.23
1.23
29.52
29.52
1771.20
1771.20
106272.00
106272.00
-1.23
-1.23
-29.52
-29.52
-1771.20
-1771.20
-106272.00
-106272.00
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
evaluate.sps:92: error: DEBUG EVALUATE: Type mismatch invoking CTIME.DAYS(number) as ctime.days(string).
error
evaluate.sps:93: error: DEBUG EVALUATE: Type mismatch invoking CTIME.DAYS(number) as ctime.days(string).
error
evaluate.sps:94: error: DEBUG EVALUATE: Type mismatch invoking CTIME.HOURS(number) as ctime.hours(string).
error
evaluate.sps:95: error: DEBUG EVALUATE: Type mismatch invoking CTIME.HOURS(number) as ctime.hours(string).
error
evaluate.sps:96: error: DEBUG EVALUATE: Type mismatch invoking CTIME.MINUTES(number) as ctime.minutes(string).
error
evaluate.sps:97: error: DEBUG EVALUATE: Type mismatch invoking CTIME.MINUTES(number) as ctime.minutes(string).
error
evaluate.sps:98: error: DEBUG EVALUATE: Type mismatch invoking CTIME.SECONDS(number) as ctime.seconds(string).
error
evaluate.sps:99: error: DEBUG EVALUATE: Type mismatch invoking CTIME.SECONDS(number) as ctime.seconds(string).
error
1.00
1.00
50000.00
50000.00
102.00
102.00
1157.00
1157.00
14288.00
14288.00
87365.00
87365.00
109623.00
109623.00
153211.00
153211.00
152372.00
152372.00
144623.00
144623.00
144622.00
144622.00
evaluate.sps:122: error: DEBUG EVALUATE: Day 32 is not in acceptable range of 0 to 31.
sysmis
evaluate.sps:123: error: DEBUG EVALUATE: Day 32 is not in acceptable range of 0 to 31.
sysmis
144349.00
144349.00
144745.00
144745.00
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
evaluate.sps:142: error: DEBUG EVALUATE: Type mismatch invoking DATE.DMY(number, number, number) as date.dmy(string, number, number).
error
evaluate.sps:143: error: DEBUG EVALUATE: Type mismatch invoking DATE.DMY(number, number, number) as date.dmy(string, number, number).
error
evaluate.sps:144: error: DEBUG EVALUATE: Type mismatch invoking DATE.DMY(number, number, number) as date.dmy(number, string, number).
error
evaluate.sps:145: error: DEBUG EVALUATE: Type mismatch invoking DATE.DMY(number, number, number) as date.dmy(number, string, number).
error
evaluate.sps:146: error: DEBUG EVALUATE: Type mismatch invoking DATE.DMY(number, number, number) as date.dmy(number, number, string).
error
evaluate.sps:147: error: DEBUG EVALUATE: Type mismatch invoking DATE.DMY(number, number, number) as date.dmy(number, number, string).
error
1.00
1.00
50000.00
50000.00
102.00
102.00
1157.00
1157.00
14288.00
14288.00
87365.00
87365.00
109623.00
109623.00
153211.00
153211.00
152372.00
152372.00
144623.00
144623.00
144622.00
144622.00
evaluate.sps:170: error: DEBUG EVALUATE: Day 32 is not in acceptable range of 0 to 31.
sysmis
evaluate.sps:171: error: DEBUG EVALUATE: Day 32 is not in acceptable range of 0 to 31.
sysmis
144349.00
144349.00
144745.00
144745.00
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
evaluate.sps:190: error: DEBUG EVALUATE: Type mismatch invoking YRMODA(number, number, number) as yrmoda(string, number, number).
error
evaluate.sps:191: error: DEBUG EVALUATE: Type mismatch invoking YRMODA(number, number, number) as yrmoda(string, number, number).
error
evaluate.sps:192: error: DEBUG EVALUATE: Type mismatch invoking YRMODA(number, number, number) as yrmoda(number, string, number).
error
evaluate.sps:193: error: DEBUG EVALUATE: Type mismatch invoking YRMODA(number, number, number) as yrmoda(number, string, number).
error
evaluate.sps:194: error: DEBUG EVALUATE: Type mismatch invoking YRMODA(number, number, number) as yrmoda(number, number, string).
error
evaluate.sps:195: error: DEBUG EVALUATE: Type mismatch invoking YRMODA(number, number, number) as yrmoda(number, number, string).
error
601716.00
601716.00
613424.00
613424.00
626596.00
626596.00
645554.00
645554.00
664224.00
664224.00
671401.00
671401.00
694799.00
694799.00
704424.00
704424.00
708842.00
708842.00
709409.00
709409.00
709580.00
709580.00
727274.00
727274.00
728714.00
728714.00
744313.00
744313.00
764652.00
764652.00
1.00
1.00
50000.00
50000.00
102.00
102.00
1157.00
1157.00
14288.00
14288.00
87365.00
87365.00
109623.00
109623.00
153211.00
153211.00
152372.00
152372.00
144623.00
144623.00
144622.00
144622.00
evaluate.sps:248: error: DEBUG EVALUATE: Day 32 is not in acceptable range of 0 to 31.
sysmis
evaluate.sps:249: error: DEBUG EVALUATE: Day 32 is not in acceptable range of 0 to 31.
sysmis
144349.00
144349.00
144745.00
144745.00
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
evaluate.sps:268: error: DEBUG EVALUATE: Type mismatch invoking DATE.MDY(number, number, number) as date.mdy(string, number, number).
error
evaluate.sps:269: error: DEBUG EVALUATE: Type mismatch invoking DATE.MDY(number, number, number) as date.mdy(string, number, number).
error
evaluate.sps:270: error: DEBUG EVALUATE: Type mismatch invoking DATE.MDY(number, number, number) as date.mdy(number, string, number).
error
evaluate.sps:271: error: DEBUG EVALUATE: Type mismatch invoking DATE.MDY(number, number, number) as date.mdy(number, string, number).
error
evaluate.sps:272: error: DEBUG EVALUATE: Type mismatch invoking DATE.MDY(number, number, number) as date.mdy(number, number, string).
error
evaluate.sps:273: error: DEBUG EVALUATE: Type mismatch invoking DATE.MDY(number, number, number) as date.mdy(number, number, string).
error
152353.00
152353.00
evaluate.sps:276: error: DEBUG EVALUATE: Date 0998-12-0 is before the earliest acceptable date of 1582-10-15.
sysmis
evaluate.sps:277: error: DEBUG EVALUATE: Date 0998-12-0 is before the earliest acceptable date of 1582-10-15.
sysmis
evaluate.sps:278: error: DEBUG EVALUATE: Date 1582-1-1 is before the earliest acceptable date of 1582-10-15.
sysmis
evaluate.sps:279: error: DEBUG EVALUATE: Date 1582-1-1 is before the earliest acceptable date of 1582-10-15.
sysmis
evaluate.sps:280: error: DEBUG EVALUATE: Date 1582-10-14 is before the earliest acceptable date of 1582-10-15.
sysmis
evaluate.sps:281: error: DEBUG EVALUATE: Date 1582-10-14 is before the earliest acceptable date of 1582-10-15.
sysmis
86400.00
86400.00
152385.00
152385.00
152416.00
152416.00
152445.00
152445.00
152476.00
152476.00
152506.00
152506.00
152751.00
152751.00
evaluate.sps:296: error: DEBUG EVALUATE: Month 14 is not in acceptable range of 0 to 13.
sysmis
evaluate.sps:297: error: DEBUG EVALUATE: Month 14 is not in acceptable range of 0 to 13.
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
evaluate.sps:304: error: DEBUG EVALUATE: Type mismatch invoking DATE.MOYR(number, number) as date.moyr(string, number).
error
evaluate.sps:305: error: DEBUG EVALUATE: Type mismatch invoking DATE.MOYR(number, number) as date.moyr(string, number).
error
evaluate.sps:306: error: DEBUG EVALUATE: Type mismatch invoking DATE.MOYR(number, number) as date.moyr(number, string).
error
evaluate.sps:307: error: DEBUG EVALUATE: Type mismatch invoking DATE.MOYR(number, number) as date.moyr(number, string).
error
evaluate.sps:308: error: DEBUG EVALUATE: Type mismatch invoking DATE.MOYR(number, number) as date.moyr(string, string).
error
evaluate.sps:309: error: DEBUG EVALUATE: Type mismatch invoking DATE.MOYR(number, number) as date.moyr(string, string).
error
152385.00
152385.00
152476.00
152476.00
evaluate.sps:314: warning: DEBUG EVALUATE: The first argument to DATE.QYR must be 1, 2, 3, or 4.
sysmis
evaluate.sps:315: warning: DEBUG EVALUATE: The first argument to DATE.QYR must be 1, 2, 3, or 4.
sysmis
evaluate.sps:316: warning: DEBUG EVALUATE: The first argument to DATE.QYR must be 1, 2, 3, or 4.
sysmis
evaluate.sps:317: warning: DEBUG EVALUATE: The first argument to DATE.QYR must be 1, 2, 3, or 4.
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
evaluate.sps:324: error: DEBUG EVALUATE: Type mismatch invoking DATE.QYR(number, number) as date.qyr(string, number).
error
evaluate.sps:325: error: DEBUG EVALUATE: Type mismatch invoking DATE.QYR(number, number) as date.qyr(string, number).
error
evaluate.sps:326: error: DEBUG EVALUATE: Type mismatch invoking DATE.QYR(number, number) as date.qyr(number, string).
error
evaluate.sps:327: error: DEBUG EVALUATE: Type mismatch invoking DATE.QYR(number, number) as date.qyr(number, string).
error
evaluate.sps:328: error: DEBUG EVALUATE: Type mismatch invoking DATE.QYR(number, number) as date.qyr(string, string).
error
evaluate.sps:329: error: DEBUG EVALUATE: Type mismatch invoking DATE.QYR(number, number) as date.qyr(string, string).
error
152385.00
152385.00
152118.00
152118.00
152265.00
152265.00
evaluate.sps:336: error: DEBUG EVALUATE: The week argument to DATE.WKYR is outside the acceptable range of 1 to 53. The result will be system-missing.
sysmis
evaluate.sps:337: error: DEBUG EVALUATE: The week argument to DATE.WKYR is outside the acceptable range of 1 to 53. The result will be system-missing.
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
evaluate.sps:344: error: DEBUG EVALUATE: Type mismatch invoking DATE.WKYR(number, number) as date.wkyr(string, number).
error
evaluate.sps:345: error: DEBUG EVALUATE: Type mismatch invoking DATE.WKYR(number, number) as date.wkyr(string, number).
error
evaluate.sps:346: error: DEBUG EVALUATE: Type mismatch invoking DATE.WKYR(number, number) as date.wkyr(number, string).
error
evaluate.sps:347: error: DEBUG EVALUATE: Type mismatch invoking DATE.WKYR(number, number) as date.wkyr(number, string).
error
evaluate.sps:348: error: DEBUG EVALUATE: Type mismatch invoking DATE.WKYR(number, number) as date.wkyr(string, string).
error
evaluate.sps:349: error: DEBUG EVALUATE: Type mismatch invoking DATE.WKYR(number, number) as date.wkyr(string, string).
error
152385.00
152385.00
152484.00
152484.00
152637.00
152637.00
evaluate.sps:356: error: DEBUG EVALUATE: The day argument to DATE.YRDAY is outside the acceptable range of 1 to 366. The result will be system-missing.
sysmis
evaluate.sps:357: error: DEBUG EVALUATE: The day argument to DATE.YRDAY is outside the acceptable range of 1 to 366. The result will be system-missing.
sysmis
evaluate.sps:358: error: DEBUG EVALUATE: The day argument to DATE.YRDAY is outside the acceptable range of 1 to 366. The result will be system-missing.
sysmis
evaluate.sps:359: error: DEBUG EVALUATE: The day argument to DATE.YRDAY is outside the acceptable range of 1 to 366. The result will be system-missing.
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
sysmis
evaluate.sps:366: error: DEBUG EVALUATE: Type mismatch invoking DATE.YRDAY(number, number) as date.yrday(number, string).
error
evaluate.sps:367: error: DEBUG EVALUATE: Type mismatch invoking DATE.YRDAY(number, number) as date.yrday(number, string).
error
evaluate.sps:368: error: DEBUG EVALUATE: Type mismatch invoking DATE.YRDAY(number, number) as date.yrday(string, number).
error
evaluate.sps:369: error: DEBUG EVALUATE: Type mismatch invoking DATE.YRDAY(number, number) as date.yrday(string, number).
error
evaluate.sps:370: error: DEBUG EVALUATE: Type mismatch invoking DATE.YRDAY(number, number) as date.yrday(string, string).
error
evaluate.sps:371: error: DEBUG EVALUATE: Type mismatch invoking DATE.YRDAY(number, number) as date.yrday(string, string).
error
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:1048"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_356
#AT_START_357
at_fn_group_banner 357 'evaluate.at:1287' \
"expressions - xdate" " " 57
at_xfail=no
(
$as_echo "357. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(6,10,1648) + time.hms(0,0,0)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(6,10,1648) + time.hms(0,0,0)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(6,30,1680) + time.hms(4,50,38)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(6,30,1680) + time.hms(4,50,38)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(7,24,1716) + time.hms(12,31,35)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(7,24,1716) + time.hms(12,31,35)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(6,19,1768) + time.hms(12,47,53)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(6,19,1768) + time.hms(12,47,53)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(8,2,1819) + time.hms(1,26,0)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(8,2,1819) + time.hms(1,26,0)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(3,27,1839) + time.hms(20,58,11)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(3,27,1839) + time.hms(20,58,11)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(4,19,1903) + time.hms(7,36,5)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(4,19,1903) + time.hms(7,36,5)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(8,25,1929) + time.hms(15,43,49)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(8,25,1929) + time.hms(15,43,49)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(9,29,1941) + time.hms(4,25,9)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(9,29,1941) + time.hms(4,25,9)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(4,19,1943) + time.hms(6,49,27)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(4,19,1943) + time.hms(6,49,27)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(10,7,1943) + time.hms(2,57,52)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(10,7,1943) + time.hms(2,57,52)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(3,17,1992) + time.hms(16,45,44)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(3,17,1992) + time.hms(16,45,44)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(2,25,1996) + time.hms(21,30,57)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(2,25,1996) + time.hms(21,30,57)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(9,29,1941) + time.hms(4,25,9)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(9,29,1941) + time.hms(4,25,9)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(4,19,43) + time.hms(6,49,27)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(4,19,43) + time.hms(6,49,27)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(10,7,43) + time.hms(2,57,52)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(10,7,43) + time.hms(2,57,52)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(3,17,92) + time.hms(16,45,44)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(3,17,92) + time.hms(16,45,44)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(2,25,96) + time.hms(21,30,57)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(2,25,96) + time.hms(21,30,57)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(11,10,2038) + time.hms(22,30,4)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(11,10,2038) + time.hms(22,30,4)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(date.mdy(7,18,2094) + time.hms(1,56,51)) / 86400.
DEBUG EVALUATE /xdate.date(date.mdy(7,18,2094) + time.hms(1,56,51)) / 86400.
DEBUG EVALUATE NOOPT /xdate.date(123.4).
DEBUG EVALUATE /xdate.date(123.4).
DEBUG EVALUATE NOOPT /xdate.date('').
DEBUG EVALUATE /xdate.date('').
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE /xdate.hour(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE /xdate.hour(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE /xdate.hour(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE /xdate.hour(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE /xdate.hour(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE /xdate.hour(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE /xdate.hour(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE /xdate.hour(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.hour(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.hour(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.hour(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.hour(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.hour(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.hour(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.hour(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.hour(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.hour(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.hour(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE /xdate.hour(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE NOOPT /xdate.hour(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE /xdate.hour(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE NOOPT /xdate.hour(-1).
DEBUG EVALUATE /xdate.hour(-1).
DEBUG EVALUATE NOOPT /xdate.hour(1).
DEBUG EVALUATE /xdate.hour(1).
DEBUG EVALUATE NOOPT /xdate.hour($sysmis).
DEBUG EVALUATE /xdate.hour($sysmis).
DEBUG EVALUATE NOOPT /xdate.hour('').
DEBUG EVALUATE /xdate.hour('').
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE /xdate.jday(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE /xdate.jday(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE /xdate.jday(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE /xdate.jday(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE /xdate.jday(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE /xdate.jday(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE /xdate.jday(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE /xdate.jday(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.jday(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.jday(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.jday(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.jday(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.jday(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.jday(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.jday(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.jday(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.jday(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.jday(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE /xdate.jday(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE NOOPT /xdate.jday(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE /xdate.jday(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE NOOPT /xdate.jday(0).
DEBUG EVALUATE /xdate.jday(0).
DEBUG EVALUATE NOOPT /xdate.jday(1).
DEBUG EVALUATE /xdate.jday(1).
DEBUG EVALUATE NOOPT /xdate.jday(86400).
DEBUG EVALUATE /xdate.jday(86400).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE /xdate.mday(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE /xdate.mday(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE /xdate.mday(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE /xdate.mday(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE /xdate.mday(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE /xdate.mday(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE /xdate.mday(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE /xdate.mday(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.mday(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.mday(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.mday(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.mday(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.mday(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.mday(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.mday(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.mday(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.mday(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.mday(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE /xdate.mday(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE NOOPT /xdate.mday(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE /xdate.mday(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE /xdate.minute(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE /xdate.minute(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE /xdate.minute(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE /xdate.minute(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE /xdate.minute(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE /xdate.minute(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE /xdate.minute(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE /xdate.minute(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.minute(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.minute(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.minute(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.minute(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.minute(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.minute(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.minute(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.minute(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.minute(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.minute(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE /xdate.minute(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE NOOPT /xdate.minute(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE /xdate.minute(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE /xdate.month(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE /xdate.month(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE /xdate.month(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE /xdate.month(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE /xdate.month(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE /xdate.month(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE /xdate.month(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE /xdate.month(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.month(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.month(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.month(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.month(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.month(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.month(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.month(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.month(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.month(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.month(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE /xdate.month(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE NOOPT /xdate.month(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE /xdate.month(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE /xdate.quarter(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE /xdate.quarter(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE /xdate.quarter(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE /xdate.quarter(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE /xdate.quarter(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE /xdate.quarter(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE /xdate.quarter(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE /xdate.quarter(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.quarter(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.quarter(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.quarter(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.quarter(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.quarter(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.quarter(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.quarter(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.quarter(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.quarter(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.quarter(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE /xdate.quarter(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE NOOPT /xdate.quarter(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE /xdate.quarter(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE /xdate.second(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE /xdate.second(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE /xdate.second(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE /xdate.second(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE /xdate.second(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE /xdate.second(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE /xdate.second(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE /xdate.second(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.second(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.second(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.second(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.second(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.second(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.second(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.second(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.second(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.second(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.second(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE /xdate.second(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE NOOPT /xdate.second(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE /xdate.second(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE /xdate.tday(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE /xdate.tday(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE /xdate.tday(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE /xdate.tday(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE /xdate.tday(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE /xdate.tday(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE /xdate.tday(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE /xdate.tday(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.tday(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.tday(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.tday(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.tday(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.tday(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.tday(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.tday(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.tday(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.tday(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.tday(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE /xdate.tday(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE NOOPT /xdate.tday(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE /xdate.tday(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE /xdate.time(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE /xdate.time(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE /xdate.time(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE /xdate.time(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE /xdate.time(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE /xdate.time(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE /xdate.time(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE /xdate.time(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.time(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.time(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.time(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.time(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.time(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.time(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.time(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.time(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.time(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.time(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE /xdate.time(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE NOOPT /xdate.time(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE /xdate.time(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE /xdate.week(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE /xdate.week(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE /xdate.week(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE /xdate.week(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE /xdate.week(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE /xdate.week(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE /xdate.week(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE /xdate.week(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.week(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.week(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.week(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.week(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.week(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.week(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.week(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.week(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.week(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.week(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE /xdate.week(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE NOOPT /xdate.week(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE /xdate.week(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(6,10,1648)).
DEBUG EVALUATE /xdate.wkday(date.mdy(6,10,1648)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(6,30,1680)).
DEBUG EVALUATE /xdate.wkday(date.mdy(6,30,1680)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(7,24,1716)).
DEBUG EVALUATE /xdate.wkday(date.mdy(7,24,1716)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(6,19,1768)).
DEBUG EVALUATE /xdate.wkday(date.mdy(6,19,1768)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(8,2,1819)).
DEBUG EVALUATE /xdate.wkday(date.mdy(8,2,1819)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(3,27,1839)).
DEBUG EVALUATE /xdate.wkday(date.mdy(3,27,1839)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(4,19,1903)).
DEBUG EVALUATE /xdate.wkday(date.mdy(4,19,1903)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(8,25,1929)).
DEBUG EVALUATE /xdate.wkday(date.mdy(8,25,1929)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(9,29,1941)).
DEBUG EVALUATE /xdate.wkday(date.mdy(9,29,1941)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(4,19,1943)).
DEBUG EVALUATE /xdate.wkday(date.mdy(4,19,1943)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(10,7,1943)).
DEBUG EVALUATE /xdate.wkday(date.mdy(10,7,1943)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(3,17,1992)).
DEBUG EVALUATE /xdate.wkday(date.mdy(3,17,1992)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(2,25,1996)).
DEBUG EVALUATE /xdate.wkday(date.mdy(2,25,1996)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(9,29,1941)).
DEBUG EVALUATE /xdate.wkday(date.mdy(9,29,1941)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(4,19,43)).
DEBUG EVALUATE /xdate.wkday(date.mdy(4,19,43)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(10,7,43)).
DEBUG EVALUATE /xdate.wkday(date.mdy(10,7,43)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(3,17,92)).
DEBUG EVALUATE /xdate.wkday(date.mdy(3,17,92)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(2,25,96)).
DEBUG EVALUATE /xdate.wkday(date.mdy(2,25,96)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(11,10,2038)).
DEBUG EVALUATE /xdate.wkday(date.mdy(11,10,2038)).
DEBUG EVALUATE NOOPT /xdate.wkday(date.mdy(7,18,2094)).
DEBUG EVALUATE /xdate.wkday(date.mdy(7,18,2094)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE /xdate.year(date.mdy(6,10,1648) + time.hms(0,0,0)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE /xdate.year(date.mdy(6,30,1680) + time.hms(4,50,38)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE /xdate.year(date.mdy(7,24,1716) + time.hms(12,31,35)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE /xdate.year(date.mdy(6,19,1768) + time.hms(12,47,53)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE /xdate.year(date.mdy(8,2,1819) + time.hms(1,26,0)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE /xdate.year(date.mdy(3,27,1839) + time.hms(20,58,11)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE /xdate.year(date.mdy(4,19,1903) + time.hms(7,36,5)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE /xdate.year(date.mdy(8,25,1929) + time.hms(15,43,49)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.year(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.year(date.mdy(4,19,1943) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.year(date.mdy(10,7,1943) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.year(date.mdy(3,17,1992) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.year(date.mdy(2,25,1996) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE /xdate.year(date.mdy(9,29,1941) + time.hms(4,25,9)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE /xdate.year(date.mdy(4,19,43) + time.hms(6,49,27)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE /xdate.year(date.mdy(10,7,43) + time.hms(2,57,52)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE /xdate.year(date.mdy(3,17,92) + time.hms(16,45,44)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE /xdate.year(date.mdy(2,25,96) + time.hms(21,30,57)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE /xdate.year(date.mdy(11,10,2038) + time.hms(22,30,4)).
DEBUG EVALUATE NOOPT /xdate.year(date.mdy(7,18,2094) + time.hms(1,56,51)).
DEBUG EVALUATE /xdate.year(date.mdy(7,18,2094) + time.hms(1,56,51)).
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:1287: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:1287"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/evaluate.at:1287"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:1287: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:1287"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "23981.00
23981.00
35689.00
35689.00
48861.00
48861.00
67819.00
67819.00
86489.00
86489.00
93666.00
93666.00
117064.00
117064.00
126689.00
126689.00
131107.00
131107.00
131674.00
131674.00
131845.00
131845.00
149539.00
149539.00
150979.00
150979.00
131107.00
131107.00
131674.00
131674.00
131845.00
131845.00
149539.00
149539.00
150979.00
150979.00
166578.00
166578.00
186917.00
186917.00
0.00
0.00
evaluate.sps:46: error: DEBUG EVALUATE: Type mismatch invoking XDATE.DATE(number) as xdate.date(string).
error
evaluate.sps:47: error: DEBUG EVALUATE: Type mismatch invoking XDATE.DATE(number) as xdate.date(string).
error
0.00
0.00
4.00
4.00
12.00
12.00
12.00
12.00
1.00
1.00
20.00
20.00
7.00
7.00
15.00
15.00
4.00
4.00
6.00
6.00
2.00
2.00
16.00
16.00
21.00
21.00
4.00
4.00
6.00
6.00
2.00
2.00
16.00
16.00
21.00
21.00
22.00
22.00
1.00
1.00
-1.00
-1.00
0.00
0.00
sysmis
sysmis
evaluate.sps:94: error: DEBUG EVALUATE: Type mismatch invoking XDATE.HOUR(number) as xdate.hour(string).
error
evaluate.sps:95: error: DEBUG EVALUATE: Type mismatch invoking XDATE.HOUR(number) as xdate.hour(string).
error
162.00
162.00
182.00
182.00
206.00
206.00
171.00
171.00
214.00
214.00
86.00
86.00
109.00
109.00
237.00
237.00
272.00
272.00
109.00
109.00
280.00
280.00
77.00
77.00
56.00
56.00
272.00
272.00
109.00
109.00
280.00
280.00
77.00
77.00
56.00
56.00
314.00
314.00
199.00
199.00
sysmis
sysmis
sysmis
sysmis
288.00
288.00
10.00
10.00
30.00
30.00
24.00
24.00
19.00
19.00
2.00
2.00
27.00
27.00
19.00
19.00
25.00
25.00
29.00
29.00
19.00
19.00
7.00
7.00
17.00
17.00
25.00
25.00
29.00
29.00
19.00
19.00
7.00
7.00
17.00
17.00
25.00
25.00
10.00
10.00
18.00
18.00
0.00
0.00
50.00
50.00
31.00
31.00
47.00
47.00
26.00
26.00
58.00
58.00
36.00
36.00
43.00
43.00
25.00
25.00
49.00
49.00
57.00
57.00
45.00
45.00
30.00
30.00
25.00
25.00
49.00
49.00
57.00
57.00
45.00
45.00
30.00
30.00
30.00
30.00
56.00
56.00
6.00
6.00
6.00
6.00
7.00
7.00
6.00
6.00
8.00
8.00
3.00
3.00
4.00
4.00
8.00
8.00
9.00
9.00
4.00
4.00
10.00
10.00
3.00
3.00
2.00
2.00
9.00
9.00
4.00
4.00
10.00
10.00
3.00
3.00
2.00
2.00
11.00
11.00
7.00
7.00
2.00
2.00
2.00
2.00
3.00
3.00
2.00
2.00
3.00
3.00
1.00
1.00
2.00
2.00
3.00
3.00
3.00
3.00
2.00
2.00
4.00
4.00
1.00
1.00
1.00
1.00
3.00
3.00
2.00
2.00
4.00
4.00
1.00
1.00
1.00
1.00
4.00
4.00
3.00
3.00
0.00
0.00
38.00
38.00
35.00
35.00
53.00
53.00
0.00
0.00
11.00
11.00
5.00
5.00
49.00
49.00
9.00
9.00
27.00
27.00
52.00
52.00
44.00
44.00
57.00
57.00
9.00
9.00
27.00
27.00
52.00
52.00
44.00
44.00
57.00
57.00
4.00
4.00
51.00
51.00
23981.00
23981.00
35689.00
35689.00
48861.00
48861.00
67819.00
67819.00
86489.00
86489.00
93666.00
93666.00
117064.00
117064.00
126689.00
126689.00
131107.00
131107.00
131674.00
131674.00
131845.00
131845.00
149539.00
149539.00
150979.00
150979.00
131107.00
131107.00
131674.00
131674.00
131845.00
131845.00
149539.00
149539.00
150979.00
150979.00
166578.00
166578.00
186917.00
186917.00
0.00
0.00
17438.00
17438.00
45095.00
45095.00
46073.00
46073.00
5160.00
5160.00
75491.00
75491.00
27365.00
27365.00
56629.00
56629.00
15909.00
15909.00
24567.00
24567.00
10672.00
10672.00
60344.00
60344.00
77457.00
77457.00
15909.00
15909.00
24567.00
24567.00
10672.00
10672.00
60344.00
60344.00
77457.00
77457.00
81004.00
81004.00
7011.00
7011.00
24.00
24.00
26.00
26.00
30.00
30.00
25.00
25.00
31.00
31.00
13.00
13.00
16.00
16.00
34.00
34.00
39.00
39.00
16.00
16.00
40.00
40.00
11.00
11.00
8.00
8.00
39.00
39.00
16.00
16.00
40.00
40.00
11.00
11.00
8.00
8.00
45.00
45.00
29.00
29.00
4.00
4.00
1.00
1.00
6.00
6.00
1.00
1.00
2.00
2.00
4.00
4.00
1.00
1.00
1.00
1.00
2.00
2.00
2.00
2.00
5.00
5.00
3.00
3.00
1.00
1.00
2.00
2.00
2.00
2.00
5.00
5.00
3.00
3.00
1.00
1.00
4.00
4.00
1.00
1.00
1648.00
1648.00
1680.00
1680.00
1716.00
1716.00
1768.00
1768.00
1819.00
1819.00
1839.00
1839.00
1903.00
1903.00
1929.00
1929.00
1941.00
1941.00
1943.00
1943.00
1943.00
1943.00
1992.00
1992.00
1996.00
1996.00
1941.00
1941.00
1943.00
1943.00
1943.00
1943.00
1992.00
1992.00
1996.00
1996.00
2038.00
2038.00
2094.00
2094.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:1287"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_357
#AT_START_358
at_fn_group_banner 358 'evaluate.at:1572' \
"expressions - datediff" " " 57
at_xfail=no
(
$as_echo "358. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,10,1648), date.mdy(6,30,1680), 'years').
DEBUG EVALUATE /datediff(date.mdy(6,10,1648), date.mdy(6,30,1680), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,30,1680), date.mdy(7,24,1716), 'years').
DEBUG EVALUATE /datediff(date.mdy(6,30,1680), date.mdy(7,24,1716), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(7,24,1716), date.mdy(6,19,1768), 'years').
DEBUG EVALUATE /datediff(date.mdy(7,24,1716), date.mdy(6,19,1768), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,19,1768), date.mdy(8,2,1819), 'years').
DEBUG EVALUATE /datediff(date.mdy(6,19,1768), date.mdy(8,2,1819), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(8,2,1819), date.mdy(3,27,1839), 'years').
DEBUG EVALUATE /datediff(date.mdy(8,2,1819), date.mdy(3,27,1839), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,27,1839), date.mdy(4,19,1903), 'years').
DEBUG EVALUATE /datediff(date.mdy(3,27,1839), date.mdy(4,19,1903), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,1903), date.mdy(8,25,1929), 'years').
DEBUG EVALUATE /datediff(date.mdy(4,19,1903), date.mdy(8,25,1929), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(8,25,1929), date.mdy(9,29,1941), 'years').
DEBUG EVALUATE /datediff(date.mdy(8,25,1929), date.mdy(9,29,1941), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(9,29,1941), date.mdy(4,19,1943), 'years').
DEBUG EVALUATE /datediff(date.mdy(9,29,1941), date.mdy(4,19,1943), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,1943), date.mdy(10,7,1943), 'years').
DEBUG EVALUATE /datediff(date.mdy(4,19,1943), date.mdy(10,7,1943), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,7,1943), date.mdy(3,17,1992), 'years').
DEBUG EVALUATE /datediff(date.mdy(10,7,1943), date.mdy(3,17,1992), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,17,1992), date.mdy(2,25,1996), 'years').
DEBUG EVALUATE /datediff(date.mdy(3,17,1992), date.mdy(2,25,1996), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(9,29,1941), date.mdy(2,25,1996), 'years').
DEBUG EVALUATE /datediff(date.mdy(9,29,1941), date.mdy(2,25,1996), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(9,29,1941), date.mdy(4,19,43), 'years').
DEBUG EVALUATE /datediff(date.mdy(9,29,1941), date.mdy(4,19,43), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,43), date.mdy(10,7,43), 'years').
DEBUG EVALUATE /datediff(date.mdy(4,19,43), date.mdy(10,7,43), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,7,43), date.mdy(3,17,92), 'years').
DEBUG EVALUATE /datediff(date.mdy(10,7,43), date.mdy(3,17,92), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,17,92), date.mdy(2,25,96), 'years').
DEBUG EVALUATE /datediff(date.mdy(3,17,92), date.mdy(2,25,96), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,25,96), date.mdy(11,10,2038), 'years').
DEBUG EVALUATE /datediff(date.mdy(2,25,96), date.mdy(11,10,2038), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(11,10,2038), date.mdy(7,18,2094), 'years').
DEBUG EVALUATE /datediff(date.mdy(11,10,2038), date.mdy(7,18,2094), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1900), date.mdy(2,29,1904), 'years').
DEBUG EVALUATE /datediff(date.mdy(2,29,1900), date.mdy(2,29,1904), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1904), date.mdy(2,29,1908), 'years').
DEBUG EVALUATE /datediff(date.mdy(2,29,1904), date.mdy(2,29,1908), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1900), date.mdy(2,28,1903), 'years').
DEBUG EVALUATE /datediff(date.mdy(2,29,1900), date.mdy(2,28,1903), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,10,1648), date.mdy(6,30,1680), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(6,10,1648), date.mdy(6,30,1680), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,30,1680), date.mdy(7,24,1716), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(6,30,1680), date.mdy(7,24,1716), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(7,24,1716), date.mdy(6,19,1768), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(7,24,1716), date.mdy(6,19,1768), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,19,1768), date.mdy(8,2,1819), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(6,19,1768), date.mdy(8,2,1819), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(8,2,1819), date.mdy(3,27,1839), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(8,2,1819), date.mdy(3,27,1839), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,27,1839), date.mdy(4,19,1903), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(3,27,1839), date.mdy(4,19,1903), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,1903), date.mdy(8,25,1929), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(4,19,1903), date.mdy(8,25,1929), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(8,25,1929), date.mdy(9,29,1941), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(8,25,1929), date.mdy(9,29,1941), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(9,29,1941), date.mdy(4,19,1943), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(9,29,1941), date.mdy(4,19,1943), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,1943), date.mdy(10,7,1943), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(4,19,1943), date.mdy(10,7,1943), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,7,1943), date.mdy(3,17,1992), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(10,7,1943), date.mdy(3,17,1992), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,17,1992), date.mdy(2,25,1996), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(3,17,1992), date.mdy(2,25,1996), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(9,29,1941), date.mdy(2,25,1996), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(9,29,1941), date.mdy(2,25,1996), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(9,29,1941), date.mdy(4,19,43), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(9,29,1941), date.mdy(4,19,43), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,43), date.mdy(10,7,43), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(4,19,43), date.mdy(10,7,43), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,7,43), date.mdy(3,17,92), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(10,7,43), date.mdy(3,17,92), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,17,92), date.mdy(2,25,96), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(3,17,92), date.mdy(2,25,96), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,25,96), date.mdy(11,10,2038), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(2,25,96), date.mdy(11,10,2038), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(11,10,2038), date.mdy(7,18,2094), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(11,10,2038), date.mdy(7,18,2094), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1900), date.mdy(2,29,1904), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(2,29,1900), date.mdy(2,29,1904), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1904), date.mdy(2,29,1908), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(2,29,1904), date.mdy(2,29,1908), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1900), date.mdy(2,28,1903), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(2,29,1900), date.mdy(2,28,1903), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,10,1648), date.mdy(6,30,1680), 'months').
DEBUG EVALUATE /datediff(date.mdy(6,10,1648), date.mdy(6,30,1680), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,30,1680), date.mdy(7,24,1716), 'months').
DEBUG EVALUATE /datediff(date.mdy(6,30,1680), date.mdy(7,24,1716), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(7,24,1716), date.mdy(6,19,1768), 'months').
DEBUG EVALUATE /datediff(date.mdy(7,24,1716), date.mdy(6,19,1768), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,19,1768), date.mdy(8,2,1819), 'months').
DEBUG EVALUATE /datediff(date.mdy(6,19,1768), date.mdy(8,2,1819), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(8,2,1819), date.mdy(3,27,1839), 'months').
DEBUG EVALUATE /datediff(date.mdy(8,2,1819), date.mdy(3,27,1839), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,27,1839), date.mdy(4,19,1903), 'months').
DEBUG EVALUATE /datediff(date.mdy(3,27,1839), date.mdy(4,19,1903), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,1903), date.mdy(8,25,1929), 'months').
DEBUG EVALUATE /datediff(date.mdy(4,19,1903), date.mdy(8,25,1929), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(8,25,1929), date.mdy(9,29,1941), 'months').
DEBUG EVALUATE /datediff(date.mdy(8,25,1929), date.mdy(9,29,1941), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(9,29,1941), date.mdy(4,19,1943), 'months').
DEBUG EVALUATE /datediff(date.mdy(9,29,1941), date.mdy(4,19,1943), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,1943), date.mdy(10,7,1943), 'months').
DEBUG EVALUATE /datediff(date.mdy(4,19,1943), date.mdy(10,7,1943), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,7,1943), date.mdy(3,17,1992), 'months').
DEBUG EVALUATE /datediff(date.mdy(10,7,1943), date.mdy(3,17,1992), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,17,1992), date.mdy(2,25,1996), 'months').
DEBUG EVALUATE /datediff(date.mdy(3,17,1992), date.mdy(2,25,1996), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(9,29,1941), date.mdy(2,25,1996), 'months').
DEBUG EVALUATE /datediff(date.mdy(9,29,1941), date.mdy(2,25,1996), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(9,29,1941), date.mdy(4,19,43), 'months').
DEBUG EVALUATE /datediff(date.mdy(9,29,1941), date.mdy(4,19,43), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,43), date.mdy(10,7,43), 'months').
DEBUG EVALUATE /datediff(date.mdy(4,19,43), date.mdy(10,7,43), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,7,43), date.mdy(3,17,92), 'months').
DEBUG EVALUATE /datediff(date.mdy(10,7,43), date.mdy(3,17,92), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,17,92), date.mdy(2,25,96), 'months').
DEBUG EVALUATE /datediff(date.mdy(3,17,92), date.mdy(2,25,96), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,25,96), date.mdy(11,10,2038), 'months').
DEBUG EVALUATE /datediff(date.mdy(2,25,96), date.mdy(11,10,2038), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(11,10,2038), date.mdy(7,18,2094), 'months').
DEBUG EVALUATE /datediff(date.mdy(11,10,2038), date.mdy(7,18,2094), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1900), date.mdy(2,29,1904), 'months').
DEBUG EVALUATE /datediff(date.mdy(2,29,1900), date.mdy(2,29,1904), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1904), date.mdy(2,29,1908), 'months').
DEBUG EVALUATE /datediff(date.mdy(2,29,1904), date.mdy(2,29,1908), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1900), date.mdy(2,28,1903), 'months').
DEBUG EVALUATE /datediff(date.mdy(2,29,1900), date.mdy(2,28,1903), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,10,1648), date.mdy(6,30,1680), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(6,10,1648), date.mdy(6,30,1680), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,30,1680), date.mdy(7,24,1716), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(6,30,1680), date.mdy(7,24,1716), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(7,24,1716), date.mdy(6,19,1768), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(7,24,1716), date.mdy(6,19,1768), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,19,1768), date.mdy(8,2,1819), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(6,19,1768), date.mdy(8,2,1819), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(8,2,1819), date.mdy(3,27,1839), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(8,2,1819), date.mdy(3,27,1839), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,27,1839), date.mdy(4,19,1903), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(3,27,1839), date.mdy(4,19,1903), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,1903), date.mdy(8,25,1929), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(4,19,1903), date.mdy(8,25,1929), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(8,25,1929), date.mdy(9,29,1941), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(8,25,1929), date.mdy(9,29,1941), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(9,29,1941), date.mdy(4,19,1943), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(9,29,1941), date.mdy(4,19,1943), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,1943), date.mdy(10,7,1943), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(4,19,1943), date.mdy(10,7,1943), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,7,1943), date.mdy(3,17,1992), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(10,7,1943), date.mdy(3,17,1992), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,17,1992), date.mdy(2,25,1996), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(3,17,1992), date.mdy(2,25,1996), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(9,29,1941), date.mdy(2,25,1996), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(9,29,1941), date.mdy(2,25,1996), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(9,29,1941), date.mdy(4,19,43), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(9,29,1941), date.mdy(4,19,43), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,43), date.mdy(10,7,43), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(4,19,43), date.mdy(10,7,43), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,7,43), date.mdy(3,17,92), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(10,7,43), date.mdy(3,17,92), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,17,92), date.mdy(2,25,96), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(3,17,92), date.mdy(2,25,96), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,25,96), date.mdy(11,10,2038), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(2,25,96), date.mdy(11,10,2038), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(11,10,2038), date.mdy(7,18,2094), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(11,10,2038), date.mdy(7,18,2094), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1900), date.mdy(2,29,1904), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(2,29,1900), date.mdy(2,29,1904), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1904), date.mdy(2,29,1908), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(2,29,1904), date.mdy(2,29,1908), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1900), date.mdy(2,28,1903), 'weeks').
DEBUG EVALUATE /datediff(date.mdy(2,29,1900), date.mdy(2,28,1903), 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,10,1648), date.mdy(6,30,1680), 'days').
DEBUG EVALUATE /datediff(date.mdy(6,10,1648), date.mdy(6,30,1680), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,30,1680), date.mdy(7,24,1716), 'days').
DEBUG EVALUATE /datediff(date.mdy(6,30,1680), date.mdy(7,24,1716), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(7,24,1716), date.mdy(6,19,1768), 'days').
DEBUG EVALUATE /datediff(date.mdy(7,24,1716), date.mdy(6,19,1768), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,19,1768), date.mdy(8,2,1819), 'days').
DEBUG EVALUATE /datediff(date.mdy(6,19,1768), date.mdy(8,2,1819), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(8,2,1819), date.mdy(3,27,1839), 'days').
DEBUG EVALUATE /datediff(date.mdy(8,2,1819), date.mdy(3,27,1839), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,27,1839), date.mdy(4,19,1903), 'days').
DEBUG EVALUATE /datediff(date.mdy(3,27,1839), date.mdy(4,19,1903), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,1903), date.mdy(8,25,1929), 'days').
DEBUG EVALUATE /datediff(date.mdy(4,19,1903), date.mdy(8,25,1929), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(8,25,1929), date.mdy(9,29,1941), 'days').
DEBUG EVALUATE /datediff(date.mdy(8,25,1929), date.mdy(9,29,1941), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(9,29,1941), date.mdy(4,19,1943), 'days').
DEBUG EVALUATE /datediff(date.mdy(9,29,1941), date.mdy(4,19,1943), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,1943), date.mdy(10,7,1943), 'days').
DEBUG EVALUATE /datediff(date.mdy(4,19,1943), date.mdy(10,7,1943), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,7,1943), date.mdy(3,17,1992), 'days').
DEBUG EVALUATE /datediff(date.mdy(10,7,1943), date.mdy(3,17,1992), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,17,1992), date.mdy(2,25,1996), 'days').
DEBUG EVALUATE /datediff(date.mdy(3,17,1992), date.mdy(2,25,1996), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(9,29,1941), date.mdy(2,25,1996), 'days').
DEBUG EVALUATE /datediff(date.mdy(9,29,1941), date.mdy(2,25,1996), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(9,29,1941), date.mdy(4,19,43), 'days').
DEBUG EVALUATE /datediff(date.mdy(9,29,1941), date.mdy(4,19,43), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,43), date.mdy(10,7,43), 'days').
DEBUG EVALUATE /datediff(date.mdy(4,19,43), date.mdy(10,7,43), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,7,43), date.mdy(3,17,92), 'days').
DEBUG EVALUATE /datediff(date.mdy(10,7,43), date.mdy(3,17,92), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,17,92), date.mdy(2,25,96), 'days').
DEBUG EVALUATE /datediff(date.mdy(3,17,92), date.mdy(2,25,96), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,25,96), date.mdy(11,10,2038), 'days').
DEBUG EVALUATE /datediff(date.mdy(2,25,96), date.mdy(11,10,2038), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(11,10,2038), date.mdy(7,18,2094), 'days').
DEBUG EVALUATE /datediff(date.mdy(11,10,2038), date.mdy(7,18,2094), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1900), date.mdy(2,29,1904), 'days').
DEBUG EVALUATE /datediff(date.mdy(2,29,1900), date.mdy(2,29,1904), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1904), date.mdy(2,29,1908), 'days').
DEBUG EVALUATE /datediff(date.mdy(2,29,1904), date.mdy(2,29,1908), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1900), date.mdy(2,28,1903), 'days').
DEBUG EVALUATE /datediff(date.mdy(2,29,1900), date.mdy(2,28,1903), 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,30,1680), date.mdy(6,10,1648), 'years').
DEBUG EVALUATE /datediff(date.mdy(6,30,1680), date.mdy(6,10,1648), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(7,24,1716), date.mdy(6,30,1680), 'years').
DEBUG EVALUATE /datediff(date.mdy(7,24,1716), date.mdy(6,30,1680), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,19,1768), date.mdy(7,24,1716), 'years').
DEBUG EVALUATE /datediff(date.mdy(6,19,1768), date.mdy(7,24,1716), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(8,2,1819), date.mdy(6,19,1768), 'years').
DEBUG EVALUATE /datediff(date.mdy(8,2,1819), date.mdy(6,19,1768), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,27,1839), date.mdy(8,2,1819), 'years').
DEBUG EVALUATE /datediff(date.mdy(3,27,1839), date.mdy(8,2,1819), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,1903), date.mdy(3,27,1839), 'years').
DEBUG EVALUATE /datediff(date.mdy(4,19,1903), date.mdy(3,27,1839), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(8,25,1929), date.mdy(4,19,1903), 'years').
DEBUG EVALUATE /datediff(date.mdy(8,25,1929), date.mdy(4,19,1903), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(9,29,1941), date.mdy(8,25,1929), 'years').
DEBUG EVALUATE /datediff(date.mdy(9,29,1941), date.mdy(8,25,1929), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,1943), date.mdy(9,29,1941), 'years').
DEBUG EVALUATE /datediff(date.mdy(4,19,1943), date.mdy(9,29,1941), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,7,1943), date.mdy(4,19,1943), 'years').
DEBUG EVALUATE /datediff(date.mdy(10,7,1943), date.mdy(4,19,1943), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,17,1992), date.mdy(10,7,1943), 'years').
DEBUG EVALUATE /datediff(date.mdy(3,17,1992), date.mdy(10,7,1943), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,25,1996), date.mdy(3,17,1992), 'years').
DEBUG EVALUATE /datediff(date.mdy(2,25,1996), date.mdy(3,17,1992), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,25,1996), date.mdy(9,29,1941), 'years').
DEBUG EVALUATE /datediff(date.mdy(2,25,1996), date.mdy(9,29,1941), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,43), date.mdy(9,29,1941), 'years').
DEBUG EVALUATE /datediff(date.mdy(4,19,43), date.mdy(9,29,1941), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,7,43), date.mdy(4,19,43), 'years').
DEBUG EVALUATE /datediff(date.mdy(10,7,43), date.mdy(4,19,43), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,17,92), date.mdy(10,7,43), 'years').
DEBUG EVALUATE /datediff(date.mdy(3,17,92), date.mdy(10,7,43), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,25,96), date.mdy(3,17,92), 'years').
DEBUG EVALUATE /datediff(date.mdy(2,25,96), date.mdy(3,17,92), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(11,10,2038), date.mdy(2,25,96), 'years').
DEBUG EVALUATE /datediff(date.mdy(11,10,2038), date.mdy(2,25,96), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(7,18,2094), date.mdy(11,10,2038), 'years').
DEBUG EVALUATE /datediff(date.mdy(7,18,2094), date.mdy(11,10,2038), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1904), date.mdy(2,29,1900), 'years').
DEBUG EVALUATE /datediff(date.mdy(2,29,1904), date.mdy(2,29,1900), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1908), date.mdy(2,29,1904), 'years').
DEBUG EVALUATE /datediff(date.mdy(2,29,1908), date.mdy(2,29,1904), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,28,1903), date.mdy(2,29,1900), 'years').
DEBUG EVALUATE /datediff(date.mdy(2,28,1903), date.mdy(2,29,1900), 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,30,1680), date.mdy(6,10,1648), 'months').
DEBUG EVALUATE /datediff(date.mdy(6,30,1680), date.mdy(6,10,1648), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(7,24,1716), date.mdy(6,30,1680), 'months').
DEBUG EVALUATE /datediff(date.mdy(7,24,1716), date.mdy(6,30,1680), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,19,1768), date.mdy(7,24,1716), 'months').
DEBUG EVALUATE /datediff(date.mdy(6,19,1768), date.mdy(7,24,1716), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(8,2,1819), date.mdy(6,19,1768), 'months').
DEBUG EVALUATE /datediff(date.mdy(8,2,1819), date.mdy(6,19,1768), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,27,1839), date.mdy(8,2,1819), 'months').
DEBUG EVALUATE /datediff(date.mdy(3,27,1839), date.mdy(8,2,1819), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,1903), date.mdy(3,27,1839), 'months').
DEBUG EVALUATE /datediff(date.mdy(4,19,1903), date.mdy(3,27,1839), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(8,25,1929), date.mdy(4,19,1903), 'months').
DEBUG EVALUATE /datediff(date.mdy(8,25,1929), date.mdy(4,19,1903), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(9,29,1941), date.mdy(8,25,1929), 'months').
DEBUG EVALUATE /datediff(date.mdy(9,29,1941), date.mdy(8,25,1929), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,1943), date.mdy(9,29,1941), 'months').
DEBUG EVALUATE /datediff(date.mdy(4,19,1943), date.mdy(9,29,1941), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,7,1943), date.mdy(4,19,1943), 'months').
DEBUG EVALUATE /datediff(date.mdy(10,7,1943), date.mdy(4,19,1943), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,17,1992), date.mdy(10,7,1943), 'months').
DEBUG EVALUATE /datediff(date.mdy(3,17,1992), date.mdy(10,7,1943), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,25,1996), date.mdy(3,17,1992), 'months').
DEBUG EVALUATE /datediff(date.mdy(2,25,1996), date.mdy(3,17,1992), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,25,1996), date.mdy(9,29,1941), 'months').
DEBUG EVALUATE /datediff(date.mdy(2,25,1996), date.mdy(9,29,1941), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,43), date.mdy(9,29,1941), 'months').
DEBUG EVALUATE /datediff(date.mdy(4,19,43), date.mdy(9,29,1941), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,7,43), date.mdy(4,19,43), 'months').
DEBUG EVALUATE /datediff(date.mdy(10,7,43), date.mdy(4,19,43), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,17,92), date.mdy(10,7,43), 'months').
DEBUG EVALUATE /datediff(date.mdy(3,17,92), date.mdy(10,7,43), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,25,96), date.mdy(3,17,92), 'months').
DEBUG EVALUATE /datediff(date.mdy(2,25,96), date.mdy(3,17,92), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(11,10,2038), date.mdy(2,25,96), 'months').
DEBUG EVALUATE /datediff(date.mdy(11,10,2038), date.mdy(2,25,96), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(7,18,2094), date.mdy(11,10,2038), 'months').
DEBUG EVALUATE /datediff(date.mdy(7,18,2094), date.mdy(11,10,2038), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1904), date.mdy(2,29,1900), 'months').
DEBUG EVALUATE /datediff(date.mdy(2,29,1904), date.mdy(2,29,1900), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1908), date.mdy(2,29,1904), 'months').
DEBUG EVALUATE /datediff(date.mdy(2,29,1908), date.mdy(2,29,1904), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,28,1903), date.mdy(2,29,1900), 'months').
DEBUG EVALUATE /datediff(date.mdy(2,28,1903), date.mdy(2,29,1900), 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,30,1680), date.mdy(6,10,1648), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(6,30,1680), date.mdy(6,10,1648), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(7,24,1716), date.mdy(6,30,1680), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(7,24,1716), date.mdy(6,30,1680), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(6,19,1768), date.mdy(7,24,1716), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(6,19,1768), date.mdy(7,24,1716), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(8,2,1819), date.mdy(6,19,1768), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(8,2,1819), date.mdy(6,19,1768), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,27,1839), date.mdy(8,2,1819), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(3,27,1839), date.mdy(8,2,1819), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,1903), date.mdy(3,27,1839), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(4,19,1903), date.mdy(3,27,1839), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(8,25,1929), date.mdy(4,19,1903), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(8,25,1929), date.mdy(4,19,1903), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(9,29,1941), date.mdy(8,25,1929), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(9,29,1941), date.mdy(8,25,1929), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,1943), date.mdy(9,29,1941), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(4,19,1943), date.mdy(9,29,1941), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,7,1943), date.mdy(4,19,1943), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(10,7,1943), date.mdy(4,19,1943), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,17,1992), date.mdy(10,7,1943), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(3,17,1992), date.mdy(10,7,1943), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,25,1996), date.mdy(3,17,1992), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(2,25,1996), date.mdy(3,17,1992), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,25,1996), date.mdy(9,29,1941), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(2,25,1996), date.mdy(9,29,1941), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(4,19,43), date.mdy(9,29,1941), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(4,19,43), date.mdy(9,29,1941), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,7,43), date.mdy(4,19,43), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(10,7,43), date.mdy(4,19,43), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(3,17,92), date.mdy(10,7,43), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(3,17,92), date.mdy(10,7,43), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,25,96), date.mdy(3,17,92), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(2,25,96), date.mdy(3,17,92), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(11,10,2038), date.mdy(2,25,96), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(11,10,2038), date.mdy(2,25,96), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(7,18,2094), date.mdy(11,10,2038), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(7,18,2094), date.mdy(11,10,2038), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1904), date.mdy(2,29,1900), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(2,29,1904), date.mdy(2,29,1900), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,29,1908), date.mdy(2,29,1904), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(2,29,1908), date.mdy(2,29,1904), 'quarters').
DEBUG EVALUATE NOOPT /datediff(date.mdy(2,28,1903), date.mdy(2,29,1900), 'quarters').
DEBUG EVALUATE /datediff(date.mdy(2,28,1903), date.mdy(2,29,1900), 'quarters').
DEBUG EVALUATE NOOPT / datediff(date.mdy(10,15,1910) + 234, date.mdy(10,10,1910) + 123, 'days').
DEBUG EVALUATE / datediff(date.mdy(10,15,1910) + 234, date.mdy(10,10,1910) + 123, 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,15,1910) + 123, date.mdy(10,10,1910) + 234, 'days').
DEBUG EVALUATE /datediff(date.mdy(10,15,1910) + 123, date.mdy(10,10,1910) + 234, 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,24,1910) + 234, date.mdy(10,10,1910) + 123, 'weeks').
DEBUG EVALUATE /datediff(date.mdy(10,24,1910) + 234, date.mdy(10,10,1910) + 123, 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,24,1910) + 123, date.mdy(10,10,1910) + 234, 'weeks').
DEBUG EVALUATE /datediff(date.mdy(10,24,1910) + 123, date.mdy(10,10,1910) + 234, 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,10,1910) + 234, date.mdy(5,10,1910) + 123, 'months').
DEBUG EVALUATE /datediff(date.mdy(10,10,1910) + 234, date.mdy(5,10,1910) + 123, 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,10,1910) + 123, date.mdy(5,10,1910) + 234, 'months').
DEBUG EVALUATE /datediff(date.mdy(10,10,1910) + 123, date.mdy(5,10,1910) + 234, 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(5,10,1919) + 234, date.mdy(5,10,1910) + 123, 'years').
DEBUG EVALUATE /datediff(date.mdy(5,10,1919) + 234, date.mdy(5,10,1910) + 123, 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(5,10,1919) + 123, date.mdy(5,10,1910) + 234, 'years').
DEBUG EVALUATE /datediff(date.mdy(5,10,1919) + 123, date.mdy(5,10,1910) + 234, 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,10,1910) + 123, date.mdy(10,15,1910) + 234, 'days').
DEBUG EVALUATE /datediff(date.mdy(10,10,1910) + 123, date.mdy(10,15,1910) + 234, 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,10,1910) + 234, date.mdy(10,15,1910) + 123, 'days').
DEBUG EVALUATE /datediff(date.mdy(10,10,1910) + 234, date.mdy(10,15,1910) + 123, 'days').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,10,1910) + 123, date.mdy(10,24,1910) + 234, 'weeks').
DEBUG EVALUATE /datediff(date.mdy(10,10,1910) + 123, date.mdy(10,24,1910) + 234, 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(10,10,1910) + 234, date.mdy(10,24,1910) + 123, 'weeks').
DEBUG EVALUATE /datediff(date.mdy(10,10,1910) + 234, date.mdy(10,24,1910) + 123, 'weeks').
DEBUG EVALUATE NOOPT /datediff(date.mdy(5,10,1910) + 123, date.mdy(10,10,1910) + 234, 'months').
DEBUG EVALUATE /datediff(date.mdy(5,10,1910) + 123, date.mdy(10,10,1910) + 234, 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(5,10,1910) + 234, date.mdy(10,10,1910) + 123, 'months').
DEBUG EVALUATE /datediff(date.mdy(5,10,1910) + 234, date.mdy(10,10,1910) + 123, 'months').
DEBUG EVALUATE NOOPT /datediff(date.mdy(5,10,1910) + 123, date.mdy(5,10,1919) + 234, 'years').
DEBUG EVALUATE /datediff(date.mdy(5,10,1910) + 123, date.mdy(5,10,1919) + 234, 'years').
DEBUG EVALUATE NOOPT /datediff(date.mdy(5,10,1910) + 234, date.mdy(5,10,1919) + 123, 'years').
DEBUG EVALUATE /datediff(date.mdy(5,10,1910) + 234, date.mdy(5,10,1919) + 123, 'years').
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:1572: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:1572"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:1572"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:1572: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:1572"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "-32.00
-32.00
-36.00
-36.00
-51.00
-51.00
-51.00
-51.00
-19.00
-19.00
-64.00
-64.00
-26.00
-26.00
-12.00
-12.00
-1.00
-1.00
0.00
0.00
-48.00
-48.00
-3.00
-3.00
-54.00
-54.00
-1.00
-1.00
0.00
0.00
-48.00
-48.00
-3.00
-3.00
-42.00
-42.00
-55.00
-55.00
-3.00
-3.00
-4.00
-4.00
-2.00
-2.00
-128.00
-128.00
-144.00
-144.00
-207.00
-207.00
-204.00
-204.00
-78.00
-78.00
-256.00
-256.00
-105.00
-105.00
-48.00
-48.00
-6.00
-6.00
-1.00
-1.00
-193.00
-193.00
-15.00
-15.00
-217.00
-217.00
-6.00
-6.00
-1.00
-1.00
-193.00
-193.00
-15.00
-15.00
-170.00
-170.00
-222.00
-222.00
-15.00
-15.00
-16.00
-16.00
-11.00
-11.00
-384.00
-384.00
-432.00
-432.00
-622.00
-622.00
-613.00
-613.00
-235.00
-235.00
-768.00
-768.00
-316.00
-316.00
-145.00
-145.00
-18.00
-18.00
-5.00
-5.00
-581.00
-581.00
-47.00
-47.00
-652.00
-652.00
-18.00
-18.00
-5.00
-5.00
-581.00
-581.00
-47.00
-47.00
-512.00
-512.00
-668.00
-668.00
-47.00
-47.00
-48.00
-48.00
-35.00
-35.00
-1672.00
-1672.00
-1881.00
-1881.00
-2708.00
-2708.00
-2667.00
-2667.00
-1025.00
-1025.00
-3342.00
-3342.00
-1375.00
-1375.00
-631.00
-631.00
-81.00
-81.00
-24.00
-24.00
-2527.00
-2527.00
-205.00
-205.00
-2838.00
-2838.00
-81.00
-81.00
-24.00
-24.00
-2527.00
-2527.00
-205.00
-205.00
-2228.00
-2228.00
-2905.00
-2905.00
-208.00
-208.00
-208.00
-208.00
-156.00
-156.00
-11708.00
-11708.00
-13172.00
-13172.00
-18958.00
-18958.00
-18670.00
-18670.00
-7177.00
-7177.00
-23398.00
-23398.00
-9625.00
-9625.00
-4418.00
-4418.00
-567.00
-567.00
-171.00
-171.00
-17694.00
-17694.00
-1440.00
-1440.00
-19872.00
-19872.00
-567.00
-567.00
-171.00
-171.00
-17694.00
-17694.00
-1440.00
-1440.00
-15599.00
-15599.00
-20339.00
-20339.00
-1460.00
-1460.00
-1461.00
-1461.00
-1094.00
-1094.00
32.00
32.00
36.00
36.00
51.00
51.00
51.00
51.00
19.00
19.00
64.00
64.00
26.00
26.00
12.00
12.00
1.00
1.00
0.00
0.00
48.00
48.00
3.00
3.00
54.00
54.00
1.00
1.00
0.00
0.00
48.00
48.00
3.00
3.00
42.00
42.00
55.00
55.00
3.00
3.00
4.00
4.00
2.00
2.00
384.00
384.00
432.00
432.00
622.00
622.00
613.00
613.00
235.00
235.00
768.00
768.00
316.00
316.00
145.00
145.00
18.00
18.00
5.00
5.00
581.00
581.00
47.00
47.00
652.00
652.00
18.00
18.00
5.00
5.00
581.00
581.00
47.00
47.00
512.00
512.00
668.00
668.00
47.00
47.00
48.00
48.00
35.00
35.00
128.00
128.00
144.00
144.00
207.00
207.00
204.00
204.00
78.00
78.00
256.00
256.00
105.00
105.00
48.00
48.00
6.00
6.00
1.00
1.00
193.00
193.00
15.00
15.00
217.00
217.00
6.00
6.00
1.00
1.00
193.00
193.00
15.00
15.00
170.00
170.00
222.00
222.00
15.00
15.00
16.00
16.00
11.00
11.00
5.00
5.00
4.00
4.00
2.00
2.00
1.00
1.00
5.00
5.00
4.00
4.00
9.00
9.00
8.00
8.00
-5.00
-5.00
-4.00
-4.00
-2.00
-2.00
-1.00
-1.00
-5.00
-5.00
-4.00
-4.00
-9.00
-9.00
-8.00
-8.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:1572"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_358
#AT_START_359
at_fn_group_banner 359 'evaluate.at:1792' \
"expressions - datesum" " " 57
at_xfail=no
(
$as_echo "359. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT / ctime.days(datesum(date.mdy(1,31,1900), 1, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE / ctime.days(datesum(date.mdy(1,31,1900), 1, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 2, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 2, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 3, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 3, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 4, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 4, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 5.4, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 5.4, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 6, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 6, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 7, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 7, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 8, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 8, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 9, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 9, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 10, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 10, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 11, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 11, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 12, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 12, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 13.9, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 13.9, 'months') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 1, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 1, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 2, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 2, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 3.2, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 3.2, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 4, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 4, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 5, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 5, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 6, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 6, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 7, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 7, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 8, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 8, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 9, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 9, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 10, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 10, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 11, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 11, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 12, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 12, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1900), 13, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1900), 13, 'months', 'rollover') - date.mdy(1,1,1900)).
DEBUG EVALUATE NOOPT / ctime.days(datesum(date.mdy(1,31,1904), 1, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE / ctime.days(datesum(date.mdy(1,31,1904), 1, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 2.5, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 2.5, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 3, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 3, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 4.9, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 4.9, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 5.1, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 5.1, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 6, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 6, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 7, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 7, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 8, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 8, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 9, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 9, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 10, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 10, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 11, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 11, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 12, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 12, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 13, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 13, 'months') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 1, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 1, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 2, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 2, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 3, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 3, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 4, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 4, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 5, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 5, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 6, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 6, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 7, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 7, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 8, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 8, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 9, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 9, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 10, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 10, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 11, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 11, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 12, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 12, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(1,31,1904), 13, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(1,31,1904), 13, 'months', 'rollover') - date.mdy(1,1,1904)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(6,10,1648), 1, 'weeks') - date.mdy(6,10,1648)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(6,10,1648), 1, 'weeks') - date.mdy(6,10,1648)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(6,30,1680), 2.5, 'weeks') - date.mdy(6,30,1680)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(6,30,1680), 2.5, 'weeks') - date.mdy(6,30,1680)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(7,24,1716), -3, 'weeks') - date.mdy(7,24,1716)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(7,24,1716), -3, 'weeks') - date.mdy(7,24,1716)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(6,19,1768), 4, 'weeks') - date.mdy(6,19,1768)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(6,19,1768), 4, 'weeks') - date.mdy(6,19,1768)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(8,2,1819), 5, 'weeks') - date.mdy(8,2,1819)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(8,2,1819), 5, 'weeks') - date.mdy(8,2,1819)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(6,10,1648), 1, 'days') - date.mdy(6,10,1648)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(6,10,1648), 1, 'days') - date.mdy(6,10,1648)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(6,30,1680), 2.5, 'days') - date.mdy(6,30,1680)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(6,30,1680), 2.5, 'days') - date.mdy(6,30,1680)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(7,24,1716), -3, 'days') - date.mdy(7,24,1716)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(7,24,1716), -3, 'days') - date.mdy(7,24,1716)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(6,19,1768), 4, 'days') - date.mdy(6,19,1768)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(6,19,1768), 4, 'days') - date.mdy(6,19,1768)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(8,2,1819), 5, 'days') - date.mdy(8,2,1819)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(8,2,1819), 5, 'days') - date.mdy(8,2,1819)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(6,10,1648), 1, 'hours') - date.mdy(6,10,1648)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(6,10,1648), 1, 'hours') - date.mdy(6,10,1648)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(6,30,1680), 2.5, 'hours') - date.mdy(6,30,1680)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(6,30,1680), 2.5, 'hours') - date.mdy(6,30,1680)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(6,19,1768), -4, 'hours') - date.mdy(6,19,1768)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(6,19,1768), -4, 'hours') - date.mdy(6,19,1768)).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(8,2,1819), 5, 'hours') - date.mdy(8,2,1819)).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(8,2,1819), 5, 'hours') - date.mdy(8,2,1819)).
DEBUG EVALUATE NOOPT / ctime.days(datesum(date.mdy(8,2,1819) + time.hms(1,2,3), 5, 'days') - (date.mdy(8,2,1819) + time.hms(1,2,3))).
DEBUG EVALUATE / ctime.days(datesum(date.mdy(8,2,1819) + time.hms(1,2,3), 5, 'days') - (date.mdy(8,2,1819) + time.hms(1,2,3))).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(8,2,1819) + time.hms(1,2,3), 5, 'weeks') - (date.mdy(8,2,1819) + time.hms(1,2,3))).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(8,2,1819) + time.hms(1,2,3), 5, 'weeks') - (date.mdy(8,2,1819) + time.hms(1,2,3))).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(8,2,1819) + time.hms(1,2,3), 5, 'months') - (date.mdy(8,2,1819) + time.hms(1,2,3))).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(8,2,1819) + time.hms(1,2,3), 5, 'months') - (date.mdy(8,2,1819) + time.hms(1,2,3))).
DEBUG EVALUATE NOOPT /ctime.days(datesum(date.mdy(8,2,1819) + time.hms(1,2,3), 5, 'years') - (date.mdy(8,2,1819) + time.hms(1,2,3))).
DEBUG EVALUATE /ctime.days(datesum(date.mdy(8,2,1819) + time.hms(1,2,3), 5, 'years') - (date.mdy(8,2,1819) + time.hms(1,2,3))).
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:1792: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:1792"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:1792"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:1792: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:1792"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "58.00
58.00
89.00
89.00
119.00
119.00
150.00
150.00
180.00
180.00
211.00
211.00
242.00
242.00
272.00
272.00
303.00
303.00
333.00
333.00
364.00
364.00
395.00
395.00
423.00
423.00
61.00
61.00
89.00
89.00
120.00
120.00
150.00
150.00
181.00
181.00
211.00
211.00
242.00
242.00
273.00
273.00
303.00
303.00
334.00
334.00
364.00
364.00
395.00
395.00
426.00
426.00
59.00
59.00
90.00
90.00
120.00
120.00
151.00
151.00
181.00
181.00
212.00
212.00
243.00
243.00
273.00
273.00
304.00
304.00
334.00
334.00
365.00
365.00
396.00
396.00
424.00
424.00
61.00
61.00
90.00
90.00
121.00
121.00
151.00
151.00
182.00
182.00
212.00
212.00
243.00
243.00
274.00
274.00
304.00
304.00
335.00
335.00
365.00
365.00
396.00
396.00
427.00
427.00
7.00
7.00
17.50
17.50
-21.00
-21.00
28.00
28.00
35.00
35.00
1.00
1.00
2.50
2.50
-3.00
-3.00
4.00
4.00
5.00
5.00
0.04
0.04
0.10
0.10
-0.17
-0.17
0.21
0.21
5.00
5.00
35.00
35.00
153.00
153.00
1827.00
1827.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:1792"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_359
#AT_START_360
at_fn_group_banner 360 'evaluate.at:1871' \
"expressions - miscellaneous" " " 57
at_xfail=no
(
$as_echo "360. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >evaluate.sps <<'_ATEOF'
set mxwarn 1000.
set mxerr 1000.
set epoch 1940.
DEBUG EVALUATE NOOPT / 1000 * ncdf.beta(.868,10,20,150).
DEBUG EVALUATE / 1000 * ncdf.beta(.868,10,20,150).
DEBUG EVALUATE NOOPT /1000 * ncdf.beta(.9,10,10,120).
DEBUG EVALUATE /1000 * ncdf.beta(.9,10,10,120).
DEBUG EVALUATE NOOPT /1000 * ncdf.beta(.88,15,5,80).
DEBUG EVALUATE /1000 * ncdf.beta(.88,15,5,80).
DEBUG EVALUATE NOOPT /1000 * ncdf.beta(.85,20,10,110).
DEBUG EVALUATE /1000 * ncdf.beta(.85,20,10,110).
DEBUG EVALUATE NOOPT /1000 * ncdf.beta(.66,20,30,65).
DEBUG EVALUATE /1000 * ncdf.beta(.66,20,30,65).
DEBUG EVALUATE NOOPT /1000 * ncdf.beta(.72,20,50,130).
DEBUG EVALUATE /1000 * ncdf.beta(.72,20,50,130).
DEBUG EVALUATE NOOPT /1000 * ncdf.beta(.72,30,20,80).
DEBUG EVALUATE /1000 * ncdf.beta(.72,30,20,80).
DEBUG EVALUATE NOOPT /1000 * ncdf.beta(.8,30,40,130).
DEBUG EVALUATE /1000 * ncdf.beta(.8,30,40,130).
DEBUG EVALUATE NOOPT (X = 1.00)/ X.
DEBUG EVALUATE (X = 1.00)/ X.
DEBUG EVALUATE NOOPT /SYSMIS(1).
DEBUG EVALUATE /SYSMIS(1).
DEBUG EVALUATE NOOPT /SYSMIS($SYSMIS).
DEBUG EVALUATE /SYSMIS($SYSMIS).
DEBUG EVALUATE NOOPT /SYSMIS(1 + $SYSMIS).
DEBUG EVALUATE /SYSMIS(1 + $SYSMIS).
DEBUG EVALUATE NOOPT (X = 10.00)/ x + 0.
DEBUG EVALUATE (X = 10.00)/ x + 0.
DEBUG EVALUATE NOOPT (X = -3.00)/x - 0.
DEBUG EVALUATE (X = -3.00)/x - 0.
DEBUG EVALUATE NOOPT (X = 5.00)/0 + x.
DEBUG EVALUATE (X = 5.00)/0 + x.
DEBUG EVALUATE NOOPT (X = 10.00)/x * 1.
DEBUG EVALUATE (X = 10.00)/x * 1.
DEBUG EVALUATE NOOPT (X = -3.00)/1 * x.
DEBUG EVALUATE (X = -3.00)/1 * x.
DEBUG EVALUATE NOOPT (X = 5.00)/x / 1.
DEBUG EVALUATE (X = 5.00)/x / 1.
DEBUG EVALUATE NOOPT (X = 10.00)/0 * x.
DEBUG EVALUATE (X = 10.00)/0 * x.
DEBUG EVALUATE NOOPT (X = -3.00)/x * 0.
DEBUG EVALUATE (X = -3.00)/x * 0.
DEBUG EVALUATE NOOPT (X = 5.00)/0 / x.
DEBUG EVALUATE (X = 5.00)/0 / x.
DEBUG EVALUATE NOOPT (X = 5.00)/mod(0, x).
DEBUG EVALUATE (X = 5.00)/mod(0, x).
DEBUG EVALUATE NOOPT (X = 5.00)/x ** 1.
DEBUG EVALUATE (X = 5.00)/x ** 1.
DEBUG EVALUATE NOOPT (X = 5.00)/x ** 2.
DEBUG EVALUATE (X = 5.00)/x ** 2.
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:1871: pspp --testing-mode --error-file=- --no-output evaluate.sps"
at_fn_check_prepare_trace "evaluate.at:1871"
( $at_check_trace; pspp --testing-mode --error-file=- --no-output evaluate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:1871"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
# Use sed to transform "file:line.column:" into plain "file:line:",
# because column numbers change between opt and noopt versions.
{ set +x
$as_echo "$at_srcdir/evaluate.at:1871: sed 's/\\(evaluate.sps:[0-9]\\{1,\\}\\)\\.[0-9]\\{1,\\}:/\\1:/' stdout"
at_fn_check_prepare_trace "evaluate.at:1871"
( $at_check_trace; sed 's/\(evaluate.sps:[0-9]\{1,\}\)\.[0-9]\{1,\}:/\1:/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "937.66
937.66
730.68
730.68
160.43
160.43
186.75
186.75
655.94
655.94
979.69
979.69
116.24
116.24
993.04
993.04
1.00
1.00
false
false
true
true
true
true
10.00
10.00
-3.00
-3.00
5.00
5.00
10.00
10.00
-3.00
-3.00
5.00
5.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
5.00
5.00
25.00
25.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:1871"
$at_failed && at_fn_log_failure \
"evaluate.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_360
#AT_START_361
at_fn_group_banner 361 'evaluate.at:1905' \
"LAG function" " " 57
at_xfail=no
(
$as_echo "361. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >lag.sps <<'_ATEOF'
data list /W 1.
begin data.
1
2
3
4
5
end data.
compute X=lag(w,1).
compute Y=lag(x).
compute Z=lag(w,2).
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:1921: pspp -o pspp.csv lag.sps"
at_fn_check_prepare_trace "evaluate.at:1921"
( $at_check_trace; pspp -o pspp.csv lag.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:1921"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/evaluate.at:1922: cat pspp.csv"
at_fn_check_prepare_trace "evaluate.at:1922"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading 1 record from INLINE.
Variable,Record,Columns,Format
W,1,1- 1,F1.0
Table: Data List
W,X,Y,Z
1,. ,. ,.
2,1.00,. ,.
3,2.00,1.00,1.00
4,3.00,2.00,2.00
5,4.00,3.00,3.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:1922"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_361
#AT_START_362
at_fn_group_banner 362 'evaluate.at:1937' \
"LAG crash bug" " " 57
at_xfail=no
(
$as_echo "362. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >lag.sps <<'_ATEOF'
DATA LIST LIST /x.
BEGIN DATA
1
2
END DATA.
DO IF (x <> LAG(x) ).
ECHO 'hello'.
END IF.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:1951: pspp -o pspp.csv lag.sps"
at_fn_check_prepare_trace "evaluate.at:1951"
( $at_check_trace; pspp -o pspp.csv lag.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:1951"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/evaluate.at:1952: cat pspp.csv"
at_fn_check_prepare_trace "evaluate.at:1952"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
x,F8.0
hello
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:1952"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_362
#AT_START_363
at_fn_group_banner 363 'evaluate.at:1962' \
"UNIFORM function" " " 57
at_xfail=no
(
$as_echo "363. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >uniform.sps <<'_ATEOF'
set seed=10.
input program.
+ loop #i = 1 to 20.
+ do repeat response=R1.
+ compute response = uniform(10).
+ end repeat.
+ end case.
+ end loop.
+ end file.
end input program.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:1977: pspp -o pspp.csv uniform.sps"
at_fn_check_prepare_trace "evaluate.at:1977"
( $at_check_trace; pspp -o pspp.csv uniform.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:1977"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/evaluate.at:1978: cat pspp.csv"
at_fn_check_prepare_trace "evaluate.at:1978"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
R1
7.71
2.99
.21
4.95
6.34
4.43
7.49
8.32
4.99
5.83
2.25
.25
1.98
7.09
7.61
2.66
1.69
2.64
.88
1.50
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:1978"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_363
#AT_START_364
at_fn_group_banner 364 'evaluate.at:2004' \
"VALUELABEL function" " " 57
at_xfail=no
(
$as_echo "364. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >valuelabel.sps <<'_ATEOF'
DATA LIST notable /n 1 s 2(a).
VALUE LABELS /n 0 'Very dissatisfied'
1 'Dissatisfied'
1.5 'Slightly Peeved'
2 'Neutral'
3 'Satisfied'
4 'Very satisfied'.
VALUE LABELS /s 'a' 'Wouldn''t buy again'
'b' 'Unhappy'
'c' 'Bored'
'd' 'Satiated'
'e' 'Elated'.
STRING nlabel slabel(a10).
COMPUTE nlabel = VALUELABEL(n).
COMPUTE slabel = VALUELABEL(s).
LIST.
BEGIN DATA.
0a
1b
2c
3d
4e
5f
6g
END DATA.
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:2033: pspp -o pspp.csv valuelabel.sps"
at_fn_check_prepare_trace "evaluate.at:2033"
( $at_check_trace; pspp -o pspp.csv valuelabel.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:2033"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/evaluate.at:2034: cat pspp.csv"
at_fn_check_prepare_trace "evaluate.at:2034"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
n,s,nlabel,slabel
.,,,
0,a,Very dissa,Wouldn't b
1,b,Dissatisfi,Unhappy
2,c,Neutral ,Bored
3,d,Satisfied ,Satiated
4,e,Very satis,Elated
5,f,,
6,g,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:2034"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_364
#AT_START_365
at_fn_group_banner 365 'evaluate.at:2048' \
"variables in expressions" " " 57
at_xfail=no
(
$as_echo "365. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >variables.sps <<'_ATEOF'
DATA LIST NOTABLE/N1 TO N5 1-5.
MISSING VALUES N1 TO N5 (3 THRU 5, 1).
BEGIN DATA.
12345
6789
END DATA.
COMPUTE P1=N1.
COMPUTE P2=N2.
COMPUTE P3=N3.
COMPUTE P4=N4.
COMPUTE P5=N5.
COMPUTE MC=NMISS(N1 TO N5).
COMPUTE VC=NVALID(N1 TO N5).
COMPUTE S1=SYSMIS(N1).
COMPUTE S2=SYSMIS(N2).
COMPUTE S3=SYSMIS(N3).
COMPUTE S4=SYSMIS(N4).
COMPUTE S5=SYSMIS(N5).
COMPUTE M1=MISSING(N1).
COMPUTE M2=MISSING(N2).
COMPUTE M3=MISSING(N3).
COMPUTE M4=MISSING(N4).
COMPUTE M5=MISSING(N5).
COMPUTE V1=VALUE(N1).
COMPUTE V2=VALUE(N2).
COMPUTE V3=VALUE(N3).
COMPUTE V4=VALUE(N4).
COMPUTE V5=VALUE(N5).
FORMATS ALL (F1).
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:2088: pspp -o pspp.csv variables.sps"
at_fn_check_prepare_trace "evaluate.at:2088"
( $at_check_trace; pspp -o pspp.csv variables.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:2088"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/evaluate.at:2089: cat pspp.csv"
at_fn_check_prepare_trace "evaluate.at:2089"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
N1,N2,N3,N4,N5,P1,P2,P3,P4,P5,MC,VC,S1,S2,S3,S4,S5,M1,M2,M3,M4,M5,V1,V2,V3,V4,V5
1,2,3,4,5,.,2,.,.,.,4,1,0,0,0,0,0,1,0,1,1,1,1,2,3,4,5
6,7,8,9,.,6,7,8,9,.,1,4,0,0,0,0,1,0,0,0,0,1,6,7,8,9,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:2089"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_365
#AT_START_366
at_fn_group_banner 366 'evaluate.at:2097' \
"vectors in expressions" " " 57
at_xfail=no
(
$as_echo "366. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >vectors.sps <<'_ATEOF'
DATA LIST NOTABLE /N1 TO N5 1-5.
MISSING VALUES N1 TO N5 (3 THRU 5, 1).
BEGIN DATA.
12345
6789
END DATA.
VECTOR N=N1 TO N5.
VECTOR X(5).
LOOP I=1 TO 5.
COMPUTE X(I)=N(I) + 1.
END LOOP.
FORMATS ALL (F2).
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/evaluate.at:2116: pspp -o pspp.csv vectors.sps"
at_fn_check_prepare_trace "evaluate.at:2116"
( $at_check_trace; pspp -o pspp.csv vectors.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:2116"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/evaluate.at:2117: cat pspp.csv"
at_fn_check_prepare_trace "evaluate.at:2117"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
N1,N2,N3,N4,N5,X1,X2,X3,X4,X5,I
1,2,3,4,5,.,3,.,.,.,5
6,7,8,9,.,7,8,9,10,.,5
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/evaluate.at:2117"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_366
#AT_START_367
at_fn_group_banner 367 'parse.at:3' \
"parse expression with unknown variable crash" " " 58
at_xfail=no
(
$as_echo "367. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >parse.sps <<'_ATEOF'
INPUT PROGRAM.
LOOP c=1 to 10.
COMPUTE var1=NORMAL(100).
END CASE.
END LOOP.
END FILE.
END INPUT PROGRAM.
IF ( y > 0 ) .
COMPUTE x=y.
END IF.
_ATEOF
{ set +x
$as_echo "$at_srcdir/parse.at:18: pspp -O format=csv parse.sps"
at_fn_check_prepare_trace "parse.at:18"
( $at_check_trace; pspp -O format=csv parse.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "parse.sps:10: error: IF: Unknown identifier y.
parse.sps:11: error: Stopping syntax file processing here to avoid a cascade of dependent command failures.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/parse.at:18"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_367
#AT_START_368
at_fn_group_banner 368 'parse.at:25' \
"parse expression with invalid logical expression" "" 58
at_xfail=no
(
$as_echo "368. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >parse.sps <<'_ATEOF'
INPUT PROGRAM.
LOOP c=1 to 10.
COMPUTE var1=NORMAL(100).
END CASE.
END LOOP.
END FILE.
END INPUT PROGRAM.
SELECT IF 2.
_ATEOF
{ set +x
$as_echo "$at_srcdir/parse.at:37: pspp -O format=csv parse.sps"
at_fn_check_prepare_trace "parse.at:37"
( $at_check_trace; pspp -O format=csv parse.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"parse.sps:9: error: SELECT IF: A logical expression was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/parse.at:37"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_368
#AT_START_369
at_fn_group_banner 369 'command-name.at:3' \
"single words" " " 59
at_xfail=no
(
$as_echo "369. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/command-name.at:5: command-name-test DESCRIPTIVES , DESCRIPTIVESX DESCRIPTIVES descr Des DEX DE '' 'DESCRIPTIVES MORE' 'DESCRIPTIVES MORE'"
at_fn_check_prepare_trace "command-name.at:5"
( $at_check_trace; command-name-test DESCRIPTIVES , DESCRIPTIVESX DESCRIPTIVES descr Des DEX DE '' 'DESCRIPTIVES MORE' 'DESCRIPTIVES MORE'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "string=\"DESCRIPTIVESX\":
command=\"DESCRIPTIVES\" match=no
match: none, missing_words=0
string=\"DESCRIPTIVES\":
command=\"DESCRIPTIVES\" match=yes exact=yes missing_words=0
match: DESCRIPTIVES, missing_words=0
string=\"descr\":
command=\"DESCRIPTIVES\" match=yes exact=no missing_words=0
match: DESCRIPTIVES, missing_words=0
string=\"Des\":
command=\"DESCRIPTIVES\" match=yes exact=no missing_words=0
match: DESCRIPTIVES, missing_words=0
string=\"DEX\":
command=\"DESCRIPTIVES\" match=no
match: none, missing_words=0
string=\"DE\":
command=\"DESCRIPTIVES\" match=no
match: none, missing_words=0
string=\"\":
command=\"DESCRIPTIVES\" match=yes exact=yes missing_words=1
match: none, missing_words=1
string=\"DESCRIPTIVES MORE\":
command=\"DESCRIPTIVES\" match=yes exact=yes missing_words=-1
match: DESCRIPTIVES, missing_words=-1
string=\"DESCRIPTIVES MORE\":
command=\"DESCRIPTIVES\" match=yes exact=yes missing_words=-1
match: DESCRIPTIVES, missing_words=-1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/command-name.at:5"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_369
#AT_START_370
at_fn_group_banner 370 'command-name.at:45' \
"two words without prefix match" " " 59
at_xfail=no
(
$as_echo "370. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/command-name.at:47: command-name-test 'DO IF' 'DO REPEAT' , 'DO IF' 'DO REPEAT' 'DO REP' 'DO OTHER' 'D IF' 'DO I' DO"
at_fn_check_prepare_trace "command-name.at:47"
( $at_check_trace; command-name-test 'DO IF' 'DO REPEAT' , 'DO IF' 'DO REPEAT' 'DO REP' 'DO OTHER' 'D IF' 'DO I' DO
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "string=\"DO IF\":
command=\"DO IF\" match=yes exact=yes missing_words=0
command=\"DO REPEAT\" match=no
match: DO IF, missing_words=0
string=\"DO REPEAT\":
command=\"DO IF\" match=no
command=\"DO REPEAT\" match=yes exact=yes missing_words=0
match: DO REPEAT, missing_words=0
string=\"DO REP\":
command=\"DO IF\" match=no
command=\"DO REPEAT\" match=yes exact=no missing_words=0
match: DO REPEAT, missing_words=0
string=\"DO OTHER\":
command=\"DO IF\" match=no
command=\"DO REPEAT\" match=no
match: none, missing_words=0
string=\"D IF\":
command=\"DO IF\" match=no
command=\"DO REPEAT\" match=no
match: none, missing_words=0
string=\"DO I\":
command=\"DO IF\" match=no
command=\"DO REPEAT\" match=no
match: none, missing_words=0
string=\"DO\":
command=\"DO IF\" match=yes exact=yes missing_words=1
command=\"DO REPEAT\" match=yes exact=yes missing_words=1
match: none, missing_words=1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/command-name.at:47"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_370
#AT_START_371
at_fn_group_banner 371 'command-name.at:86' \
"two words with prefix match" " " 59
at_xfail=no
(
$as_echo "371. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/command-name.at:88: command-name-test GET 'GET DATA' , GET 'GET TYPE' 'GET DAT' 'GET DATA'"
at_fn_check_prepare_trace "command-name.at:88"
( $at_check_trace; command-name-test GET 'GET DATA' , GET 'GET TYPE' 'GET DAT' 'GET DATA'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "string=\"GET\":
command=\"GET\" match=yes exact=yes missing_words=0
command=\"GET DATA\" match=yes exact=yes missing_words=1
match: none, missing_words=1
string=\"GET TYPE\":
command=\"GET\" match=yes exact=yes missing_words=-1
command=\"GET DATA\" match=no
match: GET, missing_words=-1
string=\"GET DAT\":
command=\"GET\" match=yes exact=yes missing_words=-1
command=\"GET DATA\" match=yes exact=no missing_words=0
match: GET DATA, missing_words=0
string=\"GET DATA\":
command=\"GET\" match=yes exact=yes missing_words=-1
command=\"GET DATA\" match=yes exact=yes missing_words=0
match: GET DATA, missing_words=0
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/command-name.at:88"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_371
#AT_START_372
at_fn_group_banner 372 'command-name.at:112' \
"ambiguous single-word names" " " 59
at_xfail=no
(
$as_echo "372. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/command-name.at:114: command-name-test CASEPLOT CASESTOVARS , CAS Case CaseP CaseS"
at_fn_check_prepare_trace "command-name.at:114"
( $at_check_trace; command-name-test CASEPLOT CASESTOVARS , CAS Case CaseP CaseS
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "string=\"CAS\":
command=\"CASEPLOT\" match=yes exact=no missing_words=0
command=\"CASESTOVARS\" match=yes exact=no missing_words=0
match: none, missing_words=0
string=\"Case\":
command=\"CASEPLOT\" match=yes exact=no missing_words=0
command=\"CASESTOVARS\" match=yes exact=no missing_words=0
match: none, missing_words=0
string=\"CaseP\":
command=\"CASEPLOT\" match=yes exact=no missing_words=0
command=\"CASESTOVARS\" match=no
match: CASEPLOT, missing_words=0
string=\"CaseS\":
command=\"CASEPLOT\" match=no
command=\"CASESTOVARS\" match=yes exact=no missing_words=0
match: CASESTOVARS, missing_words=0
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/command-name.at:114"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_372
#AT_START_373
at_fn_group_banner 373 'command-name.at:138' \
"ambiguous two-word names" " " 59
at_xfail=no
(
$as_echo "373. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/command-name.at:140: command-name-test VARCOMP VARSTOCASES 'VARIABLE ATTRIBUTE' , VAR VARC VARS VARI 'VAR ATT'"
at_fn_check_prepare_trace "command-name.at:140"
( $at_check_trace; command-name-test VARCOMP VARSTOCASES 'VARIABLE ATTRIBUTE' , VAR VARC VARS VARI 'VAR ATT'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "string=\"VAR\":
command=\"VARCOMP\" match=yes exact=no missing_words=0
command=\"VARSTOCASES\" match=yes exact=no missing_words=0
command=\"VARIABLE ATTRIBUTE\" match=yes exact=no missing_words=1
match: none, missing_words=1
string=\"VARC\":
command=\"VARCOMP\" match=yes exact=no missing_words=0
command=\"VARSTOCASES\" match=no
command=\"VARIABLE ATTRIBUTE\" match=no
match: VARCOMP, missing_words=0
string=\"VARS\":
command=\"VARCOMP\" match=no
command=\"VARSTOCASES\" match=yes exact=no missing_words=0
command=\"VARIABLE ATTRIBUTE\" match=no
match: VARSTOCASES, missing_words=0
string=\"VARI\":
command=\"VARCOMP\" match=no
command=\"VARSTOCASES\" match=no
command=\"VARIABLE ATTRIBUTE\" match=yes exact=no missing_words=1
match: none, missing_words=1
string=\"VAR ATT\":
command=\"VARCOMP\" match=yes exact=no missing_words=-1
command=\"VARSTOCASES\" match=yes exact=no missing_words=-1
command=\"VARIABLE ATTRIBUTE\" match=yes exact=no missing_words=0
match: VARIABLE ATTRIBUTE, missing_words=0
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/command-name.at:140"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_373
#AT_START_374
at_fn_group_banner 374 'command-name.at:174' \
"numbers and punctuation" " " 59
at_xfail=no
(
$as_echo "374. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/command-name.at:176: command-name-test T-TEST 2SLS LIST , T-TEST 'T - Test' 2SLS '2 SLS' List"
at_fn_check_prepare_trace "command-name.at:176"
( $at_check_trace; command-name-test T-TEST 2SLS LIST , T-TEST 'T - Test' 2SLS '2 SLS' List
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "string=\"T-TEST\":
command=\"T-TEST\" match=yes exact=yes missing_words=0
command=\"2SLS\" match=no
command=\"LIST\" match=no
match: T-TEST, missing_words=0
string=\"T - Test\":
command=\"T-TEST\" match=yes exact=yes missing_words=0
command=\"2SLS\" match=no
command=\"LIST\" match=no
match: T-TEST, missing_words=0
string=\"2SLS\":
command=\"T-TEST\" match=no
command=\"2SLS\" match=yes exact=yes missing_words=0
command=\"LIST\" match=no
match: 2SLS, missing_words=0
string=\"2 SLS\":
command=\"T-TEST\" match=no
command=\"2SLS\" match=yes exact=yes missing_words=0
command=\"LIST\" match=no
match: 2SLS, missing_words=0
string=\"List\":
command=\"T-TEST\" match=no
command=\"2SLS\" match=no
command=\"LIST\" match=yes exact=yes missing_words=0
match: LIST, missing_words=0
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/command-name.at:176"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_374
#AT_START_375
at_fn_group_banner 375 'command-name.at:210' \
"off by more than one word" " " 59
at_xfail=no
(
$as_echo "375. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/command-name.at:212: command-name-test 'a b c' , a 'a b' 'a b c' 'a b c d' 'a b c d e'"
at_fn_check_prepare_trace "command-name.at:212"
( $at_check_trace; command-name-test 'a b c' , a 'a b' 'a b c' 'a b c d' 'a b c d e'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "string=\"a\":
command=\"a b c\" match=yes exact=yes missing_words=2
match: none, missing_words=1
string=\"a b\":
command=\"a b c\" match=yes exact=yes missing_words=1
match: none, missing_words=1
string=\"a b c\":
command=\"a b c\" match=yes exact=yes missing_words=0
match: a b c, missing_words=0
string=\"a b c d\":
command=\"a b c\" match=yes exact=yes missing_words=-1
match: a b c, missing_words=-1
string=\"a b c d e\":
command=\"a b c\" match=yes exact=yes missing_words=-2
match: a b c, missing_words=-2
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/command-name.at:212"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_375
#AT_START_376
at_fn_group_banner 376 'lexer.at:3' \
"lexer ignores initial #! line" " " 60
at_xfail=no
(
$as_echo "376. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >lexer.sps <<'_ATEOF'
#! /usr/local/bin/pspp
DATA LIST LIST NOTABLE /a.
BEGIN DATA.
1
2
END DATA.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/lexer.at:13: pspp -o pspp.csv lexer.sps"
at_fn_check_prepare_trace "lexer.at:13"
( $at_check_trace; pspp -o pspp.csv lexer.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/lexer.at:13"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/lexer.at:14: cat pspp.csv"
at_fn_check_prepare_trace "lexer.at:14"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
a
1.00
2.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/lexer.at:14"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_376
#AT_START_377
at_fn_group_banner 377 'lexer.at:22' \
"lexer properly reports scan errors" " " 60
at_xfail=no
(
$as_echo "377. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >lexer.sps <<'_ATEOF'
x'123'
x'1x'
u''
u'012345678'
u'd800'
u'110000'
'foo
'very long unterminated string that be ellipsized in its error message
1e .x
`
�
_ATEOF
{ set +x
$as_echo "$at_srcdir/lexer.at:36: pspp -O format=csv lexer.sps"
at_fn_check_prepare_trace "lexer.at:36"
( $at_check_trace; pspp -O format=csv lexer.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"lexer.sps:1.1-1.6: error: Syntax error at \`x'123'': String of hex digits has 3 characters, which is not a multiple of 2.\"
lexer.sps:2.1-2.5: error: Syntax error at \`x'1x'': \`x' is not a valid hex digit.
\"lexer.sps:3.1-3.3: error: Syntax error at \`u''': Unicode string contains 0 bytes, which is not in the valid range of 1 to 8 bytes.\"
\"lexer.sps:4.1-4.12: error: Syntax error at \`u'012345678'': Unicode string contains 9 bytes, which is not in the valid range of 1 to 8 bytes.\"
lexer.sps:5.1-5.7: error: Syntax error at \`u'd800'': U+D800 is not a valid Unicode code point.
lexer.sps:6.1-6.9: error: Syntax error at \`u'110000'': U+110000 is not a valid Unicode code point.
lexer.sps:7.1-7.4: error: Syntax error at \`'foo': Unterminated string constant.
lexer.sps:8.1-8.70: error: Syntax error at \`'very long unterminated string that be ellipsized in its err...': Unterminated string constant.
lexer.sps:9.1-9.2: error: Syntax error at \`1e': Missing exponent following \`1e'.
lexer.sps:9.4: error: Syntax error at \`.': Unexpected \`.' in middle of command.
lexer.sps:9: error: Unknown command \`x'.
lexer.sps:10.1: error: Syntax error at \`\`': Bad character \`\`' in input.
lexer.sps:11.1: error: Syntax error at \`�': Bad character U+FFFD in input.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/lexer.at:36"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_377
#AT_START_378
at_fn_group_banner 378 'q2c.at:3' \
"q2c enforces mandatory subcommands" " " 61
at_xfail=no
(
$as_echo "378. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >q2c.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /x *.
BEGIN DATA.
1
2
3
END DATA.
EXAMINE.
ONEWAY.
CROSSTABS.
_ATEOF
{ set +x
$as_echo "$at_srcdir/q2c.at:16: pspp -O format=csv q2c.sps"
at_fn_check_prepare_trace "q2c.at:16"
( $at_check_trace; pspp -O format=csv q2c.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "q2c.sps:8.8: error: EXAMINE: Syntax error at end of command: expecting variable name.
q2c.sps:9.7: error: ONEWAY: Syntax error at end of command: expecting variable name.
q2c.sps:10: error: CROSSTABS: Required subcommand TABLES was not specified.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/q2c.at:16"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_378
#AT_START_379
at_fn_group_banner 379 'scan.at:5' \
"identifiers" " " 62
at_xfail=no
(
$as_echo "379. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
a aB i5 $x @efg @@. #.# .x _z.
abcd. abcd.
QRSTUV./* end of line comment */
QrStUv./* end of line comment */
WXYZ. /* unterminated end of line comment
�. /* U+FFFD is not valid in an identifier
_ATEOF
cat >expout <<'_ATEOF'
ID "a"
SKIP
ID "aB"
SKIP
ID "i5"
SKIP
ID "$x"
SKIP
ID "@efg"
SKIP
ID "@@."
SKIP
ID "#.#"
SKIP
UNEXPECTED_DOT
ID "x"
SKIP
UNEXPECTED_CHAR 95
ID "z"
ENDCMD
SKIP
ID "abcd."
SKIP
ID "abcd"
ENDCMD
SKIP
ID "QRSTUV"
ENDCMD
SKIP
SKIP
ID "QrStUv"
ENDCMD
SKIP
SKIP
SKIP
ID "WXYZ"
ENDCMD
SKIP
SKIP
SKIP
UNEXPECTED_CHAR 65533
ENDCMD
SKIP
SKIP
SKIP
STOP
_ATEOF
{ set +x
$as_echo "$at_srcdir/scan.at:63: scan-test -i input"
at_fn_check_prepare_trace "scan.at:63"
( $at_check_trace; scan-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/scan.at:63"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_379
#AT_START_380
at_fn_group_banner 380 'scan.at:66' \
"reserved words" " " 62
at_xfail=no
(
$as_echo "380. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
and or not eq ge gt le lt ne all by to with
AND OR NOT EQ GE GT LE LT NE ALL BY TO WITH
andx orx notx eqx gex gtx lex ltx nex allx byx tox withx
and. with.
_ATEOF
cat >expout <<'_ATEOF'
AND
SKIP
OR
SKIP
NOT
SKIP
EQ
SKIP
GE
SKIP
GT
SKIP
LE
SKIP
LT
SKIP
NE
SKIP
ALL
SKIP
BY
SKIP
TO
SKIP
WITH
SKIP
AND
SKIP
OR
SKIP
NOT
SKIP
EQ
SKIP
GE
SKIP
GT
SKIP
LE
SKIP
LT
SKIP
NE
SKIP
ALL
SKIP
BY
SKIP
TO
SKIP
WITH
SKIP
ID "andx"
SKIP
ID "orx"
SKIP
ID "notx"
SKIP
ID "eqx"
SKIP
ID "gex"
SKIP
ID "gtx"
SKIP
ID "lex"
SKIP
ID "ltx"
SKIP
ID "nex"
SKIP
ID "allx"
SKIP
ID "byx"
SKIP
ID "tox"
SKIP
ID "withx"
SKIP
ID "and."
SKIP
WITH
ENDCMD
SKIP
STOP
_ATEOF
{ set +x
$as_echo "$at_srcdir/scan.at:160: scan-test -i input"
at_fn_check_prepare_trace "scan.at:160"
( $at_check_trace; scan-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/scan.at:160"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_380
#AT_START_381
at_fn_group_banner 381 'scan.at:163' \
"punctuation" " " 62
at_xfail=no
(
$as_echo "381. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
~ & | = >= > <= < ~= <> ( ) , - + * / [ ] **
~&|=>=><=<~=<>(),-+*/[]**
_ATEOF
cat >expout <<'_ATEOF'
NOT
SKIP
AND
SKIP
OR
SKIP
EQUALS
SKIP
GE
SKIP
GT
SKIP
LE
SKIP
LT
SKIP
NE
SKIP
NE
SKIP
LPAREN
SKIP
RPAREN
SKIP
COMMA
SKIP
DASH
SKIP
PLUS
SKIP
ASTERISK
SKIP
SLASH
SKIP
LBRACK
SKIP
RBRACK
SKIP
EXP
SKIP
NOT
AND
OR
EQUALS
GE
GT
LE
LT
NE
NE
LPAREN
RPAREN
COMMA
DASH
PLUS
ASTERISK
SLASH
LBRACK
RBRACK
EXP
SKIP
STOP
_ATEOF
{ set +x
$as_echo "$at_srcdir/scan.at:233: scan-test -i input"
at_fn_check_prepare_trace "scan.at:233"
( $at_check_trace; scan-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/scan.at:233"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_381
#AT_START_382
at_fn_group_banner 382 'scan.at:236' \
"numbers" " " 62
at_xfail=no
(
$as_echo "382. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
0 1 01 001. 1.
123. /* comment 1 */ /* comment 2 */
.1 0.1 00.1 00.10
5e1 6E-1 7e+1 6E+01 6e-03
.3E1 .4e-1 .5E+1 .6e+01 .7E-03
1.23e1 45.6E-1 78.9e+1 99.9E+01 11.2e-03
. 1e e1 1e+ 1e-
_ATEOF
cat >expout <<'_ATEOF'
POS_NUM
SKIP
POS_NUM 1
SKIP
POS_NUM 1
SKIP
POS_NUM 1
SKIP
POS_NUM 1
ENDCMD
SKIP
POS_NUM 123
ENDCMD
SKIP
SKIP
SKIP
SKIP
SKIP
ENDCMD
POS_NUM 1
SKIP
POS_NUM 0.1
SKIP
POS_NUM 0.1
SKIP
POS_NUM 0.1
SKIP
POS_NUM 50
SKIP
POS_NUM 0.6
SKIP
POS_NUM 70
SKIP
POS_NUM 60
SKIP
POS_NUM 0.006
SKIP
ENDCMD
POS_NUM 30
SKIP
POS_NUM 0.04
SKIP
POS_NUM 5
SKIP
POS_NUM 6
SKIP
POS_NUM 0.0007
SKIP
POS_NUM 12.3
SKIP
POS_NUM 4.56
SKIP
POS_NUM 789
SKIP
POS_NUM 999
SKIP
POS_NUM 0.0112
SKIP
ENDCMD
SKIP
EXPECTED_EXPONENT "1e"
SKIP
ID "e1"
SKIP
EXPECTED_EXPONENT "1e+"
SKIP
EXPECTED_EXPONENT "1e-"
SKIP
STOP
_ATEOF
{ set +x
$as_echo "$at_srcdir/scan.at:318: scan-test -i input"
at_fn_check_prepare_trace "scan.at:318"
( $at_check_trace; scan-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/scan.at:318"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_382
#AT_START_383
at_fn_group_banner 383 'scan.at:321' \
"strings" " " 62
at_xfail=no
(
$as_echo "383. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
'x' "y" 'abc'
'Don''t' "Can't" 'Won''t'
"""quoted""" '"quoted"'
'' "" '''' """"
'missing end quote
"missing double quote
'x' + "y"
+ 'z' +
'a' /* abc */ + "b" /*
+ 'c' +/* */"d"/* */+'e'
'foo'
+ /* special case: + in column 0 would ordinarily start a new command
'bar'
'foo'
+
'bar'
'foo'
+
'bar'
+
x"4142"+'5152'
"4142"+
x'5152'
x"4142"
+u'304a'
"�あいうえお"
"abc"+U"FFFD"+u'3048'+"xyz"
_ATEOF
cat >expout <<'_ATEOF'
STRING "x"
SKIP
STRING "y"
SKIP
STRING "abc"
SKIP
STRING "Don't"
SKIP
STRING "Can't"
SKIP
STRING "Won't"
SKIP
STRING ""quoted""
SKIP
STRING ""quoted""
SKIP
STRING ""
SKIP
STRING ""
SKIP
STRING "'"
SKIP
STRING """
SKIP
EXPECTED_QUOTE
SKIP
EXPECTED_QUOTE
SKIP
STRING "xyzabcde"
SKIP
STRING "foobar"
SKIP
STRING "foobar"
SKIP
STRING "foo"
SKIP
PLUS
SKIP
ENDCMD
SKIP
STRING "bar"
SKIP
ENDCMD
SKIP
PLUS
SKIP
STRING "AB5152"
SKIP
STRING "4142QR"
SKIP
STRING "ABお"
SKIP
STRING "�あいうえお"
SKIP
STRING "abc�えxyz"
SKIP
STOP
_ATEOF
{ set +x
$as_echo "$at_srcdir/scan.at:413: scan-test -i input"
at_fn_check_prepare_trace "scan.at:413"
( $at_check_trace; scan-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/scan.at:413"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_383
#AT_START_384
at_fn_group_banner 384 'scan.at:416' \
"#! construct" " " 62
at_xfail=no
(
$as_echo "384. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
#! /usr/bin/pspp
#! /usr/bin/pspp
_ATEOF
cat >expout <<'_ATEOF'
SKIP
SKIP
ID "#"
UNEXPECTED_CHAR 33
SKIP
SLASH
ID "usr"
SLASH
ID "bin"
SLASH
ID "pspp"
SKIP
STOP
_ATEOF
{ set +x
$as_echo "$at_srcdir/scan.at:437: scan-test -i input"
at_fn_check_prepare_trace "scan.at:437"
( $at_check_trace; scan-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/scan.at:437"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_384
#AT_START_385
at_fn_group_banner 385 'scan.at:440' \
"* and COMMENT commands" " " 62
at_xfail=no
(
$as_echo "385. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
* Comment commands "don't
have to contain valid tokens.
** Check ambiguity with ** token.
****************.
comment keyword works too.
COMM also.
com is ambiguous with COMPUTE.
* Comment need not start at left margin.
* Comment ends with blank line
next command.
_ATEOF
cat >expout <<'_ATEOF'
SKIP
SKIP
SKIP
ENDCMD
SKIP
ENDCMD
SKIP
SKIP
ENDCMD
SKIP
SKIP
ENDCMD
SKIP
ENDCMD
SKIP
SKIP
ENDCMD
SKIP
SKIP
ENDCMD
SKIP
ID "com"
SKIP
ID "is"
SKIP
ID "ambiguous"
SKIP
WITH
SKIP
ID "COMPUTE"
ENDCMD
SKIP
ENDCMD
SKIP
SKIP
SKIP
ENDCMD
SKIP
ENDCMD
SKIP
SKIP
SKIP
ENDCMD
SKIP
ID "next"
SKIP
ID "command"
ENDCMD
SKIP
ENDCMD
SKIP
STOP
_ATEOF
{ set +x
$as_echo "$at_srcdir/scan.at:514: scan-test -i input"
at_fn_check_prepare_trace "scan.at:514"
( $at_check_trace; scan-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/scan.at:514"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_385
#AT_START_386
at_fn_group_banner 386 'scan.at:517' \
"DOCUMENT command" " " 62
at_xfail=no
(
$as_echo "386. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
DOCUMENT one line.
DOC more
than
one
line.
docu
first.paragraph
isn't parsed as tokens
second paragraph.
_ATEOF
cat >expout <<'_ATEOF'
ID "DOCUMENT"
STRING "DOCUMENT one line."
ENDCMD
ENDCMD
SKIP
ID "DOCUMENT"
STRING "DOC more"
SKIP
STRING " than"
SKIP
STRING " one"
SKIP
STRING " line."
ENDCMD
ENDCMD
SKIP
ID "DOCUMENT"
STRING "docu"
SKIP
STRING "first.paragraph"
SKIP
STRING "isn't parsed as tokens"
SKIP
STRING ""
SKIP
STRING "second paragraph."
ENDCMD
ENDCMD
SKIP
STOP
_ATEOF
{ set +x
$as_echo "$at_srcdir/scan.at:563: scan-test -i input"
at_fn_check_prepare_trace "scan.at:563"
( $at_check_trace; scan-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/scan.at:563"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_386
#AT_START_387
at_fn_group_banner 387 'scan.at:566' \
"TITLE, SUBTITLE, FILE LABEL commands" " " 62
at_xfail=no
(
$as_echo "387. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
title/**/'Quoted string title'.
tit /*
"Quoted string on second line".
sub "Quoted string subtitle"
.
TITL /* Not a */ quoted string title.
SUBT Not a quoted string /* subtitle
FIL label isn't quoted.
FILE
lab 'is quoted'.
FILE /*
/**/ lab not quoted here either
_ATEOF
cat >expout <<'_ATEOF'
ID "title"
SKIP
STRING "Quoted string title"
ENDCMD
SKIP
ID "tit"
SKIP
SKIP
SKIP
STRING "Quoted string on second line"
ENDCMD
SKIP
ID "sub"
SKIP
STRING "Quoted string subtitle"
SKIP
SKIP
ENDCMD
SKIP
ENDCMD
SKIP
ID "TITL"
SKIP
STRING "/* Not a */ quoted string title"
ENDCMD
SKIP
ID "SUBT"
SKIP
STRING "Not a quoted string /* subtitle"
SKIP
ENDCMD
SKIP
ID "FIL"
SKIP
ID "label"
SKIP
STRING "isn't quoted"
ENDCMD
SKIP
ID "FILE"
SKIP
SKIP
ID "lab"
SKIP
STRING "is quoted"
ENDCMD
SKIP
ID "FILE"
SKIP
SKIP
SKIP
SKIP
SKIP
ID "lab"
SKIP
STRING "not quoted here either"
SKIP
ENDCMD
SKIP
STOP
_ATEOF
{ set +x
$as_echo "$at_srcdir/scan.at:647: scan-test -i input"
at_fn_check_prepare_trace "scan.at:647"
( $at_check_trace; scan-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/scan.at:647"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_387
#AT_START_388
at_fn_group_banner 388 'scan.at:650' \
"BEGIN DATA command" " " 62
at_xfail=no
(
$as_echo "388. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
begin data.
123
xxx
end data.
BEG /**/ DAT /*
5 6 7 /* x
end data
end data
.
_ATEOF
cat >expout <<'_ATEOF'
ID "begin"
SKIP
ID "data"
ENDCMD
SKIP
STRING "123"
SKIP
STRING "xxx"
SKIP
ID "end"
SKIP
ID "data"
ENDCMD
SKIP
ENDCMD
SKIP
ID "BEG"
SKIP
SKIP
SKIP
ID "DAT"
SKIP
SKIP
SKIP
STRING "5 6 7 /* x"
SKIP
STRING ""
SKIP
STRING "end data"
SKIP
ID "end"
SKIP
ID "data"
SKIP
ENDCMD
SKIP
STOP
_ATEOF
{ set +x
$as_echo "$at_srcdir/scan.at:704: scan-test -i input"
at_fn_check_prepare_trace "scan.at:704"
( $at_check_trace; scan-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/scan.at:704"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_388
#AT_START_389
at_fn_group_banner 389 'scan.at:707' \
"DO REPEAT command" " " 62
at_xfail=no
(
$as_echo "389. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
do repeat x=a b c
y=d e f.
do repeat a=1 thru 5.
another command.
second command
+ third command.
end /* x */ /* y */ repeat print.
end
repeat.
_ATEOF
cat >expout <<'_ATEOF'
ID "do"
SKIP
ID "repeat"
SKIP
ID "x"
EQUALS
ID "a"
SKIP
ID "b"
SKIP
ID "c"
SKIP
SKIP
ID "y"
EQUALS
ID "d"
SKIP
ID "e"
SKIP
ID "f"
ENDCMD
SKIP
STRING " do repeat a=1 thru 5."
SKIP
STRING "another command."
SKIP
STRING "second command"
SKIP
STRING "+ third command."
SKIP
STRING "end /* x */ /* y */ repeat print."
SKIP
ID "end"
SKIP
SKIP
ID "repeat"
ENDCMD
SKIP
STOP
_ATEOF
{ set +x
$as_echo "$at_srcdir/scan.at:761: scan-test -i input"
at_fn_check_prepare_trace "scan.at:761"
( $at_check_trace; scan-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/scan.at:761"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_389
#AT_START_390
at_fn_group_banner 390 'scan.at:764' \
"batch mode" " " 62
at_xfail=no
(
$as_echo "390. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
first command
another line of first command
+ second command
third command
fourth command.
fifth command.
_ATEOF
cat >expout <<'_ATEOF'
ID "first"
SKIP
ID "command"
SKIP
SKIP
ID "another"
SKIP
ID "line"
SKIP
ID "of"
SKIP
ID "first"
SKIP
ID "command"
SKIP
ENDCMD
SKIP
ID "second"
SKIP
ID "command"
SKIP
ENDCMD
ID "third"
SKIP
ID "command"
SKIP
ENDCMD
SKIP
ID "fourth"
SKIP
ID "command"
ENDCMD
SKIP
SKIP
ID "fifth"
SKIP
ID "command"
ENDCMD
SKIP
STOP
_ATEOF
{ set +x
$as_echo "$at_srcdir/scan.at:817: scan-test -b input"
at_fn_check_prepare_trace "scan.at:817"
( $at_check_trace; scan-test -b input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/scan.at:817"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_390
#AT_START_391
at_fn_group_banner 391 'segment.at:8' \
"identifiers" " " 63
at_xfail=no
(
$as_echo "391. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
a ab abc abcd
A AB ABC ABCD
aB aBC aBcD
$x $y $z
grève Ângstrom poté
#a #b #c ## #d
@efg @ @@. @#@
## # #12345 #.#
f@#_.#6
GhIjK
.x 1y _z
_ATEOF
cat >expout <<'_ATEOF'
identifier a space
identifier ab space
identifier abc space
identifier abcd
newline \n (later)
identifier A space
identifier AB space
identifier ABC space
identifier ABCD
newline \n (later)
identifier aB space
identifier aBC space
identifier aBcD
newline \n (later)
identifier $x space
identifier $y space
identifier $z
newline \n (later)
identifier grève
spaces
identifier Ângstrom
spaces
identifier poté
newline \n (later)
identifier #a space
identifier #b space
identifier #c space
identifier ## space
identifier #d
newline \n (later)
identifier @efg space
identifier @ space
identifier @@. space
identifier @#@ space
newline \n (later)
identifier ## space
identifier # space
identifier #12345 space
identifier #.#
newline \n (later)
identifier f@#\_.#6
newline \n (later)
identifier GhIjK
newline \n (later)
start_command .
identifier x space
number 1
identifier y space
unexpected_char \_
identifier z
newline \n (later)
end
_ATEOF
{ set +x
$as_echo "$at_srcdir/segment.at:88: segment-test -i input"
at_fn_check_prepare_trace "segment.at:88"
( $at_check_trace; segment-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:88"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:88: segment-test -1 -i input"
at_fn_check_prepare_trace "segment.at:88"
( $at_check_trace; segment-test -1 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:88"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:88: segment-test -0 -i input"
at_fn_check_prepare_trace "segment.at:88"
( $at_check_trace; segment-test -0 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:88"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:88: segment-test -01 -i input"
at_fn_check_prepare_trace "segment.at:88"
( $at_check_trace; segment-test -01 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:88"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_391
#AT_START_392
at_fn_group_banner 392 'segment.at:91' \
"identifiers that end in '.'" " " 63
at_xfail=no
(
$as_echo "392. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
abcd. abcd.
ABCD. ABCD.
aBcD. aBcD.
$y. $z. あいうえお.
#c. #d..
@@. @@....
#.#.
#abcd.
.
.
LMNOP.
QRSTUV./* end of line comment */
qrstuv. /* end of line comment */
QrStUv./* end of line comment */
wxyz./* unterminated end of line comment
WXYZ. /* unterminated end of line comment
WxYz./* unterminated end of line comment
_ATEOF
cat >expout <<'_ATEOF'
identifier abcd. space
identifier abcd
end_command .
newline \n (first)
identifier ABCD. space
identifier ABCD
end_command .
newline \n (first)
identifier aBcD. space
identifier aBcD
end_command . space
newline \n (first)
identifier $y. space
identifier $z. space
identifier あいうえお
end_command .
newline \n (first)
identifier #c. space
identifier #d.
end_command .
newline \n (first)
identifier @@. space
identifier @@...
end_command .
newline \n (first)
identifier #.#
end_command .
newline \n (first)
identifier #abcd
end_command .
newline \n (first)
start_command .
newline \n (first)
start_command . space
newline \n (first)
identifier LMNOP
end_command . space
newline \n (first)
identifier QRSTUV
end_command .
comment /*_end_of_line_comment_*/
newline \n (first)
identifier qrstuv
end_command . space
comment /*_end_of_line_comment_*/
newline \n (first)
identifier QrStUv
end_command .
comment /*_end_of_line_comment_*/ space
newline \n (first)
identifier wxyz
end_command .
comment /*_unterminated_end_of_line_comment
newline \n (first)
identifier WXYZ
end_command . space
comment /*_unterminated_end_of_line_comment
newline \n (first)
identifier WxYz
end_command .
comment /*_unterminated_end_of_line_comment_
newline \n (first)
end
_ATEOF
{ set +x
$as_echo "$at_srcdir/segment.at:194: segment-test -i input"
at_fn_check_prepare_trace "segment.at:194"
( $at_check_trace; segment-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:194"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:194: segment-test -1 -i input"
at_fn_check_prepare_trace "segment.at:194"
( $at_check_trace; segment-test -1 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:194"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:194: segment-test -0 -i input"
at_fn_check_prepare_trace "segment.at:194"
( $at_check_trace; segment-test -0 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:194"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:194: segment-test -01 -i input"
at_fn_check_prepare_trace "segment.at:194"
( $at_check_trace; segment-test -01 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:194"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_392
#AT_START_393
at_fn_group_banner 393 'segment.at:197' \
"reserved words" " " 63
at_xfail=no
(
$as_echo "393. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
and or not eq ge gt le lt ne all by to with
AND OR NOT EQ GE GT LE LT NE ALL BY TO WITH
andx orx notx eqx gex gtx lex ltx nex allx byx tox withx
and. with.
_ATEOF
cat >expout <<'_ATEOF'
reserved_word and space
reserved_word or space
reserved_word not space
reserved_word eq space
reserved_word ge space
reserved_word gt space
reserved_word le space
reserved_word lt space
reserved_word ne space
reserved_word all space
reserved_word by space
reserved_word to space
reserved_word with
newline \n (later)
reserved_word AND space
reserved_word OR space
reserved_word NOT space
reserved_word EQ space
reserved_word GE space
reserved_word GT space
reserved_word LE space
reserved_word LT space
reserved_word NE space
reserved_word ALL space
reserved_word BY space
reserved_word TO space
reserved_word WITH
newline \n (later)
identifier andx space
identifier orx space
identifier notx space
identifier eqx space
identifier gex space
identifier gtx space
identifier lex space
identifier ltx space
identifier nex space
identifier allx space
identifier byx space
identifier tox space
identifier withx
newline \n (later)
identifier and. space
reserved_word with
end_command .
newline \n (first)
end
_ATEOF
{ set +x
$as_echo "$at_srcdir/segment.at:258: segment-test -i input"
at_fn_check_prepare_trace "segment.at:258"
( $at_check_trace; segment-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:258"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:258: segment-test -1 -i input"
at_fn_check_prepare_trace "segment.at:258"
( $at_check_trace; segment-test -1 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:258"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:258: segment-test -0 -i input"
at_fn_check_prepare_trace "segment.at:258"
( $at_check_trace; segment-test -0 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:258"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:258: segment-test -01 -i input"
at_fn_check_prepare_trace "segment.at:258"
( $at_check_trace; segment-test -01 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:258"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_393
#AT_START_394
at_fn_group_banner 394 'segment.at:261' \
"punctuation" " " 63
at_xfail=no
(
$as_echo "394. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
~ & | = >= > <= < ~= <> ( ) , - + * / [ ] **
~&|=>=><=<~=<>(),-+*/[]**
_ATEOF
cat >expout <<'_ATEOF'
punct ~ space
punct & space
punct | space
punct = space
punct >= space
punct > space
punct <= space
punct < space
punct ~= space
punct <> space
punct ( space
punct ) space
punct , space
punct - space
punct + space
punct * space
punct / space
punct [ space
punct ] space
punct **
newline \n (later)
punct ~
punct &
punct |
punct =
punct >=
punct >
punct <=
punct <
punct ~=
punct <>
punct (
punct )
punct ,
punct -
punct +
punct *
punct /
punct [
punct ]
punct **
newline \n (later)
end
_ATEOF
{ set +x
$as_echo "$at_srcdir/segment.at:314: segment-test -i input"
at_fn_check_prepare_trace "segment.at:314"
( $at_check_trace; segment-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:314"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:314: segment-test -1 -i input"
at_fn_check_prepare_trace "segment.at:314"
( $at_check_trace; segment-test -1 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:314"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:314: segment-test -0 -i input"
at_fn_check_prepare_trace "segment.at:314"
( $at_check_trace; segment-test -0 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:314"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:314: segment-test -01 -i input"
at_fn_check_prepare_trace "segment.at:314"
( $at_check_trace; segment-test -01 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:314"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_394
#AT_START_395
at_fn_group_banner 395 'segment.at:317' \
"numbers" " " 63
at_xfail=no
(
$as_echo "395. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
0 1 01 001. 1.
123. /* comment 1 */ /* comment 2 */
.1 0.1 00.1 00.10
5e1 6E-1 7e+1 6E+01 6e-03
.3E1 .4e-1 .5E+1 .6e+01 .7E-03
1.23e1 45.6E-1 78.9e+1 99.9E+01 11.2e-03
. 1e e1 1e+ 1e-
_ATEOF
cat >expout <<'_ATEOF'
number 0 space
number 1 space
number 01 space
number 001. space
number 1
end_command .
newline \n (first)
number 123
end_command . space
comment /*_comment_1_*/ space
comment /*_comment_2_*/
newline \n (first)
start_command .
number 1 space
number 0.1 space
number 00.1 space
number 00.10
newline \n (later)
number 5e1 space
number 6E-1 space
number 7e+1 space
number 6E+01 space
number 6e-03
newline \n (later)
start_command .
number 3E1 space
number .4e-1 space
number .5E+1 space
number .6e+01 space
number .7E-03
newline \n (later)
number 1.23e1 space
number 45.6E-1 space
number 78.9e+1 space
number 99.9E+01 space
number 11.2e-03
newline \n (later)
start_command . space
expected_exponent 1e space
identifier e1 space
expected_exponent 1e+ space
expected_exponent 1e-
newline \n (later)
end
_ATEOF
{ set +x
$as_echo "$at_srcdir/segment.at:381: segment-test -i input"
at_fn_check_prepare_trace "segment.at:381"
( $at_check_trace; segment-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:381"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:381: segment-test -1 -i input"
at_fn_check_prepare_trace "segment.at:381"
( $at_check_trace; segment-test -1 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:381"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:381: segment-test -0 -i input"
at_fn_check_prepare_trace "segment.at:381"
( $at_check_trace; segment-test -0 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:381"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:381: segment-test -01 -i input"
at_fn_check_prepare_trace "segment.at:381"
( $at_check_trace; segment-test -01 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:381"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_395
#AT_START_396
at_fn_group_banner 396 'segment.at:384' \
"strings" " " 63
at_xfail=no
(
$as_echo "396. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
'x' "y" 'abc'
'Don''t' "Can't" 'Won''t'
"""quoted""" '"quoted"'
'' ""
'missing end quote
"missing double quote
x"4142" X'5152'
u'fffd' U"041"
+ new command
+ /* comment */ 'string continuation'
+ /* also a punctuator on blank line
- 'new command'
_ATEOF
cat >expout <<'_ATEOF'
quoted_string 'x' space
quoted_string "y" space
quoted_string 'abc'
newline \n (later)
quoted_string 'Don''t' space
quoted_string "Can't" space
quoted_string 'Won''t'
newline \n (later)
quoted_string """quoted""" space
quoted_string '"quoted"'
newline \n (later)
quoted_string '' space
quoted_string ""
newline \n (later)
expected_quote 'missing_end_quote
newline \n (later)
expected_quote "missing_double_quote
newline \n (later)
hex_string x"4142" space
hex_string X'5152'
newline \n (later)
unicode_string u'fffd' space
unicode_string U"041"
newline \n (later)
start_command + space
identifier new space
identifier command
newline \n (later)
punct + space
comment /*_comment_*/ space
quoted_string 'string_continuation'
newline \n (later)
punct + space
comment /*_also_a_punctuator_on_blank_line
newline \n (later)
start_command - space
quoted_string 'new_command'
newline \n (later)
end
_ATEOF
{ set +x
$as_echo "$at_srcdir/segment.at:453: segment-test -i input"
at_fn_check_prepare_trace "segment.at:453"
( $at_check_trace; segment-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:453"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:453: segment-test -1 -i input"
at_fn_check_prepare_trace "segment.at:453"
( $at_check_trace; segment-test -1 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:453"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:453: segment-test -0 -i input"
at_fn_check_prepare_trace "segment.at:453"
( $at_check_trace; segment-test -0 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:453"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:453: segment-test -01 -i input"
at_fn_check_prepare_trace "segment.at:453"
( $at_check_trace; segment-test -01 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:453"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_396
#AT_START_397
at_fn_group_banner 397 'segment.at:456' \
"#! construct" " " 63
at_xfail=no
(
$as_echo "397. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
#! /usr/bin/pspp
title my title.
#! /usr/bin/pspp
_ATEOF
cat >expout <<'_ATEOF'
shbang #!_/usr/bin/pspp
newline \n (first)
identifier title space
unquoted_string my_title
end_command .
newline \n (first)
identifier #
unexpected_char ! space
punct /
identifier usr
punct /
identifier bin
punct /
identifier pspp
newline \n (later)
end
_ATEOF
{ set +x
$as_echo "$at_srcdir/segment.at:484: segment-test -i input"
at_fn_check_prepare_trace "segment.at:484"
( $at_check_trace; segment-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:484"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:484: segment-test -1 -i input"
at_fn_check_prepare_trace "segment.at:484"
( $at_check_trace; segment-test -1 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:484"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:484: segment-test -0 -i input"
at_fn_check_prepare_trace "segment.at:484"
( $at_check_trace; segment-test -0 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:484"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:484: segment-test -01 -i input"
at_fn_check_prepare_trace "segment.at:484"
( $at_check_trace; segment-test -01 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:484"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_397
#AT_START_398
at_fn_group_banner 398 'segment.at:487' \
"* and COMMENT commands" " " 63
at_xfail=no
(
$as_echo "398. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
* Comment commands "don't
have to contain valid tokens.
** Check ambiguity with ** token.
****************.
comment keyword works too.
COMM also.
com is ambiguous with COMPUTE.
* Comment need not start at left margin.
* Comment ends with blank line
next command.
_ATEOF
cat >expout <<'_ATEOF'
comment_command *_Comment_commands_"don't
newline \n (COMMENT)
comment_command have_to_contain_valid_tokens
end_command .
newline \n (first)
separate_commands
newline \n (first)
comment_command **_Check_ambiguity_with_**_token
end_command .
newline \n (first)
comment_command ****************
end_command .
newline \n (first)
separate_commands
newline \n (first)
comment_command comment_keyword_works_too
end_command .
newline \n (first)
comment_command COMM_also
end_command .
newline \n (first)
identifier com space
identifier is space
identifier ambiguous space
reserved_word with space
identifier COMPUTE
end_command .
newline \n (first)
separate_commands
newline \n (first)
spaces ___
comment_command *_Comment_need_not_start_at_left_margin
end_command .
newline \n (first)
separate_commands
newline \n (first)
comment_command *_Comment_ends_with_blank_line
newline \n (COMMENT)
separate_commands
newline \n (first)
identifier next space
identifier command
end_command .
newline \n (first)
separate_commands
newline \n (first)
end
_ATEOF
{ set +x
$as_echo "$at_srcdir/segment.at:572: segment-test -i input"
at_fn_check_prepare_trace "segment.at:572"
( $at_check_trace; segment-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:572"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:572: segment-test -1 -i input"
at_fn_check_prepare_trace "segment.at:572"
( $at_check_trace; segment-test -1 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:572"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:572: segment-test -0 -i input"
at_fn_check_prepare_trace "segment.at:572"
( $at_check_trace; segment-test -0 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:572"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:572: segment-test -01 -i input"
at_fn_check_prepare_trace "segment.at:572"
( $at_check_trace; segment-test -01 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:572"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_398
#AT_START_399
at_fn_group_banner 399 'segment.at:575' \
"DOCUMENT command" " " 63
at_xfail=no
(
$as_echo "399. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
DOCUMENT one line.
DOC more
than
one
line.
docu
first.paragraph
isn't parsed as tokens
second paragraph.
_ATEOF
cat >expout <<'_ATEOF'
start_document
document DOCUMENT_one_line.
end_command
separate_commands
newline \n (first)
start_document
document DOC_more
newline \n (DOCUMENT)
document ____than
newline \n (DOCUMENT)
document ________one
newline \n (DOCUMENT)
document ____________line.
end_command
separate_commands
newline \n (first)
start_document
document docu
newline \n (DOCUMENT)
document first.paragraph
newline \n (DOCUMENT)
document isn't_parsed_as_tokens
newline \n (DOCUMENT)
document
newline \n (DOCUMENT)
document second_paragraph.
end_command
separate_commands
newline \n (first)
end
_ATEOF
{ set +x
$as_echo "$at_srcdir/segment.at:631: segment-test -i input"
at_fn_check_prepare_trace "segment.at:631"
( $at_check_trace; segment-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:631"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:631: segment-test -1 -i input"
at_fn_check_prepare_trace "segment.at:631"
( $at_check_trace; segment-test -1 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:631"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:631: segment-test -0 -i input"
at_fn_check_prepare_trace "segment.at:631"
( $at_check_trace; segment-test -0 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:631"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:631: segment-test -01 -i input"
at_fn_check_prepare_trace "segment.at:631"
( $at_check_trace; segment-test -01 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:631"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_399
#AT_START_400
at_fn_group_banner 400 'segment.at:634' \
"TITLE, SUBTITLE, FILE LABEL commands" " " 63
at_xfail=no
(
$as_echo "400. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
title/**/'Quoted string title'.
tit /*
"Quoted string on second line".
sub "Quoted string subtitle"
.
TITL /* Not a */ quoted string title.
SUBT Not a quoted string /* subtitle
FIL label isn't quoted.
FILE
lab 'is quoted'.
FILE /*
/**/ lab not quoted here either
_ATEOF
cat >expout <<'_ATEOF'
identifier title
comment /**/
quoted_string 'Quoted_string_title'
end_command .
newline \n (first)
identifier tit space
comment /*
newline \n (later)
quoted_string "Quoted_string_on_second_line"
end_command .
newline \n (first)
identifier sub space
quoted_string "Quoted_string_subtitle"
newline \n (later)
space
end_command .
newline \n (first)
separate_commands
newline \n (first)
identifier TITL space
unquoted_string /*_Not_a_*/_quoted_string_title
end_command .
newline \n (first)
identifier SUBT space
unquoted_string Not_a_quoted_string_/*_subtitle
newline \n (later)
separate_commands
newline \n (first)
identifier FIL space
identifier label space
unquoted_string isn't_quoted
end_command .
newline \n (first)
identifier FILE
newline \n (later)
spaces __
identifier lab space
quoted_string 'is_quoted'
end_command .
newline \n (first)
identifier FILE space
comment /*
newline \n (later)
comment /**/
spaces __
identifier lab space
unquoted_string not_quoted_here_either
newline \n (later)
separate_commands
newline \n (first)
end
_ATEOF
{ set +x
$as_echo "$at_srcdir/segment.at:720: segment-test -i input"
at_fn_check_prepare_trace "segment.at:720"
( $at_check_trace; segment-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:720"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:720: segment-test -1 -i input"
at_fn_check_prepare_trace "segment.at:720"
( $at_check_trace; segment-test -1 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:720"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:720: segment-test -0 -i input"
at_fn_check_prepare_trace "segment.at:720"
( $at_check_trace; segment-test -0 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:720"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:720: segment-test -01 -i input"
at_fn_check_prepare_trace "segment.at:720"
( $at_check_trace; segment-test -01 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:720"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_400
#AT_START_401
at_fn_group_banner 401 'segment.at:723' \
"BEGIN DATA command" " " 63
at_xfail=no
(
$as_echo "401. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
begin data.
end data.
begin data. /*
123
xxx
end data.
BEG /**/ DAT /*
5 6 7 /* x
end data
end data
.
begin
data.
data
end data.
begin data "xxx".
begin data 123.
not data
_ATEOF
cat >expout <<'_ATEOF'
identifier begin space
identifier data
end_command .
newline \n (data)
identifier end space
identifier data
end_command .
newline \n (first)
separate_commands
newline \n (first)
identifier begin space
identifier data
end_command . space
comment /*
newline \n (data)
inline_data 123
newline \n (data)
inline_data xxx
newline \n (data)
identifier end space
identifier data
end_command .
newline \n (first)
separate_commands
newline \n (first)
identifier BEG space
comment /**/ space
identifier DAT space
comment /*
newline \n (data)
inline_data 5_6_7_/*_x
newline \n (data)
inline_data
newline \n (data)
inline_data end__data
newline \n (data)
identifier end space
identifier data
newline \n (later)
start_command .
newline \n (first)
separate_commands
newline \n (first)
identifier begin
newline \n (later)
space
identifier data
end_command .
newline \n (data)
inline_data data
newline \n (data)
identifier end space
identifier data
end_command .
newline \n (first)
separate_commands
newline \n (first)
identifier begin space
identifier data space
quoted_string "xxx"
end_command .
newline \n (first)
identifier begin space
identifier data space
number 123
end_command .
newline \n (first)
reserved_word not space
identifier data
newline \n (later)
end
_ATEOF
{ set +x
$as_echo "$at_srcdir/segment.at:845: segment-test -i input"
at_fn_check_prepare_trace "segment.at:845"
( $at_check_trace; segment-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:845"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:845: segment-test -1 -i input"
at_fn_check_prepare_trace "segment.at:845"
( $at_check_trace; segment-test -1 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:845"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:845: segment-test -0 -i input"
at_fn_check_prepare_trace "segment.at:845"
( $at_check_trace; segment-test -0 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:845"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:845: segment-test -01 -i input"
at_fn_check_prepare_trace "segment.at:845"
( $at_check_trace; segment-test -01 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:845"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_401
#AT_START_402
at_fn_group_banner 402 'segment.at:848' \
"DO REPEAT command" " " 63
at_xfail=no
(
$as_echo "402. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
do repeat x=a b c
y=d e f.
do repeat a=1 thru 5.
another command.
second command
+ third command.
end /* x */ /* y */ repeat print.
end
repeat.
do
repeat #a=1.
inner command.
end repeat.
_ATEOF
cat >expout <<'_ATEOF'
identifier do space
identifier repeat space
identifier x
punct =
identifier a space
identifier b space
identifier c
newline \n (later)
spaces __________
identifier y
punct =
identifier d space
identifier e space
identifier f
end_command .
newline \n (DO REPEAT)
do_repeat_command __do_repeat_a=1_thru_5.
newline \n (DO REPEAT)
do_repeat_command another_command.
newline \n (DO REPEAT)
do_repeat_command second_command
newline \n (DO REPEAT)
do_repeat_command +_third_command.
newline \n (DO REPEAT)
do_repeat_command end_/*_x_*/_/*_y_*/_repeat_print.
newline \n (DO REPEAT)
identifier end
newline \n (later)
space
identifier repeat
end_command .
newline \n (first)
identifier do
newline \n (later)
spaces __
identifier repeat space
identifier #a
punct =
number 1
end_command .
newline \n (DO REPEAT)
do_repeat_command __inner_command.
newline \n (DO REPEAT)
identifier end space
identifier repeat
end_command .
newline \n (first)
end
_ATEOF
{ set +x
$as_echo "$at_srcdir/segment.at:927: segment-test -i input"
at_fn_check_prepare_trace "segment.at:927"
( $at_check_trace; segment-test -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:927"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:927: segment-test -1 -i input"
at_fn_check_prepare_trace "segment.at:927"
( $at_check_trace; segment-test -1 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:927"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:927: segment-test -0 -i input"
at_fn_check_prepare_trace "segment.at:927"
( $at_check_trace; segment-test -0 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:927"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:927: segment-test -01 -i input"
at_fn_check_prepare_trace "segment.at:927"
( $at_check_trace; segment-test -01 -i input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:927"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_402
#AT_START_403
at_fn_group_banner 403 'segment.at:930' \
"batch mode" " " 63
at_xfail=no
(
$as_echo "403. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
first command
another line of first command
+ second command
third command
fourth command.
fifth command.
_ATEOF
cat >expout <<'_ATEOF'
identifier first space
identifier command
newline \n (later)
spaces _____
identifier another space
identifier line space
identifier of space
identifier first space
identifier command
newline \n (later)
start_command +
spaces __
identifier second space
identifier command
newline \n (later)
start_command
identifier third space
identifier command
newline \n (later)
separate_commands
newline \n (first)
identifier fourth space
identifier command
end_command .
newline \n (first)
spaces ___
identifier fifth space
identifier command
end_command .
newline \n (first)
end
_ATEOF
{ set +x
$as_echo "$at_srcdir/segment.at:981: segment-test -b input"
at_fn_check_prepare_trace "segment.at:981"
( $at_check_trace; segment-test -b input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:981"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:981: segment-test -1 -b input"
at_fn_check_prepare_trace "segment.at:981"
( $at_check_trace; segment-test -1 -b input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:981"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:981: segment-test -0 -b input"
at_fn_check_prepare_trace "segment.at:981"
( $at_check_trace; segment-test -0 -b input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:981"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:981: segment-test -01 -b input"
at_fn_check_prepare_trace "segment.at:981"
( $at_check_trace; segment-test -01 -b input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:981"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_403
#AT_START_404
at_fn_group_banner 404 'segment.at:984' \
"auto mode" " " 63
at_xfail=no
(
$as_echo "404. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
command
another line of command
2sls
+ another command
another line of second command
data list /x 1
aggregate.
print eject.
twostep cluster
fourth command.
fifth command.
_ATEOF
cat >expout <<'_ATEOF'
identifier command
newline \n (later)
spaces _____
identifier another space
identifier line space
identifier of space
identifier command
newline \n (later)
start_command
number 2
identifier sls
newline \n (later)
start_command +
spaces __
identifier another space
identifier command
newline \n (later)
identifier another space
identifier line space
identifier of space
identifier second space
identifier command
newline \n (later)
start_command
identifier data space
identifier list space
punct /
identifier x space
number 1
newline \n (later)
start_command
identifier aggregate
end_command .
newline \n (first)
identifier print space
identifier eject
end_command .
newline \n (first)
identifier twostep space
identifier cluster
newline \n (later)
separate_commands
newline \n (first)
separate_commands
newline \n (first)
identifier fourth space
identifier command
end_command .
newline \n (first)
spaces ___
identifier fifth space
identifier command
end_command .
newline \n (first)
end
_ATEOF
{ set +x
$as_echo "$at_srcdir/segment.at:1071: segment-test -a input"
at_fn_check_prepare_trace "segment.at:1071"
( $at_check_trace; segment-test -a input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:1071"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:1071: segment-test -1 -a input"
at_fn_check_prepare_trace "segment.at:1071"
( $at_check_trace; segment-test -1 -a input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:1071"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:1071: segment-test -0 -a input"
at_fn_check_prepare_trace "segment.at:1071"
( $at_check_trace; segment-test -0 -a input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:1071"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/segment.at:1071: segment-test -01 -a input"
at_fn_check_prepare_trace "segment.at:1071"
( $at_check_trace; segment-test -01 -a input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/segment.at:1071"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_404
#AT_START_405
at_fn_group_banner 405 'variable-parser.at:6' \
"Long variable names" " " 64
at_xfail=no
(
$as_echo "405. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >longvars.sps <<'_ATEOF'
DATA LIST LIST /AlphaBetaGamma * B * X * Yabbadabbadoo * .
BEGIN DATA.
2 3 4 5
END DATA.
LIST.
CROSSTABS
VARIABLES X (1,7) Yabbadabbadoo (1,7)
/TABLES X BY Yabbadabbadoo.
_ATEOF
{ set +x
$as_echo "$at_srcdir/variable-parser.at:19: pspp -o pspp.csv longvars.sps"
at_fn_check_prepare_trace "variable-parser.at:19"
( $at_check_trace; pspp -o pspp.csv longvars.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/variable-parser.at:19"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/variable-parser.at:20: cat pspp.csv"
at_fn_check_prepare_trace "variable-parser.at:20"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
AlphaBetaGamma,F8.0
B,F8.0
X,F8.0
Yabbadabbadoo,F8.0
Table: Data List
AlphaBetaGamma,B,X,Yabbadabbadoo
2.00,3.00,4.00,5.00
Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
X * Yabbadabbadoo,1,100.0%,0,0.0%,1,100.0%
Table: X * Yabbadabbadoo [count].
,Yabbadabbadoo,,,,,,,
X,1.00,2.00,3.00,4.00,5.00,6.00,7.00,Total
1.00,.00,.00,.00,.00,.00,.00,.00,.00
2.00,.00,.00,.00,.00,.00,.00,.00,.00
3.00,.00,.00,.00,.00,.00,.00,.00,.00
4.00,.00,.00,.00,.00,1.00,.00,.00,1.00
5.00,.00,.00,.00,.00,.00,.00,.00,.00
6.00,.00,.00,.00,.00,.00,.00,.00,.00
7.00,.00,.00,.00,.00,.00,.00,.00,.00
Total,.00,.00,.00,.00,1.00,.00,.00,1.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/variable-parser.at:20"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_405
#AT_START_406
at_fn_group_banner 406 'aggregate.at:161' \
"AGGREGATE presorted data to dataset file, itemwise missing" "" 65
at_xfail=no
(
$as_echo "406. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >aggregate.data <<'_ATEOF'
2 42
1001
4 41
3112
1112
2661
1221
2771
1331
1441
2881
1551
_ATEOF
cat >aggregate.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='aggregate.data' /G N 1-2 S 3(a) W 4.
WEIGHT BY w.
MISSING VALUES n(4) s('4').
DATASET DECLARE aggregate.
SORT CASES BY g.
AGGREGATE outfile=aggregate /PRESORTED
/DOCUMENT
/BREAK=g
/N = n
/NI = n./
NU = nu
/NUI = nu./
NFGT2 = fgt(n, 2)
/NFGT2I = fgt.(n, 2)
/SFGT2 = fgt(s, '2')
/SFGT2I = fgt.(s, '2')
/NFIN23 = fin(n, 2, 3)
/NFIN23I = fin.(n, 2, 3)
/SFIN23 = fin(s, '2', '3')
/SFIN23I = fin.(s, '2', '3')
/NFLT2 = flt(n, 2)
/NFLT2I = flt.(n, 2)
/SFLT2 = flt(s, '2')
/SFLT2I = flt.(s, '2')
/NFIRST = first(n)
/NFIRSTI = first.(n)
/SFIRST = first(s)
/SFIRSTI = first.(s)
/NFOUT23 = fout(n, 3, 2)
/NFOUT23I = fout.(n, 3, 2)
/SFOUT23 = fout(s, '3', '2')
/SFOUT23I = fout.(s, '3', '2')
/NLAST = last(n)
/NLASTI = last.(n)
/SLAST = last(s)
/SLASTI = last.(s)
/NMAX = max(n)
/NMAXI = max.(n)
/SMAX = max(s)
/SMAXI = max.(s)
/NMEAN = mean(n)
/NMEANI = mean.(n)
/NMIN = min(n)
/NMINI = min.(n)
/SMIN = min(s)
/SMINI = min.(s)
/NN = n(n)
/NNI = n.(n)
/SN = n(s)
/SNI = n.(s)
/NNMISS = nmiss(n)
/NNMISSI = nmiss.(n)
/SNMISS = nmiss(s)
/SNMISSI = nmiss.(s)
/NNU = nu(n)
/NNUI = nu.(n)
/SNU = nu(s)
/SNUI = nu.(s)
/NNUMISS = numiss(n)
/NNUMISSI = numiss.(n)
/SNUMISS = numiss(s)
/SNUMISSI = numiss.(s)
/NPGT2 = pgt(n, 2)
/NPGT2I = pgt.(n, 2)
/SPGT2 = pgt(s, '2')
/SPGT2I = pgt.(s, '2')
/NPIN23 = pin(n, 2, 3)
/NPIN23I = pin.(n, 2, 3)
/SPIN23 = pin(s, '2', '3')
/SPIN23I = pin.(s, '2', '3')
/NPLT2 = plt(n, 2)
/NPLT2I = plt.(n, 2)
/SPLT2 = plt(s, '2')
/SPLT2I = plt.(s, '2')
/NPOUT23 = pout(n, 2, 3)
/NPOUT23I = pout.(n, 2, 3)
/SPOUT23 = pout(s, '2', '3')
/SPOUT23I = pout.(s, '2', '3')
/NMEDIAN = median(n)
/NMEDIANI = median.(n)
/NSD = sd(n)
/NSDI = sd.(n)
/NSUM = sum(n)
/NSUMI = sum.(n).
DATASET ACTIVATE aggregate.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/aggregate.at:161: pspp -O format=csv aggregate.sps"
at_fn_check_prepare_trace "aggregate.at:161"
( $at_check_trace; pspp -O format=csv aggregate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:161"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/aggregate.at:161: sed 's/^[^:]*:[0-9]*: //' < stdout"
at_fn_check_prepare_trace "aggregate.at:161"
( $at_check_trace; sed 's/^[^:]*:[0-9]*: //' < stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
Table: Data List
G,N,NI,NU,NUI,NFGT2,NFGT2I,SFGT2,SFGT2I,NFIN23,NFIN23I,SFIN23,SFIN23I,NFLT2,NFLT2I,SFLT2,SFLT2I,NFIRST,NFIRSTI,SFIRST,SFIRSTI,NFOUT23,NFOUT23I,SFOUT23,SFOUT23I,NLAST,NLASTI,SLAST,SLASTI,NMAX,NMAXI,SMAX,SMAXI,NMEAN,NMEANI,NMIN,NMINI,SMIN,SMINI,NN,NNI,SN,SNI,NNMISS,NNMISSI,SNMISS,SNMISSI,NNU,NNUI,SNU,SNUI,NNUMISS,NNUMISSI,SNUMISS,SNUMISSI,NPGT2,NPGT2I,SPGT2,SPGT2I,NPIN23,NPIN23I,SPIN23,SPIN23I,NPLT2,NPLT2I,SPLT2,SPLT2I,NPOUT23,NPOUT23I,SPOUT23,SPOUT23I,NMEDIAN,NMEDIANI,NSD,NSDI,NSUM,NSUMI
1,7.00,7.00,6,6,.333,.429,.333,.429,.333,.286,.333,.286,.500,.429,.500,.429,0,0,0,0,.667,.714,.667,.714,5,5,5,5,5,5,5,5,2.00,2.29,0,0,0,0,6.00,7.00,6.00,7.00,1.00,.00,1.00,.00,5,6,5,6,1,0,1,0,33.3,42.9,33.3,42.9,33.3,28.6,33.3,28.6,50.0,42.9,50.0,42.9,66.7,71.4,66.7,71.4,1.50,2.00,1.79,1.80,12.00,16.00
2,5.00,5.00,4,4,1.000,1.000,1.000,1.000,.000,.000,.000,.000,.000,.000,.000,.000,6,6,6,4,1.000,1.000,1.000,1.000,8,8,8,8,8,8,8,8,7.00,7.00,6,6,6,4,3.00,3.00,3.00,5.00,2.00,2.00,2.00,.00,3,3,3,4,1,1,1,0,100.0,100.0,100.0,100.0,.0,.0,.0,.0,.0,.0,.0,.0,100.0,100.0,100.0,100.0,7.00,7.00,1.00,1.00,21.00,21.00
3,2.00,2.00,1,1,.000,.000,.000,.000,.000,.000,.000,.000,1.000,1.000,1.000,1.000,1,1,1,1,1.000,1.000,1.000,1.000,1,1,1,1,1,1,1,1,1.00,1.00,1,1,1,1,2.00,2.00,2.00,2.00,.00,.00,.00,.00,1,1,1,1,0,0,0,0,.0,.0,.0,.0,.0,.0,.0,.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,1.00,1.00,.00,.00,2.00,2.00
4,1.00,1.00,1,1,. ,. ,. ,1.000,. ,. ,. ,.000,. ,. ,. ,.000,.,.,,4,. ,. ,. ,1.000,.,.,,4,.,.,,4,. ,. ,.,.,,4,.00,.00,.00,1.00,1.00,1.00,1.00,.00,0,0,0,1,1,1,1,0,. ,. ,. ,100.0,. ,. ,. ,.0,. ,. ,. ,.0,. ,. ,. ,100.0,NaN,NaN,. ,. ,. ,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:161"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_406
#AT_START_407
at_fn_group_banner 407 'aggregate.at:162' \
"AGGREGATE presorted data to dataset file, columnwise missing" "" 65
at_xfail=no
(
$as_echo "407. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >aggregate.data <<'_ATEOF'
2 42
1001
4 41
3112
1112
2661
1221
2771
1331
1441
2881
1551
_ATEOF
cat >aggregate.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='aggregate.data' /G N 1-2 S 3(a) W 4.
WEIGHT BY w.
MISSING VALUES n(4) s('4').
DATASET DECLARE aggregate.
SORT CASES BY g.
AGGREGATE outfile=aggregate /PRESORTED /MISSING=COLUMNWISE
/DOCUMENT
/BREAK=g
/N = n
/NI = n./
NU = nu
/NUI = nu./
NFGT2 = fgt(n, 2)
/NFGT2I = fgt.(n, 2)
/SFGT2 = fgt(s, '2')
/SFGT2I = fgt.(s, '2')
/NFIN23 = fin(n, 2, 3)
/NFIN23I = fin.(n, 2, 3)
/SFIN23 = fin(s, '2', '3')
/SFIN23I = fin.(s, '2', '3')
/NFLT2 = flt(n, 2)
/NFLT2I = flt.(n, 2)
/SFLT2 = flt(s, '2')
/SFLT2I = flt.(s, '2')
/NFIRST = first(n)
/NFIRSTI = first.(n)
/SFIRST = first(s)
/SFIRSTI = first.(s)
/NFOUT23 = fout(n, 3, 2)
/NFOUT23I = fout.(n, 3, 2)
/SFOUT23 = fout(s, '3', '2')
/SFOUT23I = fout.(s, '3', '2')
/NLAST = last(n)
/NLASTI = last.(n)
/SLAST = last(s)
/SLASTI = last.(s)
/NMAX = max(n)
/NMAXI = max.(n)
/SMAX = max(s)
/SMAXI = max.(s)
/NMEAN = mean(n)
/NMEANI = mean.(n)
/NMIN = min(n)
/NMINI = min.(n)
/SMIN = min(s)
/SMINI = min.(s)
/NN = n(n)
/NNI = n.(n)
/SN = n(s)
/SNI = n.(s)
/NNMISS = nmiss(n)
/NNMISSI = nmiss.(n)
/SNMISS = nmiss(s)
/SNMISSI = nmiss.(s)
/NNU = nu(n)
/NNUI = nu.(n)
/SNU = nu(s)
/SNUI = nu.(s)
/NNUMISS = numiss(n)
/NNUMISSI = numiss.(n)
/SNUMISS = numiss(s)
/SNUMISSI = numiss.(s)
/NPGT2 = pgt(n, 2)
/NPGT2I = pgt.(n, 2)
/SPGT2 = pgt(s, '2')
/SPGT2I = pgt.(s, '2')
/NPIN23 = pin(n, 2, 3)
/NPIN23I = pin.(n, 2, 3)
/SPIN23 = pin(s, '2', '3')
/SPIN23I = pin.(s, '2', '3')
/NPLT2 = plt(n, 2)
/NPLT2I = plt.(n, 2)
/SPLT2 = plt(s, '2')
/SPLT2I = plt.(s, '2')
/NPOUT23 = pout(n, 2, 3)
/NPOUT23I = pout.(n, 2, 3)
/SPOUT23 = pout(s, '2', '3')
/SPOUT23I = pout.(s, '2', '3')
/NMEDIAN = median(n)
/NMEDIANI = median.(n)
/NSD = sd(n)
/NSDI = sd.(n)
/NSUM = sum(n)
/NSUMI = sum.(n).
DATASET ACTIVATE aggregate.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/aggregate.at:162: pspp -O format=csv aggregate.sps"
at_fn_check_prepare_trace "aggregate.at:162"
( $at_check_trace; pspp -O format=csv aggregate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:162"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/aggregate.at:162: sed 's/^[^:]*:[0-9]*: //' < stdout"
at_fn_check_prepare_trace "aggregate.at:162"
( $at_check_trace; sed 's/^[^:]*:[0-9]*: //' < stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
Table: Data List
G,N,NI,NU,NUI,NFGT2,NFGT2I,SFGT2,SFGT2I,NFIN23,NFIN23I,SFIN23,SFIN23I,NFLT2,NFLT2I,SFLT2,SFLT2I,NFIRST,NFIRSTI,SFIRST,SFIRSTI,NFOUT23,NFOUT23I,SFOUT23,SFOUT23I,NLAST,NLASTI,SLAST,SLASTI,NMAX,NMAXI,SMAX,SMAXI,NMEAN,NMEANI,NMIN,NMINI,SMIN,SMINI,NN,NNI,SN,SNI,NNMISS,NNMISSI,SNMISS,SNMISSI,NNU,NNUI,SNU,SNUI,NNUMISS,NNUMISSI,SNUMISS,SNUMISSI,NPGT2,NPGT2I,SPGT2,SPGT2I,NPIN23,NPIN23I,SPIN23,SPIN23I,NPLT2,NPLT2I,SPLT2,SPLT2I,NPOUT23,NPOUT23I,SPOUT23,SPOUT23I,NMEDIAN,NMEDIANI,NSD,NSDI,NSUM,NSUMI
1,7.00,7.00,6,6,. ,.429,. ,.429,. ,.286,. ,.286,. ,.429,. ,.429,.,0,,0,. ,.714,. ,.714,.,5,,5,.,5,,5,. ,2.29,.,0,,0,6.00,7.00,6.00,7.00,1.00,.00,1.00,.00,5,6,5,6,1,0,1,0,. ,42.9,. ,42.9,. ,28.6,. ,28.6,. ,42.9,. ,42.9,. ,71.4,. ,71.4,. ,2.00,. ,1.80,. ,16.00
2,5.00,5.00,4,4,. ,. ,. ,1.000,. ,. ,. ,.000,. ,. ,. ,.000,.,.,,4,. ,. ,. ,1.000,.,.,,8,.,.,,8,. ,. ,.,.,,4,3.00,3.00,3.00,5.00,2.00,2.00,2.00,.00,3,3,3,4,1,1,1,0,. ,. ,. ,100.0,. ,. ,. ,.0,. ,. ,. ,.0,. ,. ,. ,100.0,. ,. ,. ,. ,. ,.
3,2.00,2.00,1,1,.000,.000,.000,.000,.000,.000,.000,.000,1.000,1.000,1.000,1.000,1,1,1,1,1.000,1.000,1.000,1.000,1,1,1,1,1,1,1,1,1.00,1.00,1,1,1,1,2.00,2.00,2.00,2.00,.00,.00,.00,.00,1,1,1,1,0,0,0,0,.0,.0,.0,.0,.0,.0,.0,.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,1.00,1.00,.00,.00,2.00,2.00
4,1.00,1.00,1,1,. ,. ,. ,1.000,. ,. ,. ,.000,. ,. ,. ,.000,.,.,,4,. ,. ,. ,1.000,.,.,,4,.,.,,4,. ,. ,.,.,,4,.00,.00,.00,1.00,1.00,1.00,1.00,.00,0,0,0,1,1,1,1,0,. ,. ,. ,100.0,. ,. ,. ,.0,. ,. ,. ,.0,. ,. ,. ,100.0,. ,. ,. ,. ,. ,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:162"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_407
#AT_START_408
at_fn_group_banner 408 'aggregate.at:163' \
"AGGREGATE unsorted data to dataset file, itemwise missing" "" 65
at_xfail=no
(
$as_echo "408. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >aggregate.data <<'_ATEOF'
2 42
1001
4 41
3112
1112
2661
1221
2771
1331
1441
2881
1551
_ATEOF
cat >aggregate.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='aggregate.data' /G N 1-2 S 3(a) W 4.
WEIGHT BY w.
MISSING VALUES n(4) s('4').
DATASET DECLARE aggregate.
AGGREGATE outfile=aggregate
/DOCUMENT
/BREAK=g
/N = n
/NI = n./
NU = nu
/NUI = nu./
NFGT2 = fgt(n, 2)
/NFGT2I = fgt.(n, 2)
/SFGT2 = fgt(s, '2')
/SFGT2I = fgt.(s, '2')
/NFIN23 = fin(n, 2, 3)
/NFIN23I = fin.(n, 2, 3)
/SFIN23 = fin(s, '2', '3')
/SFIN23I = fin.(s, '2', '3')
/NFLT2 = flt(n, 2)
/NFLT2I = flt.(n, 2)
/SFLT2 = flt(s, '2')
/SFLT2I = flt.(s, '2')
/NFIRST = first(n)
/NFIRSTI = first.(n)
/SFIRST = first(s)
/SFIRSTI = first.(s)
/NFOUT23 = fout(n, 3, 2)
/NFOUT23I = fout.(n, 3, 2)
/SFOUT23 = fout(s, '3', '2')
/SFOUT23I = fout.(s, '3', '2')
/NLAST = last(n)
/NLASTI = last.(n)
/SLAST = last(s)
/SLASTI = last.(s)
/NMAX = max(n)
/NMAXI = max.(n)
/SMAX = max(s)
/SMAXI = max.(s)
/NMEAN = mean(n)
/NMEANI = mean.(n)
/NMIN = min(n)
/NMINI = min.(n)
/SMIN = min(s)
/SMINI = min.(s)
/NN = n(n)
/NNI = n.(n)
/SN = n(s)
/SNI = n.(s)
/NNMISS = nmiss(n)
/NNMISSI = nmiss.(n)
/SNMISS = nmiss(s)
/SNMISSI = nmiss.(s)
/NNU = nu(n)
/NNUI = nu.(n)
/SNU = nu(s)
/SNUI = nu.(s)
/NNUMISS = numiss(n)
/NNUMISSI = numiss.(n)
/SNUMISS = numiss(s)
/SNUMISSI = numiss.(s)
/NPGT2 = pgt(n, 2)
/NPGT2I = pgt.(n, 2)
/SPGT2 = pgt(s, '2')
/SPGT2I = pgt.(s, '2')
/NPIN23 = pin(n, 2, 3)
/NPIN23I = pin.(n, 2, 3)
/SPIN23 = pin(s, '2', '3')
/SPIN23I = pin.(s, '2', '3')
/NPLT2 = plt(n, 2)
/NPLT2I = plt.(n, 2)
/SPLT2 = plt(s, '2')
/SPLT2I = plt.(s, '2')
/NPOUT23 = pout(n, 2, 3)
/NPOUT23I = pout.(n, 2, 3)
/SPOUT23 = pout(s, '2', '3')
/SPOUT23I = pout.(s, '2', '3')
/NMEDIAN = median(n)
/NMEDIANI = median.(n)
/NSD = sd(n)
/NSDI = sd.(n)
/NSUM = sum(n)
/NSUMI = sum.(n).
DATASET ACTIVATE aggregate.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/aggregate.at:163: pspp -O format=csv aggregate.sps"
at_fn_check_prepare_trace "aggregate.at:163"
( $at_check_trace; pspp -O format=csv aggregate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:163"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/aggregate.at:163: sed 's/^[^:]*:[0-9]*: //' < stdout"
at_fn_check_prepare_trace "aggregate.at:163"
( $at_check_trace; sed 's/^[^:]*:[0-9]*: //' < stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
Table: Data List
G,N,NI,NU,NUI,NFGT2,NFGT2I,SFGT2,SFGT2I,NFIN23,NFIN23I,SFIN23,SFIN23I,NFLT2,NFLT2I,SFLT2,SFLT2I,NFIRST,NFIRSTI,SFIRST,SFIRSTI,NFOUT23,NFOUT23I,SFOUT23,SFOUT23I,NLAST,NLASTI,SLAST,SLASTI,NMAX,NMAXI,SMAX,SMAXI,NMEAN,NMEANI,NMIN,NMINI,SMIN,SMINI,NN,NNI,SN,SNI,NNMISS,NNMISSI,SNMISS,SNMISSI,NNU,NNUI,SNU,SNUI,NNUMISS,NNUMISSI,SNUMISS,SNUMISSI,NPGT2,NPGT2I,SPGT2,SPGT2I,NPIN23,NPIN23I,SPIN23,SPIN23I,NPLT2,NPLT2I,SPLT2,SPLT2I,NPOUT23,NPOUT23I,SPOUT23,SPOUT23I,NMEDIAN,NMEDIANI,NSD,NSDI,NSUM,NSUMI
1,7.00,7.00,6,6,.333,.429,.333,.429,.333,.286,.333,.286,.500,.429,.500,.429,0,0,0,0,.667,.714,.667,.714,5,5,5,5,5,5,5,5,2.00,2.29,0,0,0,0,6.00,7.00,6.00,7.00,1.00,.00,1.00,.00,5,6,5,6,1,0,1,0,33.3,42.9,33.3,42.9,33.3,28.6,33.3,28.6,50.0,42.9,50.0,42.9,66.7,71.4,66.7,71.4,1.50,2.00,1.79,1.80,12.00,16.00
2,5.00,5.00,4,4,1.000,1.000,1.000,1.000,.000,.000,.000,.000,.000,.000,.000,.000,6,6,6,4,1.000,1.000,1.000,1.000,8,8,8,8,8,8,8,8,7.00,7.00,6,6,6,4,3.00,3.00,3.00,5.00,2.00,2.00,2.00,.00,3,3,3,4,1,1,1,0,100.0,100.0,100.0,100.0,.0,.0,.0,.0,.0,.0,.0,.0,100.0,100.0,100.0,100.0,7.00,7.00,1.00,1.00,21.00,21.00
3,2.00,2.00,1,1,.000,.000,.000,.000,.000,.000,.000,.000,1.000,1.000,1.000,1.000,1,1,1,1,1.000,1.000,1.000,1.000,1,1,1,1,1,1,1,1,1.00,1.00,1,1,1,1,2.00,2.00,2.00,2.00,.00,.00,.00,.00,1,1,1,1,0,0,0,0,.0,.0,.0,.0,.0,.0,.0,.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,1.00,1.00,.00,.00,2.00,2.00
4,1.00,1.00,1,1,. ,. ,. ,1.000,. ,. ,. ,.000,. ,. ,. ,.000,.,.,,4,. ,. ,. ,1.000,.,.,,4,.,.,,4,. ,. ,.,.,,4,.00,.00,.00,1.00,1.00,1.00,1.00,.00,0,0,0,1,1,1,1,0,. ,. ,. ,100.0,. ,. ,. ,.0,. ,. ,. ,.0,. ,. ,. ,100.0,NaN,NaN,. ,. ,. ,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:163"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_408
#AT_START_409
at_fn_group_banner 409 'aggregate.at:164' \
"AGGREGATE unsorted data to dataset file, columnwise missing" "" 65
at_xfail=no
(
$as_echo "409. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >aggregate.data <<'_ATEOF'
2 42
1001
4 41
3112
1112
2661
1221
2771
1331
1441
2881
1551
_ATEOF
cat >aggregate.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='aggregate.data' /G N 1-2 S 3(a) W 4.
WEIGHT BY w.
MISSING VALUES n(4) s('4').
DATASET DECLARE aggregate.
AGGREGATE outfile=aggregate /MISSING=COLUMNWISE
/DOCUMENT
/BREAK=g
/N = n
/NI = n./
NU = nu
/NUI = nu./
NFGT2 = fgt(n, 2)
/NFGT2I = fgt.(n, 2)
/SFGT2 = fgt(s, '2')
/SFGT2I = fgt.(s, '2')
/NFIN23 = fin(n, 2, 3)
/NFIN23I = fin.(n, 2, 3)
/SFIN23 = fin(s, '2', '3')
/SFIN23I = fin.(s, '2', '3')
/NFLT2 = flt(n, 2)
/NFLT2I = flt.(n, 2)
/SFLT2 = flt(s, '2')
/SFLT2I = flt.(s, '2')
/NFIRST = first(n)
/NFIRSTI = first.(n)
/SFIRST = first(s)
/SFIRSTI = first.(s)
/NFOUT23 = fout(n, 3, 2)
/NFOUT23I = fout.(n, 3, 2)
/SFOUT23 = fout(s, '3', '2')
/SFOUT23I = fout.(s, '3', '2')
/NLAST = last(n)
/NLASTI = last.(n)
/SLAST = last(s)
/SLASTI = last.(s)
/NMAX = max(n)
/NMAXI = max.(n)
/SMAX = max(s)
/SMAXI = max.(s)
/NMEAN = mean(n)
/NMEANI = mean.(n)
/NMIN = min(n)
/NMINI = min.(n)
/SMIN = min(s)
/SMINI = min.(s)
/NN = n(n)
/NNI = n.(n)
/SN = n(s)
/SNI = n.(s)
/NNMISS = nmiss(n)
/NNMISSI = nmiss.(n)
/SNMISS = nmiss(s)
/SNMISSI = nmiss.(s)
/NNU = nu(n)
/NNUI = nu.(n)
/SNU = nu(s)
/SNUI = nu.(s)
/NNUMISS = numiss(n)
/NNUMISSI = numiss.(n)
/SNUMISS = numiss(s)
/SNUMISSI = numiss.(s)
/NPGT2 = pgt(n, 2)
/NPGT2I = pgt.(n, 2)
/SPGT2 = pgt(s, '2')
/SPGT2I = pgt.(s, '2')
/NPIN23 = pin(n, 2, 3)
/NPIN23I = pin.(n, 2, 3)
/SPIN23 = pin(s, '2', '3')
/SPIN23I = pin.(s, '2', '3')
/NPLT2 = plt(n, 2)
/NPLT2I = plt.(n, 2)
/SPLT2 = plt(s, '2')
/SPLT2I = plt.(s, '2')
/NPOUT23 = pout(n, 2, 3)
/NPOUT23I = pout.(n, 2, 3)
/SPOUT23 = pout(s, '2', '3')
/SPOUT23I = pout.(s, '2', '3')
/NMEDIAN = median(n)
/NMEDIANI = median.(n)
/NSD = sd(n)
/NSDI = sd.(n)
/NSUM = sum(n)
/NSUMI = sum.(n).
DATASET ACTIVATE aggregate.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/aggregate.at:164: pspp -O format=csv aggregate.sps"
at_fn_check_prepare_trace "aggregate.at:164"
( $at_check_trace; pspp -O format=csv aggregate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:164"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/aggregate.at:164: sed 's/^[^:]*:[0-9]*: //' < stdout"
at_fn_check_prepare_trace "aggregate.at:164"
( $at_check_trace; sed 's/^[^:]*:[0-9]*: //' < stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
Table: Data List
G,N,NI,NU,NUI,NFGT2,NFGT2I,SFGT2,SFGT2I,NFIN23,NFIN23I,SFIN23,SFIN23I,NFLT2,NFLT2I,SFLT2,SFLT2I,NFIRST,NFIRSTI,SFIRST,SFIRSTI,NFOUT23,NFOUT23I,SFOUT23,SFOUT23I,NLAST,NLASTI,SLAST,SLASTI,NMAX,NMAXI,SMAX,SMAXI,NMEAN,NMEANI,NMIN,NMINI,SMIN,SMINI,NN,NNI,SN,SNI,NNMISS,NNMISSI,SNMISS,SNMISSI,NNU,NNUI,SNU,SNUI,NNUMISS,NNUMISSI,SNUMISS,SNUMISSI,NPGT2,NPGT2I,SPGT2,SPGT2I,NPIN23,NPIN23I,SPIN23,SPIN23I,NPLT2,NPLT2I,SPLT2,SPLT2I,NPOUT23,NPOUT23I,SPOUT23,SPOUT23I,NMEDIAN,NMEDIANI,NSD,NSDI,NSUM,NSUMI
1,7.00,7.00,6,6,. ,.429,. ,.429,. ,.286,. ,.286,. ,.429,. ,.429,.,0,,0,. ,.714,. ,.714,.,5,,5,.,5,,5,. ,2.29,.,0,,0,6.00,7.00,6.00,7.00,1.00,.00,1.00,.00,5,6,5,6,1,0,1,0,. ,42.9,. ,42.9,. ,28.6,. ,28.6,. ,42.9,. ,42.9,. ,71.4,. ,71.4,. ,2.00,. ,1.80,. ,16.00
2,5.00,5.00,4,4,. ,. ,. ,1.000,. ,. ,. ,.000,. ,. ,. ,.000,.,.,,4,. ,. ,. ,1.000,.,.,,8,.,.,,8,. ,. ,.,.,,4,3.00,3.00,3.00,5.00,2.00,2.00,2.00,.00,3,3,3,4,1,1,1,0,. ,. ,. ,100.0,. ,. ,. ,.0,. ,. ,. ,.0,. ,. ,. ,100.0,. ,. ,. ,. ,. ,.
3,2.00,2.00,1,1,.000,.000,.000,.000,.000,.000,.000,.000,1.000,1.000,1.000,1.000,1,1,1,1,1.000,1.000,1.000,1.000,1,1,1,1,1,1,1,1,1.00,1.00,1,1,1,1,2.00,2.00,2.00,2.00,.00,.00,.00,.00,1,1,1,1,0,0,0,0,.0,.0,.0,.0,.0,.0,.0,.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,1.00,1.00,.00,.00,2.00,2.00
4,1.00,1.00,1,1,. ,. ,. ,1.000,. ,. ,. ,.000,. ,. ,. ,.000,.,.,,4,. ,. ,. ,1.000,.,.,,4,.,.,,4,. ,. ,.,.,,4,.00,.00,.00,1.00,1.00,1.00,1.00,.00,0,0,0,1,1,1,1,0,. ,. ,. ,100.0,. ,. ,. ,.0,. ,. ,. ,.0,. ,. ,. ,100.0,. ,. ,. ,. ,. ,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:164"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_409
#AT_START_410
at_fn_group_banner 410 'aggregate.at:165' \
"AGGREGATE presorted data to active file, itemwise missing" "" 65
at_xfail=no
(
$as_echo "410. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >aggregate.data <<'_ATEOF'
2 42
1001
4 41
3112
1112
2661
1221
2771
1331
1441
2881
1551
_ATEOF
cat >aggregate.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='aggregate.data' /G N 1-2 S 3(a) W 4.
WEIGHT BY w.
MISSING VALUES n(4) s('4').
SORT CASES BY g.
AGGREGATE OUTFILE=* /PRESORTED
/DOCUMENT
/BREAK=g
/N = n
/NI = n./
NU = nu
/NUI = nu./
NFGT2 = fgt(n, 2)
/NFGT2I = fgt.(n, 2)
/SFGT2 = fgt(s, '2')
/SFGT2I = fgt.(s, '2')
/NFIN23 = fin(n, 2, 3)
/NFIN23I = fin.(n, 2, 3)
/SFIN23 = fin(s, '2', '3')
/SFIN23I = fin.(s, '2', '3')
/NFLT2 = flt(n, 2)
/NFLT2I = flt.(n, 2)
/SFLT2 = flt(s, '2')
/SFLT2I = flt.(s, '2')
/NFIRST = first(n)
/NFIRSTI = first.(n)
/SFIRST = first(s)
/SFIRSTI = first.(s)
/NFOUT23 = fout(n, 3, 2)
/NFOUT23I = fout.(n, 3, 2)
/SFOUT23 = fout(s, '3', '2')
/SFOUT23I = fout.(s, '3', '2')
/NLAST = last(n)
/NLASTI = last.(n)
/SLAST = last(s)
/SLASTI = last.(s)
/NMAX = max(n)
/NMAXI = max.(n)
/SMAX = max(s)
/SMAXI = max.(s)
/NMEAN = mean(n)
/NMEANI = mean.(n)
/NMIN = min(n)
/NMINI = min.(n)
/SMIN = min(s)
/SMINI = min.(s)
/NN = n(n)
/NNI = n.(n)
/SN = n(s)
/SNI = n.(s)
/NNMISS = nmiss(n)
/NNMISSI = nmiss.(n)
/SNMISS = nmiss(s)
/SNMISSI = nmiss.(s)
/NNU = nu(n)
/NNUI = nu.(n)
/SNU = nu(s)
/SNUI = nu.(s)
/NNUMISS = numiss(n)
/NNUMISSI = numiss.(n)
/SNUMISS = numiss(s)
/SNUMISSI = numiss.(s)
/NPGT2 = pgt(n, 2)
/NPGT2I = pgt.(n, 2)
/SPGT2 = pgt(s, '2')
/SPGT2I = pgt.(s, '2')
/NPIN23 = pin(n, 2, 3)
/NPIN23I = pin.(n, 2, 3)
/SPIN23 = pin(s, '2', '3')
/SPIN23I = pin.(s, '2', '3')
/NPLT2 = plt(n, 2)
/NPLT2I = plt.(n, 2)
/SPLT2 = plt(s, '2')
/SPLT2I = plt.(s, '2')
/NPOUT23 = pout(n, 2, 3)
/NPOUT23I = pout.(n, 2, 3)
/SPOUT23 = pout(s, '2', '3')
/SPOUT23I = pout.(s, '2', '3')
/NMEDIAN = median(n)
/NMEDIANI = median.(n)
/NSD = sd(n)
/NSDI = sd.(n)
/NSUM = sum(n)
/NSUMI = sum.(n).
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/aggregate.at:165: pspp -O format=csv aggregate.sps"
at_fn_check_prepare_trace "aggregate.at:165"
( $at_check_trace; pspp -O format=csv aggregate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:165"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/aggregate.at:165: sed 's/^[^:]*:[0-9]*: //' < stdout"
at_fn_check_prepare_trace "aggregate.at:165"
( $at_check_trace; sed 's/^[^:]*:[0-9]*: //' < stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
Table: Data List
G,N,NI,NU,NUI,NFGT2,NFGT2I,SFGT2,SFGT2I,NFIN23,NFIN23I,SFIN23,SFIN23I,NFLT2,NFLT2I,SFLT2,SFLT2I,NFIRST,NFIRSTI,SFIRST,SFIRSTI,NFOUT23,NFOUT23I,SFOUT23,SFOUT23I,NLAST,NLASTI,SLAST,SLASTI,NMAX,NMAXI,SMAX,SMAXI,NMEAN,NMEANI,NMIN,NMINI,SMIN,SMINI,NN,NNI,SN,SNI,NNMISS,NNMISSI,SNMISS,SNMISSI,NNU,NNUI,SNU,SNUI,NNUMISS,NNUMISSI,SNUMISS,SNUMISSI,NPGT2,NPGT2I,SPGT2,SPGT2I,NPIN23,NPIN23I,SPIN23,SPIN23I,NPLT2,NPLT2I,SPLT2,SPLT2I,NPOUT23,NPOUT23I,SPOUT23,SPOUT23I,NMEDIAN,NMEDIANI,NSD,NSDI,NSUM,NSUMI
1,7.00,7.00,6,6,.333,.429,.333,.429,.333,.286,.333,.286,.500,.429,.500,.429,0,0,0,0,.667,.714,.667,.714,5,5,5,5,5,5,5,5,2.00,2.29,0,0,0,0,6.00,7.00,6.00,7.00,1.00,.00,1.00,.00,5,6,5,6,1,0,1,0,33.3,42.9,33.3,42.9,33.3,28.6,33.3,28.6,50.0,42.9,50.0,42.9,66.7,71.4,66.7,71.4,1.50,2.00,1.79,1.80,12.00,16.00
2,5.00,5.00,4,4,1.000,1.000,1.000,1.000,.000,.000,.000,.000,.000,.000,.000,.000,6,6,6,4,1.000,1.000,1.000,1.000,8,8,8,8,8,8,8,8,7.00,7.00,6,6,6,4,3.00,3.00,3.00,5.00,2.00,2.00,2.00,.00,3,3,3,4,1,1,1,0,100.0,100.0,100.0,100.0,.0,.0,.0,.0,.0,.0,.0,.0,100.0,100.0,100.0,100.0,7.00,7.00,1.00,1.00,21.00,21.00
3,2.00,2.00,1,1,.000,.000,.000,.000,.000,.000,.000,.000,1.000,1.000,1.000,1.000,1,1,1,1,1.000,1.000,1.000,1.000,1,1,1,1,1,1,1,1,1.00,1.00,1,1,1,1,2.00,2.00,2.00,2.00,.00,.00,.00,.00,1,1,1,1,0,0,0,0,.0,.0,.0,.0,.0,.0,.0,.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,1.00,1.00,.00,.00,2.00,2.00
4,1.00,1.00,1,1,. ,. ,. ,1.000,. ,. ,. ,.000,. ,. ,. ,.000,.,.,,4,. ,. ,. ,1.000,.,.,,4,.,.,,4,. ,. ,.,.,,4,.00,.00,.00,1.00,1.00,1.00,1.00,.00,0,0,0,1,1,1,1,0,. ,. ,. ,100.0,. ,. ,. ,.0,. ,. ,. ,.0,. ,. ,. ,100.0,NaN,NaN,. ,. ,. ,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:165"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_410
#AT_START_411
at_fn_group_banner 411 'aggregate.at:166' \
"AGGREGATE presorted data to active file, columnwise missing" "" 65
at_xfail=no
(
$as_echo "411. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >aggregate.data <<'_ATEOF'
2 42
1001
4 41
3112
1112
2661
1221
2771
1331
1441
2881
1551
_ATEOF
cat >aggregate.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='aggregate.data' /G N 1-2 S 3(a) W 4.
WEIGHT BY w.
MISSING VALUES n(4) s('4').
SORT CASES BY g.
AGGREGATE OUTFILE=* /PRESORTED /MISSING=COLUMNWISE
/DOCUMENT
/BREAK=g
/N = n
/NI = n./
NU = nu
/NUI = nu./
NFGT2 = fgt(n, 2)
/NFGT2I = fgt.(n, 2)
/SFGT2 = fgt(s, '2')
/SFGT2I = fgt.(s, '2')
/NFIN23 = fin(n, 2, 3)
/NFIN23I = fin.(n, 2, 3)
/SFIN23 = fin(s, '2', '3')
/SFIN23I = fin.(s, '2', '3')
/NFLT2 = flt(n, 2)
/NFLT2I = flt.(n, 2)
/SFLT2 = flt(s, '2')
/SFLT2I = flt.(s, '2')
/NFIRST = first(n)
/NFIRSTI = first.(n)
/SFIRST = first(s)
/SFIRSTI = first.(s)
/NFOUT23 = fout(n, 3, 2)
/NFOUT23I = fout.(n, 3, 2)
/SFOUT23 = fout(s, '3', '2')
/SFOUT23I = fout.(s, '3', '2')
/NLAST = last(n)
/NLASTI = last.(n)
/SLAST = last(s)
/SLASTI = last.(s)
/NMAX = max(n)
/NMAXI = max.(n)
/SMAX = max(s)
/SMAXI = max.(s)
/NMEAN = mean(n)
/NMEANI = mean.(n)
/NMIN = min(n)
/NMINI = min.(n)
/SMIN = min(s)
/SMINI = min.(s)
/NN = n(n)
/NNI = n.(n)
/SN = n(s)
/SNI = n.(s)
/NNMISS = nmiss(n)
/NNMISSI = nmiss.(n)
/SNMISS = nmiss(s)
/SNMISSI = nmiss.(s)
/NNU = nu(n)
/NNUI = nu.(n)
/SNU = nu(s)
/SNUI = nu.(s)
/NNUMISS = numiss(n)
/NNUMISSI = numiss.(n)
/SNUMISS = numiss(s)
/SNUMISSI = numiss.(s)
/NPGT2 = pgt(n, 2)
/NPGT2I = pgt.(n, 2)
/SPGT2 = pgt(s, '2')
/SPGT2I = pgt.(s, '2')
/NPIN23 = pin(n, 2, 3)
/NPIN23I = pin.(n, 2, 3)
/SPIN23 = pin(s, '2', '3')
/SPIN23I = pin.(s, '2', '3')
/NPLT2 = plt(n, 2)
/NPLT2I = plt.(n, 2)
/SPLT2 = plt(s, '2')
/SPLT2I = plt.(s, '2')
/NPOUT23 = pout(n, 2, 3)
/NPOUT23I = pout.(n, 2, 3)
/SPOUT23 = pout(s, '2', '3')
/SPOUT23I = pout.(s, '2', '3')
/NMEDIAN = median(n)
/NMEDIANI = median.(n)
/NSD = sd(n)
/NSDI = sd.(n)
/NSUM = sum(n)
/NSUMI = sum.(n).
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/aggregate.at:166: pspp -O format=csv aggregate.sps"
at_fn_check_prepare_trace "aggregate.at:166"
( $at_check_trace; pspp -O format=csv aggregate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:166"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/aggregate.at:166: sed 's/^[^:]*:[0-9]*: //' < stdout"
at_fn_check_prepare_trace "aggregate.at:166"
( $at_check_trace; sed 's/^[^:]*:[0-9]*: //' < stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
Table: Data List
G,N,NI,NU,NUI,NFGT2,NFGT2I,SFGT2,SFGT2I,NFIN23,NFIN23I,SFIN23,SFIN23I,NFLT2,NFLT2I,SFLT2,SFLT2I,NFIRST,NFIRSTI,SFIRST,SFIRSTI,NFOUT23,NFOUT23I,SFOUT23,SFOUT23I,NLAST,NLASTI,SLAST,SLASTI,NMAX,NMAXI,SMAX,SMAXI,NMEAN,NMEANI,NMIN,NMINI,SMIN,SMINI,NN,NNI,SN,SNI,NNMISS,NNMISSI,SNMISS,SNMISSI,NNU,NNUI,SNU,SNUI,NNUMISS,NNUMISSI,SNUMISS,SNUMISSI,NPGT2,NPGT2I,SPGT2,SPGT2I,NPIN23,NPIN23I,SPIN23,SPIN23I,NPLT2,NPLT2I,SPLT2,SPLT2I,NPOUT23,NPOUT23I,SPOUT23,SPOUT23I,NMEDIAN,NMEDIANI,NSD,NSDI,NSUM,NSUMI
1,7.00,7.00,6,6,. ,.429,. ,.429,. ,.286,. ,.286,. ,.429,. ,.429,.,0,,0,. ,.714,. ,.714,.,5,,5,.,5,,5,. ,2.29,.,0,,0,6.00,7.00,6.00,7.00,1.00,.00,1.00,.00,5,6,5,6,1,0,1,0,. ,42.9,. ,42.9,. ,28.6,. ,28.6,. ,42.9,. ,42.9,. ,71.4,. ,71.4,. ,2.00,. ,1.80,. ,16.00
2,5.00,5.00,4,4,. ,. ,. ,1.000,. ,. ,. ,.000,. ,. ,. ,.000,.,.,,4,. ,. ,. ,1.000,.,.,,8,.,.,,8,. ,. ,.,.,,4,3.00,3.00,3.00,5.00,2.00,2.00,2.00,.00,3,3,3,4,1,1,1,0,. ,. ,. ,100.0,. ,. ,. ,.0,. ,. ,. ,.0,. ,. ,. ,100.0,. ,. ,. ,. ,. ,.
3,2.00,2.00,1,1,.000,.000,.000,.000,.000,.000,.000,.000,1.000,1.000,1.000,1.000,1,1,1,1,1.000,1.000,1.000,1.000,1,1,1,1,1,1,1,1,1.00,1.00,1,1,1,1,2.00,2.00,2.00,2.00,.00,.00,.00,.00,1,1,1,1,0,0,0,0,.0,.0,.0,.0,.0,.0,.0,.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,1.00,1.00,.00,.00,2.00,2.00
4,1.00,1.00,1,1,. ,. ,. ,1.000,. ,. ,. ,.000,. ,. ,. ,.000,.,.,,4,. ,. ,. ,1.000,.,.,,4,.,.,,4,. ,. ,.,.,,4,.00,.00,.00,1.00,1.00,1.00,1.00,.00,0,0,0,1,1,1,1,0,. ,. ,. ,100.0,. ,. ,. ,.0,. ,. ,. ,.0,. ,. ,. ,100.0,. ,. ,. ,. ,. ,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:166"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_411
#AT_START_412
at_fn_group_banner 412 'aggregate.at:167' \
"AGGREGATE unsorted data to active file, itemwise missing" "" 65
at_xfail=no
(
$as_echo "412. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >aggregate.data <<'_ATEOF'
2 42
1001
4 41
3112
1112
2661
1221
2771
1331
1441
2881
1551
_ATEOF
cat >aggregate.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='aggregate.data' /G N 1-2 S 3(a) W 4.
WEIGHT BY w.
MISSING VALUES n(4) s('4').
AGGREGATE OUTFILE=*
/DOCUMENT
/BREAK=g
/N = n
/NI = n./
NU = nu
/NUI = nu./
NFGT2 = fgt(n, 2)
/NFGT2I = fgt.(n, 2)
/SFGT2 = fgt(s, '2')
/SFGT2I = fgt.(s, '2')
/NFIN23 = fin(n, 2, 3)
/NFIN23I = fin.(n, 2, 3)
/SFIN23 = fin(s, '2', '3')
/SFIN23I = fin.(s, '2', '3')
/NFLT2 = flt(n, 2)
/NFLT2I = flt.(n, 2)
/SFLT2 = flt(s, '2')
/SFLT2I = flt.(s, '2')
/NFIRST = first(n)
/NFIRSTI = first.(n)
/SFIRST = first(s)
/SFIRSTI = first.(s)
/NFOUT23 = fout(n, 3, 2)
/NFOUT23I = fout.(n, 3, 2)
/SFOUT23 = fout(s, '3', '2')
/SFOUT23I = fout.(s, '3', '2')
/NLAST = last(n)
/NLASTI = last.(n)
/SLAST = last(s)
/SLASTI = last.(s)
/NMAX = max(n)
/NMAXI = max.(n)
/SMAX = max(s)
/SMAXI = max.(s)
/NMEAN = mean(n)
/NMEANI = mean.(n)
/NMIN = min(n)
/NMINI = min.(n)
/SMIN = min(s)
/SMINI = min.(s)
/NN = n(n)
/NNI = n.(n)
/SN = n(s)
/SNI = n.(s)
/NNMISS = nmiss(n)
/NNMISSI = nmiss.(n)
/SNMISS = nmiss(s)
/SNMISSI = nmiss.(s)
/NNU = nu(n)
/NNUI = nu.(n)
/SNU = nu(s)
/SNUI = nu.(s)
/NNUMISS = numiss(n)
/NNUMISSI = numiss.(n)
/SNUMISS = numiss(s)
/SNUMISSI = numiss.(s)
/NPGT2 = pgt(n, 2)
/NPGT2I = pgt.(n, 2)
/SPGT2 = pgt(s, '2')
/SPGT2I = pgt.(s, '2')
/NPIN23 = pin(n, 2, 3)
/NPIN23I = pin.(n, 2, 3)
/SPIN23 = pin(s, '2', '3')
/SPIN23I = pin.(s, '2', '3')
/NPLT2 = plt(n, 2)
/NPLT2I = plt.(n, 2)
/SPLT2 = plt(s, '2')
/SPLT2I = plt.(s, '2')
/NPOUT23 = pout(n, 2, 3)
/NPOUT23I = pout.(n, 2, 3)
/SPOUT23 = pout(s, '2', '3')
/SPOUT23I = pout.(s, '2', '3')
/NMEDIAN = median(n)
/NMEDIANI = median.(n)
/NSD = sd(n)
/NSDI = sd.(n)
/NSUM = sum(n)
/NSUMI = sum.(n).
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/aggregate.at:167: pspp -O format=csv aggregate.sps"
at_fn_check_prepare_trace "aggregate.at:167"
( $at_check_trace; pspp -O format=csv aggregate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:167"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/aggregate.at:167: sed 's/^[^:]*:[0-9]*: //' < stdout"
at_fn_check_prepare_trace "aggregate.at:167"
( $at_check_trace; sed 's/^[^:]*:[0-9]*: //' < stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
Table: Data List
G,N,NI,NU,NUI,NFGT2,NFGT2I,SFGT2,SFGT2I,NFIN23,NFIN23I,SFIN23,SFIN23I,NFLT2,NFLT2I,SFLT2,SFLT2I,NFIRST,NFIRSTI,SFIRST,SFIRSTI,NFOUT23,NFOUT23I,SFOUT23,SFOUT23I,NLAST,NLASTI,SLAST,SLASTI,NMAX,NMAXI,SMAX,SMAXI,NMEAN,NMEANI,NMIN,NMINI,SMIN,SMINI,NN,NNI,SN,SNI,NNMISS,NNMISSI,SNMISS,SNMISSI,NNU,NNUI,SNU,SNUI,NNUMISS,NNUMISSI,SNUMISS,SNUMISSI,NPGT2,NPGT2I,SPGT2,SPGT2I,NPIN23,NPIN23I,SPIN23,SPIN23I,NPLT2,NPLT2I,SPLT2,SPLT2I,NPOUT23,NPOUT23I,SPOUT23,SPOUT23I,NMEDIAN,NMEDIANI,NSD,NSDI,NSUM,NSUMI
1,7.00,7.00,6,6,.333,.429,.333,.429,.333,.286,.333,.286,.500,.429,.500,.429,0,0,0,0,.667,.714,.667,.714,5,5,5,5,5,5,5,5,2.00,2.29,0,0,0,0,6.00,7.00,6.00,7.00,1.00,.00,1.00,.00,5,6,5,6,1,0,1,0,33.3,42.9,33.3,42.9,33.3,28.6,33.3,28.6,50.0,42.9,50.0,42.9,66.7,71.4,66.7,71.4,1.50,2.00,1.79,1.80,12.00,16.00
2,5.00,5.00,4,4,1.000,1.000,1.000,1.000,.000,.000,.000,.000,.000,.000,.000,.000,6,6,6,4,1.000,1.000,1.000,1.000,8,8,8,8,8,8,8,8,7.00,7.00,6,6,6,4,3.00,3.00,3.00,5.00,2.00,2.00,2.00,.00,3,3,3,4,1,1,1,0,100.0,100.0,100.0,100.0,.0,.0,.0,.0,.0,.0,.0,.0,100.0,100.0,100.0,100.0,7.00,7.00,1.00,1.00,21.00,21.00
3,2.00,2.00,1,1,.000,.000,.000,.000,.000,.000,.000,.000,1.000,1.000,1.000,1.000,1,1,1,1,1.000,1.000,1.000,1.000,1,1,1,1,1,1,1,1,1.00,1.00,1,1,1,1,2.00,2.00,2.00,2.00,.00,.00,.00,.00,1,1,1,1,0,0,0,0,.0,.0,.0,.0,.0,.0,.0,.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,1.00,1.00,.00,.00,2.00,2.00
4,1.00,1.00,1,1,. ,. ,. ,1.000,. ,. ,. ,.000,. ,. ,. ,.000,.,.,,4,. ,. ,. ,1.000,.,.,,4,.,.,,4,. ,. ,.,.,,4,.00,.00,.00,1.00,1.00,1.00,1.00,.00,0,0,0,1,1,1,1,0,. ,. ,. ,100.0,. ,. ,. ,.0,. ,. ,. ,.0,. ,. ,. ,100.0,NaN,NaN,. ,. ,. ,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:167"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_412
#AT_START_413
at_fn_group_banner 413 'aggregate.at:168' \
"AGGREGATE unsorted data to active file, columnwise missing" "" 65
at_xfail=no
(
$as_echo "413. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >aggregate.data <<'_ATEOF'
2 42
1001
4 41
3112
1112
2661
1221
2771
1331
1441
2881
1551
_ATEOF
cat >aggregate.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='aggregate.data' /G N 1-2 S 3(a) W 4.
WEIGHT BY w.
MISSING VALUES n(4) s('4').
AGGREGATE OUTFILE=* /MISSING=COLUMNWISE
/DOCUMENT
/BREAK=g
/N = n
/NI = n./
NU = nu
/NUI = nu./
NFGT2 = fgt(n, 2)
/NFGT2I = fgt.(n, 2)
/SFGT2 = fgt(s, '2')
/SFGT2I = fgt.(s, '2')
/NFIN23 = fin(n, 2, 3)
/NFIN23I = fin.(n, 2, 3)
/SFIN23 = fin(s, '2', '3')
/SFIN23I = fin.(s, '2', '3')
/NFLT2 = flt(n, 2)
/NFLT2I = flt.(n, 2)
/SFLT2 = flt(s, '2')
/SFLT2I = flt.(s, '2')
/NFIRST = first(n)
/NFIRSTI = first.(n)
/SFIRST = first(s)
/SFIRSTI = first.(s)
/NFOUT23 = fout(n, 3, 2)
/NFOUT23I = fout.(n, 3, 2)
/SFOUT23 = fout(s, '3', '2')
/SFOUT23I = fout.(s, '3', '2')
/NLAST = last(n)
/NLASTI = last.(n)
/SLAST = last(s)
/SLASTI = last.(s)
/NMAX = max(n)
/NMAXI = max.(n)
/SMAX = max(s)
/SMAXI = max.(s)
/NMEAN = mean(n)
/NMEANI = mean.(n)
/NMIN = min(n)
/NMINI = min.(n)
/SMIN = min(s)
/SMINI = min.(s)
/NN = n(n)
/NNI = n.(n)
/SN = n(s)
/SNI = n.(s)
/NNMISS = nmiss(n)
/NNMISSI = nmiss.(n)
/SNMISS = nmiss(s)
/SNMISSI = nmiss.(s)
/NNU = nu(n)
/NNUI = nu.(n)
/SNU = nu(s)
/SNUI = nu.(s)
/NNUMISS = numiss(n)
/NNUMISSI = numiss.(n)
/SNUMISS = numiss(s)
/SNUMISSI = numiss.(s)
/NPGT2 = pgt(n, 2)
/NPGT2I = pgt.(n, 2)
/SPGT2 = pgt(s, '2')
/SPGT2I = pgt.(s, '2')
/NPIN23 = pin(n, 2, 3)
/NPIN23I = pin.(n, 2, 3)
/SPIN23 = pin(s, '2', '3')
/SPIN23I = pin.(s, '2', '3')
/NPLT2 = plt(n, 2)
/NPLT2I = plt.(n, 2)
/SPLT2 = plt(s, '2')
/SPLT2I = plt.(s, '2')
/NPOUT23 = pout(n, 2, 3)
/NPOUT23I = pout.(n, 2, 3)
/SPOUT23 = pout(s, '2', '3')
/SPOUT23I = pout.(s, '2', '3')
/NMEDIAN = median(n)
/NMEDIANI = median.(n)
/NSD = sd(n)
/NSDI = sd.(n)
/NSUM = sum(n)
/NSUMI = sum.(n).
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/aggregate.at:168: pspp -O format=csv aggregate.sps"
at_fn_check_prepare_trace "aggregate.at:168"
( $at_check_trace; pspp -O format=csv aggregate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:168"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/aggregate.at:168: sed 's/^[^:]*:[0-9]*: //' < stdout"
at_fn_check_prepare_trace "aggregate.at:168"
( $at_check_trace; sed 's/^[^:]*:[0-9]*: //' < stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
Table: Data List
G,N,NI,NU,NUI,NFGT2,NFGT2I,SFGT2,SFGT2I,NFIN23,NFIN23I,SFIN23,SFIN23I,NFLT2,NFLT2I,SFLT2,SFLT2I,NFIRST,NFIRSTI,SFIRST,SFIRSTI,NFOUT23,NFOUT23I,SFOUT23,SFOUT23I,NLAST,NLASTI,SLAST,SLASTI,NMAX,NMAXI,SMAX,SMAXI,NMEAN,NMEANI,NMIN,NMINI,SMIN,SMINI,NN,NNI,SN,SNI,NNMISS,NNMISSI,SNMISS,SNMISSI,NNU,NNUI,SNU,SNUI,NNUMISS,NNUMISSI,SNUMISS,SNUMISSI,NPGT2,NPGT2I,SPGT2,SPGT2I,NPIN23,NPIN23I,SPIN23,SPIN23I,NPLT2,NPLT2I,SPLT2,SPLT2I,NPOUT23,NPOUT23I,SPOUT23,SPOUT23I,NMEDIAN,NMEDIANI,NSD,NSDI,NSUM,NSUMI
1,7.00,7.00,6,6,. ,.429,. ,.429,. ,.286,. ,.286,. ,.429,. ,.429,.,0,,0,. ,.714,. ,.714,.,5,,5,.,5,,5,. ,2.29,.,0,,0,6.00,7.00,6.00,7.00,1.00,.00,1.00,.00,5,6,5,6,1,0,1,0,. ,42.9,. ,42.9,. ,28.6,. ,28.6,. ,42.9,. ,42.9,. ,71.4,. ,71.4,. ,2.00,. ,1.80,. ,16.00
2,5.00,5.00,4,4,. ,. ,. ,1.000,. ,. ,. ,.000,. ,. ,. ,.000,.,.,,4,. ,. ,. ,1.000,.,.,,8,.,.,,8,. ,. ,.,.,,4,3.00,3.00,3.00,5.00,2.00,2.00,2.00,.00,3,3,3,4,1,1,1,0,. ,. ,. ,100.0,. ,. ,. ,.0,. ,. ,. ,.0,. ,. ,. ,100.0,. ,. ,. ,. ,. ,.
3,2.00,2.00,1,1,.000,.000,.000,.000,.000,.000,.000,.000,1.000,1.000,1.000,1.000,1,1,1,1,1.000,1.000,1.000,1.000,1,1,1,1,1,1,1,1,1.00,1.00,1,1,1,1,2.00,2.00,2.00,2.00,.00,.00,.00,.00,1,1,1,1,0,0,0,0,.0,.0,.0,.0,.0,.0,.0,.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,1.00,1.00,.00,.00,2.00,2.00
4,1.00,1.00,1,1,. ,. ,. ,1.000,. ,. ,. ,.000,. ,. ,. ,.000,.,.,,4,. ,. ,. ,1.000,.,.,,4,.,.,,4,. ,. ,.,.,,4,.00,.00,.00,1.00,1.00,1.00,1.00,.00,0,0,0,1,1,1,1,0,. ,. ,. ,100.0,. ,. ,. ,.0,. ,. ,. ,.0,. ,. ,. ,100.0,. ,. ,. ,. ,. ,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:168"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_413
#AT_START_414
at_fn_group_banner 414 'aggregate.at:169' \
"AGGREGATE presorted data to external file, itemwise missing" "" 65
at_xfail=no
(
$as_echo "414. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >aggregate.data <<'_ATEOF'
2 42
1001
4 41
3112
1112
2661
1221
2771
1331
1441
2881
1551
_ATEOF
cat >aggregate.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='aggregate.data' /G N 1-2 S 3(a) W 4.
WEIGHT BY w.
MISSING VALUES n(4) s('4').
SORT CASES BY g.
AGGREGATE OUTFILE='aggregate.sys' /PRESORTED
/DOCUMENT
/BREAK=g
/N = n
/NI = n./
NU = nu
/NUI = nu./
NFGT2 = fgt(n, 2)
/NFGT2I = fgt.(n, 2)
/SFGT2 = fgt(s, '2')
/SFGT2I = fgt.(s, '2')
/NFIN23 = fin(n, 2, 3)
/NFIN23I = fin.(n, 2, 3)
/SFIN23 = fin(s, '2', '3')
/SFIN23I = fin.(s, '2', '3')
/NFLT2 = flt(n, 2)
/NFLT2I = flt.(n, 2)
/SFLT2 = flt(s, '2')
/SFLT2I = flt.(s, '2')
/NFIRST = first(n)
/NFIRSTI = first.(n)
/SFIRST = first(s)
/SFIRSTI = first.(s)
/NFOUT23 = fout(n, 3, 2)
/NFOUT23I = fout.(n, 3, 2)
/SFOUT23 = fout(s, '3', '2')
/SFOUT23I = fout.(s, '3', '2')
/NLAST = last(n)
/NLASTI = last.(n)
/SLAST = last(s)
/SLASTI = last.(s)
/NMAX = max(n)
/NMAXI = max.(n)
/SMAX = max(s)
/SMAXI = max.(s)
/NMEAN = mean(n)
/NMEANI = mean.(n)
/NMIN = min(n)
/NMINI = min.(n)
/SMIN = min(s)
/SMINI = min.(s)
/NN = n(n)
/NNI = n.(n)
/SN = n(s)
/SNI = n.(s)
/NNMISS = nmiss(n)
/NNMISSI = nmiss.(n)
/SNMISS = nmiss(s)
/SNMISSI = nmiss.(s)
/NNU = nu(n)
/NNUI = nu.(n)
/SNU = nu(s)
/SNUI = nu.(s)
/NNUMISS = numiss(n)
/NNUMISSI = numiss.(n)
/SNUMISS = numiss(s)
/SNUMISSI = numiss.(s)
/NPGT2 = pgt(n, 2)
/NPGT2I = pgt.(n, 2)
/SPGT2 = pgt(s, '2')
/SPGT2I = pgt.(s, '2')
/NPIN23 = pin(n, 2, 3)
/NPIN23I = pin.(n, 2, 3)
/SPIN23 = pin(s, '2', '3')
/SPIN23I = pin.(s, '2', '3')
/NPLT2 = plt(n, 2)
/NPLT2I = plt.(n, 2)
/SPLT2 = plt(s, '2')
/SPLT2I = plt.(s, '2')
/NPOUT23 = pout(n, 2, 3)
/NPOUT23I = pout.(n, 2, 3)
/SPOUT23 = pout(s, '2', '3')
/SPOUT23I = pout.(s, '2', '3')
/NMEDIAN = median(n)
/NMEDIANI = median.(n)
/NSD = sd(n)
/NSDI = sd.(n)
/NSUM = sum(n)
/NSUMI = sum.(n).
GET FILE='aggregate.sys'.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/aggregate.at:169: pspp -O format=csv aggregate.sps"
at_fn_check_prepare_trace "aggregate.at:169"
( $at_check_trace; pspp -O format=csv aggregate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:169"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/aggregate.at:169: sed 's/^[^:]*:[0-9]*: //' < stdout"
at_fn_check_prepare_trace "aggregate.at:169"
( $at_check_trace; sed 's/^[^:]*:[0-9]*: //' < stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
Table: Data List
G,N,NI,NU,NUI,NFGT2,NFGT2I,SFGT2,SFGT2I,NFIN23,NFIN23I,SFIN23,SFIN23I,NFLT2,NFLT2I,SFLT2,SFLT2I,NFIRST,NFIRSTI,SFIRST,SFIRSTI,NFOUT23,NFOUT23I,SFOUT23,SFOUT23I,NLAST,NLASTI,SLAST,SLASTI,NMAX,NMAXI,SMAX,SMAXI,NMEAN,NMEANI,NMIN,NMINI,SMIN,SMINI,NN,NNI,SN,SNI,NNMISS,NNMISSI,SNMISS,SNMISSI,NNU,NNUI,SNU,SNUI,NNUMISS,NNUMISSI,SNUMISS,SNUMISSI,NPGT2,NPGT2I,SPGT2,SPGT2I,NPIN23,NPIN23I,SPIN23,SPIN23I,NPLT2,NPLT2I,SPLT2,SPLT2I,NPOUT23,NPOUT23I,SPOUT23,SPOUT23I,NMEDIAN,NMEDIANI,NSD,NSDI,NSUM,NSUMI
1,7.00,7.00,6,6,.333,.429,.333,.429,.333,.286,.333,.286,.500,.429,.500,.429,0,0,0,0,.667,.714,.667,.714,5,5,5,5,5,5,5,5,2.00,2.29,0,0,0,0,6.00,7.00,6.00,7.00,1.00,.00,1.00,.00,5,6,5,6,1,0,1,0,33.3,42.9,33.3,42.9,33.3,28.6,33.3,28.6,50.0,42.9,50.0,42.9,66.7,71.4,66.7,71.4,1.50,2.00,1.79,1.80,12.00,16.00
2,5.00,5.00,4,4,1.000,1.000,1.000,1.000,.000,.000,.000,.000,.000,.000,.000,.000,6,6,6,4,1.000,1.000,1.000,1.000,8,8,8,8,8,8,8,8,7.00,7.00,6,6,6,4,3.00,3.00,3.00,5.00,2.00,2.00,2.00,.00,3,3,3,4,1,1,1,0,100.0,100.0,100.0,100.0,.0,.0,.0,.0,.0,.0,.0,.0,100.0,100.0,100.0,100.0,7.00,7.00,1.00,1.00,21.00,21.00
3,2.00,2.00,1,1,.000,.000,.000,.000,.000,.000,.000,.000,1.000,1.000,1.000,1.000,1,1,1,1,1.000,1.000,1.000,1.000,1,1,1,1,1,1,1,1,1.00,1.00,1,1,1,1,2.00,2.00,2.00,2.00,.00,.00,.00,.00,1,1,1,1,0,0,0,0,.0,.0,.0,.0,.0,.0,.0,.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,1.00,1.00,.00,.00,2.00,2.00
4,1.00,1.00,1,1,. ,. ,. ,1.000,. ,. ,. ,.000,. ,. ,. ,.000,.,.,,4,. ,. ,. ,1.000,.,.,,4,.,.,,4,. ,. ,.,.,,4,.00,.00,.00,1.00,1.00,1.00,1.00,.00,0,0,0,1,1,1,1,0,. ,. ,. ,100.0,. ,. ,. ,.0,. ,. ,. ,.0,. ,. ,. ,100.0,NaN,NaN,. ,. ,. ,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:169"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_414
#AT_START_415
at_fn_group_banner 415 'aggregate.at:170' \
"AGGREGATE presorted data to external file, columnwise missing" "" 65
at_xfail=no
(
$as_echo "415. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >aggregate.data <<'_ATEOF'
2 42
1001
4 41
3112
1112
2661
1221
2771
1331
1441
2881
1551
_ATEOF
cat >aggregate.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='aggregate.data' /G N 1-2 S 3(a) W 4.
WEIGHT BY w.
MISSING VALUES n(4) s('4').
SORT CASES BY g.
AGGREGATE OUTFILE='aggregate.sys' /PRESORTED /MISSING=COLUMNWISE
/DOCUMENT
/BREAK=g
/N = n
/NI = n./
NU = nu
/NUI = nu./
NFGT2 = fgt(n, 2)
/NFGT2I = fgt.(n, 2)
/SFGT2 = fgt(s, '2')
/SFGT2I = fgt.(s, '2')
/NFIN23 = fin(n, 2, 3)
/NFIN23I = fin.(n, 2, 3)
/SFIN23 = fin(s, '2', '3')
/SFIN23I = fin.(s, '2', '3')
/NFLT2 = flt(n, 2)
/NFLT2I = flt.(n, 2)
/SFLT2 = flt(s, '2')
/SFLT2I = flt.(s, '2')
/NFIRST = first(n)
/NFIRSTI = first.(n)
/SFIRST = first(s)
/SFIRSTI = first.(s)
/NFOUT23 = fout(n, 3, 2)
/NFOUT23I = fout.(n, 3, 2)
/SFOUT23 = fout(s, '3', '2')
/SFOUT23I = fout.(s, '3', '2')
/NLAST = last(n)
/NLASTI = last.(n)
/SLAST = last(s)
/SLASTI = last.(s)
/NMAX = max(n)
/NMAXI = max.(n)
/SMAX = max(s)
/SMAXI = max.(s)
/NMEAN = mean(n)
/NMEANI = mean.(n)
/NMIN = min(n)
/NMINI = min.(n)
/SMIN = min(s)
/SMINI = min.(s)
/NN = n(n)
/NNI = n.(n)
/SN = n(s)
/SNI = n.(s)
/NNMISS = nmiss(n)
/NNMISSI = nmiss.(n)
/SNMISS = nmiss(s)
/SNMISSI = nmiss.(s)
/NNU = nu(n)
/NNUI = nu.(n)
/SNU = nu(s)
/SNUI = nu.(s)
/NNUMISS = numiss(n)
/NNUMISSI = numiss.(n)
/SNUMISS = numiss(s)
/SNUMISSI = numiss.(s)
/NPGT2 = pgt(n, 2)
/NPGT2I = pgt.(n, 2)
/SPGT2 = pgt(s, '2')
/SPGT2I = pgt.(s, '2')
/NPIN23 = pin(n, 2, 3)
/NPIN23I = pin.(n, 2, 3)
/SPIN23 = pin(s, '2', '3')
/SPIN23I = pin.(s, '2', '3')
/NPLT2 = plt(n, 2)
/NPLT2I = plt.(n, 2)
/SPLT2 = plt(s, '2')
/SPLT2I = plt.(s, '2')
/NPOUT23 = pout(n, 2, 3)
/NPOUT23I = pout.(n, 2, 3)
/SPOUT23 = pout(s, '2', '3')
/SPOUT23I = pout.(s, '2', '3')
/NMEDIAN = median(n)
/NMEDIANI = median.(n)
/NSD = sd(n)
/NSDI = sd.(n)
/NSUM = sum(n)
/NSUMI = sum.(n).
GET FILE='aggregate.sys'.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/aggregate.at:170: pspp -O format=csv aggregate.sps"
at_fn_check_prepare_trace "aggregate.at:170"
( $at_check_trace; pspp -O format=csv aggregate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:170"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/aggregate.at:170: sed 's/^[^:]*:[0-9]*: //' < stdout"
at_fn_check_prepare_trace "aggregate.at:170"
( $at_check_trace; sed 's/^[^:]*:[0-9]*: //' < stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
Table: Data List
G,N,NI,NU,NUI,NFGT2,NFGT2I,SFGT2,SFGT2I,NFIN23,NFIN23I,SFIN23,SFIN23I,NFLT2,NFLT2I,SFLT2,SFLT2I,NFIRST,NFIRSTI,SFIRST,SFIRSTI,NFOUT23,NFOUT23I,SFOUT23,SFOUT23I,NLAST,NLASTI,SLAST,SLASTI,NMAX,NMAXI,SMAX,SMAXI,NMEAN,NMEANI,NMIN,NMINI,SMIN,SMINI,NN,NNI,SN,SNI,NNMISS,NNMISSI,SNMISS,SNMISSI,NNU,NNUI,SNU,SNUI,NNUMISS,NNUMISSI,SNUMISS,SNUMISSI,NPGT2,NPGT2I,SPGT2,SPGT2I,NPIN23,NPIN23I,SPIN23,SPIN23I,NPLT2,NPLT2I,SPLT2,SPLT2I,NPOUT23,NPOUT23I,SPOUT23,SPOUT23I,NMEDIAN,NMEDIANI,NSD,NSDI,NSUM,NSUMI
1,7.00,7.00,6,6,. ,.429,. ,.429,. ,.286,. ,.286,. ,.429,. ,.429,.,0,,0,. ,.714,. ,.714,.,5,,5,.,5,,5,. ,2.29,.,0,,0,6.00,7.00,6.00,7.00,1.00,.00,1.00,.00,5,6,5,6,1,0,1,0,. ,42.9,. ,42.9,. ,28.6,. ,28.6,. ,42.9,. ,42.9,. ,71.4,. ,71.4,. ,2.00,. ,1.80,. ,16.00
2,5.00,5.00,4,4,. ,. ,. ,1.000,. ,. ,. ,.000,. ,. ,. ,.000,.,.,,4,. ,. ,. ,1.000,.,.,,8,.,.,,8,. ,. ,.,.,,4,3.00,3.00,3.00,5.00,2.00,2.00,2.00,.00,3,3,3,4,1,1,1,0,. ,. ,. ,100.0,. ,. ,. ,.0,. ,. ,. ,.0,. ,. ,. ,100.0,. ,. ,. ,. ,. ,.
3,2.00,2.00,1,1,.000,.000,.000,.000,.000,.000,.000,.000,1.000,1.000,1.000,1.000,1,1,1,1,1.000,1.000,1.000,1.000,1,1,1,1,1,1,1,1,1.00,1.00,1,1,1,1,2.00,2.00,2.00,2.00,.00,.00,.00,.00,1,1,1,1,0,0,0,0,.0,.0,.0,.0,.0,.0,.0,.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,1.00,1.00,.00,.00,2.00,2.00
4,1.00,1.00,1,1,. ,. ,. ,1.000,. ,. ,. ,.000,. ,. ,. ,.000,.,.,,4,. ,. ,. ,1.000,.,.,,4,.,.,,4,. ,. ,.,.,,4,.00,.00,.00,1.00,1.00,1.00,1.00,.00,0,0,0,1,1,1,1,0,. ,. ,. ,100.0,. ,. ,. ,.0,. ,. ,. ,.0,. ,. ,. ,100.0,. ,. ,. ,. ,. ,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:170"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_415
#AT_START_416
at_fn_group_banner 416 'aggregate.at:171' \
"AGGREGATE unsorted data to external file, itemwise missing" "" 65
at_xfail=no
(
$as_echo "416. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >aggregate.data <<'_ATEOF'
2 42
1001
4 41
3112
1112
2661
1221
2771
1331
1441
2881
1551
_ATEOF
cat >aggregate.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='aggregate.data' /G N 1-2 S 3(a) W 4.
WEIGHT BY w.
MISSING VALUES n(4) s('4').
AGGREGATE OUTFILE='aggregate.sys'
/DOCUMENT
/BREAK=g
/N = n
/NI = n./
NU = nu
/NUI = nu./
NFGT2 = fgt(n, 2)
/NFGT2I = fgt.(n, 2)
/SFGT2 = fgt(s, '2')
/SFGT2I = fgt.(s, '2')
/NFIN23 = fin(n, 2, 3)
/NFIN23I = fin.(n, 2, 3)
/SFIN23 = fin(s, '2', '3')
/SFIN23I = fin.(s, '2', '3')
/NFLT2 = flt(n, 2)
/NFLT2I = flt.(n, 2)
/SFLT2 = flt(s, '2')
/SFLT2I = flt.(s, '2')
/NFIRST = first(n)
/NFIRSTI = first.(n)
/SFIRST = first(s)
/SFIRSTI = first.(s)
/NFOUT23 = fout(n, 3, 2)
/NFOUT23I = fout.(n, 3, 2)
/SFOUT23 = fout(s, '3', '2')
/SFOUT23I = fout.(s, '3', '2')
/NLAST = last(n)
/NLASTI = last.(n)
/SLAST = last(s)
/SLASTI = last.(s)
/NMAX = max(n)
/NMAXI = max.(n)
/SMAX = max(s)
/SMAXI = max.(s)
/NMEAN = mean(n)
/NMEANI = mean.(n)
/NMIN = min(n)
/NMINI = min.(n)
/SMIN = min(s)
/SMINI = min.(s)
/NN = n(n)
/NNI = n.(n)
/SN = n(s)
/SNI = n.(s)
/NNMISS = nmiss(n)
/NNMISSI = nmiss.(n)
/SNMISS = nmiss(s)
/SNMISSI = nmiss.(s)
/NNU = nu(n)
/NNUI = nu.(n)
/SNU = nu(s)
/SNUI = nu.(s)
/NNUMISS = numiss(n)
/NNUMISSI = numiss.(n)
/SNUMISS = numiss(s)
/SNUMISSI = numiss.(s)
/NPGT2 = pgt(n, 2)
/NPGT2I = pgt.(n, 2)
/SPGT2 = pgt(s, '2')
/SPGT2I = pgt.(s, '2')
/NPIN23 = pin(n, 2, 3)
/NPIN23I = pin.(n, 2, 3)
/SPIN23 = pin(s, '2', '3')
/SPIN23I = pin.(s, '2', '3')
/NPLT2 = plt(n, 2)
/NPLT2I = plt.(n, 2)
/SPLT2 = plt(s, '2')
/SPLT2I = plt.(s, '2')
/NPOUT23 = pout(n, 2, 3)
/NPOUT23I = pout.(n, 2, 3)
/SPOUT23 = pout(s, '2', '3')
/SPOUT23I = pout.(s, '2', '3')
/NMEDIAN = median(n)
/NMEDIANI = median.(n)
/NSD = sd(n)
/NSDI = sd.(n)
/NSUM = sum(n)
/NSUMI = sum.(n).
GET FILE='aggregate.sys'.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/aggregate.at:171: pspp -O format=csv aggregate.sps"
at_fn_check_prepare_trace "aggregate.at:171"
( $at_check_trace; pspp -O format=csv aggregate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:171"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/aggregate.at:171: sed 's/^[^:]*:[0-9]*: //' < stdout"
at_fn_check_prepare_trace "aggregate.at:171"
( $at_check_trace; sed 's/^[^:]*:[0-9]*: //' < stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
Table: Data List
G,N,NI,NU,NUI,NFGT2,NFGT2I,SFGT2,SFGT2I,NFIN23,NFIN23I,SFIN23,SFIN23I,NFLT2,NFLT2I,SFLT2,SFLT2I,NFIRST,NFIRSTI,SFIRST,SFIRSTI,NFOUT23,NFOUT23I,SFOUT23,SFOUT23I,NLAST,NLASTI,SLAST,SLASTI,NMAX,NMAXI,SMAX,SMAXI,NMEAN,NMEANI,NMIN,NMINI,SMIN,SMINI,NN,NNI,SN,SNI,NNMISS,NNMISSI,SNMISS,SNMISSI,NNU,NNUI,SNU,SNUI,NNUMISS,NNUMISSI,SNUMISS,SNUMISSI,NPGT2,NPGT2I,SPGT2,SPGT2I,NPIN23,NPIN23I,SPIN23,SPIN23I,NPLT2,NPLT2I,SPLT2,SPLT2I,NPOUT23,NPOUT23I,SPOUT23,SPOUT23I,NMEDIAN,NMEDIANI,NSD,NSDI,NSUM,NSUMI
1,7.00,7.00,6,6,.333,.429,.333,.429,.333,.286,.333,.286,.500,.429,.500,.429,0,0,0,0,.667,.714,.667,.714,5,5,5,5,5,5,5,5,2.00,2.29,0,0,0,0,6.00,7.00,6.00,7.00,1.00,.00,1.00,.00,5,6,5,6,1,0,1,0,33.3,42.9,33.3,42.9,33.3,28.6,33.3,28.6,50.0,42.9,50.0,42.9,66.7,71.4,66.7,71.4,1.50,2.00,1.79,1.80,12.00,16.00
2,5.00,5.00,4,4,1.000,1.000,1.000,1.000,.000,.000,.000,.000,.000,.000,.000,.000,6,6,6,4,1.000,1.000,1.000,1.000,8,8,8,8,8,8,8,8,7.00,7.00,6,6,6,4,3.00,3.00,3.00,5.00,2.00,2.00,2.00,.00,3,3,3,4,1,1,1,0,100.0,100.0,100.0,100.0,.0,.0,.0,.0,.0,.0,.0,.0,100.0,100.0,100.0,100.0,7.00,7.00,1.00,1.00,21.00,21.00
3,2.00,2.00,1,1,.000,.000,.000,.000,.000,.000,.000,.000,1.000,1.000,1.000,1.000,1,1,1,1,1.000,1.000,1.000,1.000,1,1,1,1,1,1,1,1,1.00,1.00,1,1,1,1,2.00,2.00,2.00,2.00,.00,.00,.00,.00,1,1,1,1,0,0,0,0,.0,.0,.0,.0,.0,.0,.0,.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,1.00,1.00,.00,.00,2.00,2.00
4,1.00,1.00,1,1,. ,. ,. ,1.000,. ,. ,. ,.000,. ,. ,. ,.000,.,.,,4,. ,. ,. ,1.000,.,.,,4,.,.,,4,. ,. ,.,.,,4,.00,.00,.00,1.00,1.00,1.00,1.00,.00,0,0,0,1,1,1,1,0,. ,. ,. ,100.0,. ,. ,. ,.0,. ,. ,. ,.0,. ,. ,. ,100.0,NaN,NaN,. ,. ,. ,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:171"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_416
#AT_START_417
at_fn_group_banner 417 'aggregate.at:172' \
"AGGREGATE unsorted data to external file, columnwise missing" "" 65
at_xfail=no
(
$as_echo "417. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >aggregate.data <<'_ATEOF'
2 42
1001
4 41
3112
1112
2661
1221
2771
1331
1441
2881
1551
_ATEOF
cat >aggregate.sps <<'_ATEOF'
DATA LIST NOTABLE FILE='aggregate.data' /G N 1-2 S 3(a) W 4.
WEIGHT BY w.
MISSING VALUES n(4) s('4').
AGGREGATE OUTFILE='aggregate.sys' /MISSING=COLUMNWISE
/DOCUMENT
/BREAK=g
/N = n
/NI = n./
NU = nu
/NUI = nu./
NFGT2 = fgt(n, 2)
/NFGT2I = fgt.(n, 2)
/SFGT2 = fgt(s, '2')
/SFGT2I = fgt.(s, '2')
/NFIN23 = fin(n, 2, 3)
/NFIN23I = fin.(n, 2, 3)
/SFIN23 = fin(s, '2', '3')
/SFIN23I = fin.(s, '2', '3')
/NFLT2 = flt(n, 2)
/NFLT2I = flt.(n, 2)
/SFLT2 = flt(s, '2')
/SFLT2I = flt.(s, '2')
/NFIRST = first(n)
/NFIRSTI = first.(n)
/SFIRST = first(s)
/SFIRSTI = first.(s)
/NFOUT23 = fout(n, 3, 2)
/NFOUT23I = fout.(n, 3, 2)
/SFOUT23 = fout(s, '3', '2')
/SFOUT23I = fout.(s, '3', '2')
/NLAST = last(n)
/NLASTI = last.(n)
/SLAST = last(s)
/SLASTI = last.(s)
/NMAX = max(n)
/NMAXI = max.(n)
/SMAX = max(s)
/SMAXI = max.(s)
/NMEAN = mean(n)
/NMEANI = mean.(n)
/NMIN = min(n)
/NMINI = min.(n)
/SMIN = min(s)
/SMINI = min.(s)
/NN = n(n)
/NNI = n.(n)
/SN = n(s)
/SNI = n.(s)
/NNMISS = nmiss(n)
/NNMISSI = nmiss.(n)
/SNMISS = nmiss(s)
/SNMISSI = nmiss.(s)
/NNU = nu(n)
/NNUI = nu.(n)
/SNU = nu(s)
/SNUI = nu.(s)
/NNUMISS = numiss(n)
/NNUMISSI = numiss.(n)
/SNUMISS = numiss(s)
/SNUMISSI = numiss.(s)
/NPGT2 = pgt(n, 2)
/NPGT2I = pgt.(n, 2)
/SPGT2 = pgt(s, '2')
/SPGT2I = pgt.(s, '2')
/NPIN23 = pin(n, 2, 3)
/NPIN23I = pin.(n, 2, 3)
/SPIN23 = pin(s, '2', '3')
/SPIN23I = pin.(s, '2', '3')
/NPLT2 = plt(n, 2)
/NPLT2I = plt.(n, 2)
/SPLT2 = plt(s, '2')
/SPLT2I = plt.(s, '2')
/NPOUT23 = pout(n, 2, 3)
/NPOUT23I = pout.(n, 2, 3)
/SPOUT23 = pout(s, '2', '3')
/SPOUT23I = pout.(s, '2', '3')
/NMEDIAN = median(n)
/NMEDIANI = median.(n)
/NSD = sd(n)
/NSDI = sd.(n)
/NSUM = sum(n)
/NSUMI = sum.(n).
GET FILE='aggregate.sys'.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/aggregate.at:172: pspp -O format=csv aggregate.sps"
at_fn_check_prepare_trace "aggregate.at:172"
( $at_check_trace; pspp -O format=csv aggregate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:172"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/aggregate.at:172: sed 's/^[^:]*:[0-9]*: //' < stdout"
at_fn_check_prepare_trace "aggregate.at:172"
( $at_check_trace; sed 's/^[^:]*:[0-9]*: //' < stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
warning: AGGREGATE: The value arguments passed to the FOUT function are out-of-order. They will be treated as if they had been specified in the correct order.
Table: Data List
G,N,NI,NU,NUI,NFGT2,NFGT2I,SFGT2,SFGT2I,NFIN23,NFIN23I,SFIN23,SFIN23I,NFLT2,NFLT2I,SFLT2,SFLT2I,NFIRST,NFIRSTI,SFIRST,SFIRSTI,NFOUT23,NFOUT23I,SFOUT23,SFOUT23I,NLAST,NLASTI,SLAST,SLASTI,NMAX,NMAXI,SMAX,SMAXI,NMEAN,NMEANI,NMIN,NMINI,SMIN,SMINI,NN,NNI,SN,SNI,NNMISS,NNMISSI,SNMISS,SNMISSI,NNU,NNUI,SNU,SNUI,NNUMISS,NNUMISSI,SNUMISS,SNUMISSI,NPGT2,NPGT2I,SPGT2,SPGT2I,NPIN23,NPIN23I,SPIN23,SPIN23I,NPLT2,NPLT2I,SPLT2,SPLT2I,NPOUT23,NPOUT23I,SPOUT23,SPOUT23I,NMEDIAN,NMEDIANI,NSD,NSDI,NSUM,NSUMI
1,7.00,7.00,6,6,. ,.429,. ,.429,. ,.286,. ,.286,. ,.429,. ,.429,.,0,,0,. ,.714,. ,.714,.,5,,5,.,5,,5,. ,2.29,.,0,,0,6.00,7.00,6.00,7.00,1.00,.00,1.00,.00,5,6,5,6,1,0,1,0,. ,42.9,. ,42.9,. ,28.6,. ,28.6,. ,42.9,. ,42.9,. ,71.4,. ,71.4,. ,2.00,. ,1.80,. ,16.00
2,5.00,5.00,4,4,. ,. ,. ,1.000,. ,. ,. ,.000,. ,. ,. ,.000,.,.,,4,. ,. ,. ,1.000,.,.,,8,.,.,,8,. ,. ,.,.,,4,3.00,3.00,3.00,5.00,2.00,2.00,2.00,.00,3,3,3,4,1,1,1,0,. ,. ,. ,100.0,. ,. ,. ,.0,. ,. ,. ,.0,. ,. ,. ,100.0,. ,. ,. ,. ,. ,.
3,2.00,2.00,1,1,.000,.000,.000,.000,.000,.000,.000,.000,1.000,1.000,1.000,1.000,1,1,1,1,1.000,1.000,1.000,1.000,1,1,1,1,1,1,1,1,1.00,1.00,1,1,1,1,2.00,2.00,2.00,2.00,.00,.00,.00,.00,1,1,1,1,0,0,0,0,.0,.0,.0,.0,.0,.0,.0,.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,100.0,1.00,1.00,.00,.00,2.00,2.00
4,1.00,1.00,1,1,. ,. ,. ,1.000,. ,. ,. ,.000,. ,. ,. ,.000,.,.,,4,. ,. ,. ,1.000,.,.,,4,.,.,,4,. ,. ,.,.,,4,.00,.00,.00,1.00,1.00,1.00,1.00,.00,0,0,0,1,1,1,1,0,. ,. ,. ,100.0,. ,. ,. ,.0,. ,. ,. ,.0,. ,. ,. ,100.0,. ,. ,. ,. ,. ,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:172"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_417
#AT_START_418
at_fn_group_banner 418 'aggregate.at:174' \
"AGGREGATE crash with MAX function" " " 65
at_xfail=no
(
$as_echo "418. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >aggregate.sps <<'_ATEOF'
DATA LIST LIST /X (F8.2) Y (a25).
BEGIN DATA.
87.50 foo
87.34 bar
1 bar
END DATA.
AGGREGATE OUTFILE=* /BREAK=y /X=MAX(x).
LIST /x y.
_ATEOF
{ set +x
$as_echo "$at_srcdir/aggregate.at:187: pspp -O format=csv aggregate.sps"
at_fn_check_prepare_trace "aggregate.at:187"
( $at_check_trace; pspp -O format=csv aggregate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
X,F8.2
Y,A25
Table: Data List
X,Y
87.34,bar
87.50,foo
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:187"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_418
#AT_START_419
at_fn_group_banner 419 'aggregate.at:200' \
"AGGREGATE crash with invalid syntax" " " 65
at_xfail=no
(
$as_echo "419. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >aggregate.sps <<'_ATEOF'
INPUT PROGRAM.
LOOP c=1 TO 20.
COMPUTE x=UNIFORM(10)
END CASE.
END LOOP.
END FILE.
END INPUT PROGRAM.
AGGREGATE /BREAK=x .
_ATEOF
{ set +x
$as_echo "$at_srcdir/aggregate.at:212: pspp -O format=csv aggregate.sps"
at_fn_check_prepare_trace "aggregate.at:212"
( $at_check_trace; pspp -O format=csv aggregate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/aggregate.at:212"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_419
#AT_START_420
at_fn_group_banner 420 'aggregate.at:216' \
"AGGREGATE mode=addvariables" " " 65
at_xfail=no
(
$as_echo "420. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >addvariables.sps <<'_ATEOF'
data list notable list /x * cn * y *.
begin data.
1 1 2
3 2 3
3 3 4
5 4 6
7 5 8
7 6 9
7 7 20
9 8 11
end data.
aggregate outfile=* mode=addvariables
/break = x
/sum = sum(y)
/mean = mean (y)
/median = median (y).
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/aggregate.at:239: pspp -O format=csv addvariables.sps"
at_fn_check_prepare_trace "aggregate.at:239"
( $at_check_trace; pspp -O format=csv addvariables.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
x,cn,y,sum,mean,median
1.00,1.00,2.00,2.00,2.00,2.00
3.00,2.00,3.00,7.00,3.50,3.50
3.00,3.00,4.00,7.00,3.50,3.50
5.00,4.00,6.00,6.00,6.00,6.00
7.00,5.00,8.00,37.00,12.33,9.00
7.00,6.00,9.00,37.00,12.33,9.00
7.00,7.00,20.00,37.00,12.33,9.00
9.00,8.00,11.00,11.00,11.00,11.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/aggregate.at:239"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_420
#AT_START_421
at_fn_group_banner 421 'aggregate.at:255' \
"AGGREGATE buggy duplicate variables" " " 65
at_xfail=no
(
$as_echo "421. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >dup-variables.sps <<'_ATEOF'
DATA LIST NOTABLE LIST /x * .
begin data
1
1
1
1
2
2
2
3
3
3
3
3
3
end data.
AGGREGATE OUTFILE=* MODE=ADDVARIABLES
/BREAK= x
/N_BREAK = N.
AGGREGATE OUTFILE=* MODE=ADDVARIABLES
/BREAK= x
/N_BREAK = N.
_ATEOF
{ set +x
$as_echo "$at_srcdir/aggregate.at:285: pspp -O format=csv dup-variables.sps"
at_fn_check_prepare_trace "aggregate.at:285"
( $at_check_trace; pspp -O format=csv dup-variables.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"dup-variables.sps:24: error: AGGREGATE: Variable name N_BREAK is not unique within the aggregate file dictionary, which contains the aggregate variables and the break variables.\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/aggregate.at:285"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_421
#AT_START_422
at_fn_group_banner 422 'autorecode.at:3' \
"AUTORECODE numbers and short strings" " " 66
at_xfail=no
(
$as_echo "422. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >autorecode.sps <<'_ATEOF'
data list /X 1-5(a) Y 7.
begin data.
lasdj 1
asdfk 0
asdfj 2
asdfj 1
asdfk 2
asdfj 9
lajks 9
asdfk 0
asdfk 1
end data.
autorecode x y into A B/descend.
list.
compute Z=trunc(y/2).
autorecode z into W.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/autorecode.at:25: pspp -O format=csv autorecode.sps"
at_fn_check_prepare_trace "autorecode.at:25"
( $at_check_trace; pspp -O format=csv autorecode.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading 1 record from INLINE.
Variable,Record,Columns,Format
X,1,1- 5,A5
Y,1,7- 7,F1.0
Table: Data List
X,Y,A,B
lasdj,1,1.00,3.00
asdfk,0,3.00,4.00
asdfj,2,4.00,2.00
asdfj,1,4.00,3.00
asdfk,2,3.00,2.00
asdfj,9,4.00,1.00
lajks,9,2.00,1.00
asdfk,0,3.00,4.00
asdfk,1,3.00,3.00
Table: Data List
X,Y,A,B,Z,W
lasdj,1,1.00,3.00,.00,1.00
asdfk,0,3.00,4.00,.00,1.00
asdfj,2,4.00,2.00,1.00,2.00
asdfj,1,4.00,3.00,.00,1.00
asdfk,2,3.00,2.00,1.00,2.00
asdfj,9,4.00,1.00,4.00,3.00
lajks,9,2.00,1.00,4.00,3.00
asdfk,0,3.00,4.00,.00,1.00
asdfk,1,3.00,3.00,.00,1.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/autorecode.at:25"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_422
#AT_START_423
at_fn_group_banner 423 'autorecode.at:59' \
"AUTORECODE long strings and check the value labels" "" 66
at_xfail=no
(
$as_echo "423. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >ar.sps <<'_ATEOF'
data list notable list /s (a16) x *.
begin data.
widgets 1
thingummies 2
oojars 3
widgets 4
oojars 5
thingummies 6
oojimiflips 7
end data.
autorecode s into new.
list.
display dictionary.
_ATEOF
{ set +x
$as_echo "$at_srcdir/autorecode.at:79: pspp -O format=csv ar.sps"
at_fn_check_prepare_trace "autorecode.at:79"
( $at_check_trace; pspp -O format=csv ar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
s,x,new
widgets ,1.00,4.00
thingummies ,2.00,3.00
oojars ,3.00,1.00
widgets ,4.00,4.00
oojars ,5.00,1.00
thingummies ,6.00,3.00
oojimiflips ,7.00,2.00
Variable,Description,Position
s,Format: A16,1
x,Format: F8.2,2
new,\"Format: F8.2
Value,Label
1.00,oojars
2.00,oojimiflips
3.00,thingummies
4.00,widgets\",3
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/autorecode.at:79"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_423
#AT_START_424
at_fn_group_banner 424 'autorecode.at:105' \
"AUTORECODE group subcommand" " " 66
at_xfail=no
(
$as_echo "424. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >ar-group.sps <<'_ATEOF'
data list notable list /x * y *.
begin data.
11 10
12 12
13 15
14 11
15 12
16 18
end data.
autorecode
x y into a b
/group.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/autorecode.at:124: pspp -O format=csv ar-group.sps"
at_fn_check_prepare_trace "autorecode.at:124"
( $at_check_trace; pspp -O format=csv ar-group.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
x,y,a,b
11.00,10.00,2.00,1.00
12.00,12.00,3.00,3.00
13.00,15.00,4.00,6.00
14.00,11.00,5.00,2.00
15.00,12.00,6.00,3.00
16.00,18.00,7.00,8.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/autorecode.at:124"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_424
#AT_START_425
at_fn_group_banner 425 'autorecode.at:139' \
"AUTORECODE group - string variables" " " 66
at_xfail=no
(
$as_echo "425. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >strings.sps <<'_ATEOF'
data list notable list /x (a8) y (a16).
begin data.
fred bert
charlie " "
delta echo
" " windows
" " nothing
end data.
autorecode x y into a b
/group.
delete variables x y.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/autorecode.at:160: pspp -O format=csv strings.sps"
at_fn_check_prepare_trace "autorecode.at:160"
( $at_check_trace; pspp -O format=csv strings.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
a,b
7.00,3.00
4.00,1.00
5.00,6.00
2.00,9.00
2.00,8.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/autorecode.at:160"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_425
#AT_START_426
at_fn_group_banner 426 'autorecode.at:175' \
"AUTORECODE group vs. strings" " " 66
at_xfail=no
(
$as_echo "426. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >ar-strings.sps <<'_ATEOF'
data list notable list /a (a12) b (a6).
begin data.
one nine
two ten
three eleven
four nought
end data.
autorecode a b into x y
/group.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/autorecode.at:191: pspp -O format=csv ar-strings.sps"
at_fn_check_prepare_trace "autorecode.at:191"
( $at_check_trace; pspp -O format=csv ar-strings.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
a,b,x,y
one ,nine ,5.00,3.00
two ,ten ,8.00,6.00
three ,eleven,7.00,1.00
four ,nought,2.00,4.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/autorecode.at:191"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_426
#AT_START_427
at_fn_group_banner 427 'autorecode.at:205' \
"AUTORECODE /blank" " " 66
at_xfail=no
(
$as_echo "427. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >auto-blank.sps <<'_ATEOF'
data list notable list /x (a8) y * z (a16).
begin data.
one 2 fred
two 4 ""
"" 4 fred
"" 2 charliebrown
three 2 charliebrown
end data.
autorecode variables x y z into a b c /blank=missing.
list a b c y.
_ATEOF
{ set +x
$as_echo "$at_srcdir/autorecode.at:222: pspp -O format=csv auto-blank.sps"
at_fn_check_prepare_trace "autorecode.at:222"
( $at_check_trace; pspp -O format=csv auto-blank.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
a,b,c,y
1.00,1.00,2.00,2.00
3.00,2.00,. ,4.00
. ,2.00,2.00,4.00
. ,1.00,1.00,2.00
2.00,1.00,1.00,2.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/autorecode.at:222"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_427
#AT_START_428
at_fn_group_banner 428 'autorecode.at:236' \
"AUTORECODE with TEMPORARY" " " 66
at_xfail=no
(
$as_echo "428. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >autorecode.sps <<'_ATEOF'
data list /X 1-5(a) Y 7.
begin data.
lasdj 1
asdfk 0
asdfj 2
asdfj 1
asdfk 2
asdfj 9
lajks 9
asdfk 0
asdfk 1
end data.
temporary.
select if y > 1.
autorecode x y into A B/descend.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/autorecode.at:256: pspp -O format=csv autorecode.sps"
at_fn_check_prepare_trace "autorecode.at:256"
( $at_check_trace; pspp -O format=csv autorecode.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading 1 record from INLINE.
Variable,Record,Columns,Format
X,1,1- 5,A5
Y,1,7- 7,F1.0
Table: Data List
X,Y,A,B
lasdj,1,. ,.
asdfk,0,2.00,.
asdfj,2,3.00,2.00
asdfj,1,3.00,.
asdfk,2,2.00,2.00
asdfj,9,3.00,1.00
lajks,9,1.00,1.00
asdfk,0,2.00,.
asdfk,1,2.00,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/autorecode.at:256"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_428
#AT_START_429
at_fn_group_banner 429 'correlations.at:3' \
"CORRELATIONS -- unweighted" " " 67
at_xfail=no
(
$as_echo "429. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >correlations.sps <<'_ATEOF'
set format = F11.3.
data list notable list /foo * bar * wiz * bang *.
begin data.
1 0 3 1
3 9 -50 5
3 4 3 203
4 -9 0 -4
98 78 104 2
3 50 -49 200
. 4 4 4
5 3 0 .
end data.
correlations
variables = foo bar wiz bang
/print nosig
/missing = listwise
.
correlations
variables = bar wiz
/print nosig
/missing = listwise
.
correlations
variables = foo bar wiz bang
/print nosig
/missing = pairwise
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/correlations.at:36: pspp -o pspp.csv correlations.sps"
at_fn_check_prepare_trace "correlations.at:36"
( $at_check_trace; pspp -o pspp.csv correlations.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/correlations.at:36"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/correlations.at:37: cat pspp.csv"
at_fn_check_prepare_trace "correlations.at:37"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Correlations
,,foo,bar,wiz,bang
foo,Pearson Correlation,1.000,.802,.890,-.308
,Sig. (2-tailed),,.055,.017,.553
bar,Pearson Correlation,.802,1.000,.519,.118
,Sig. (2-tailed),.055,,.291,.824
wiz,Pearson Correlation,.890,.519,1.000,-.344
,Sig. (2-tailed),.017,.291,,.505
bang,Pearson Correlation,-.308,.118,-.344,1.000
,Sig. (2-tailed),.553,.824,.505,
Table: Correlations
,,bar,wiz
bar,Pearson Correlation,1.000,.497
,Sig. (2-tailed),,.210
wiz,Pearson Correlation,.497,1.000
,Sig. (2-tailed),.210,
Table: Correlations
,,foo,bar,wiz,bang
foo,Pearson Correlation,1.000,.805,.883,-.308
,Sig. (2-tailed),,.029,.008,.553
,N,7,7,7,6
bar,Pearson Correlation,.805,1.000,.497,.164
,Sig. (2-tailed),.029,,.210,.725
,N,7,8,8,7
wiz,Pearson Correlation,.883,.497,1.000,-.337
,Sig. (2-tailed),.008,.210,,.460
,N,7,8,8,7
bang,Pearson Correlation,-.308,.164,-.337,1.000
,Sig. (2-tailed),.553,.725,.460,
,N,6,7,7,7
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/correlations.at:37"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_429
#AT_START_430
at_fn_group_banner 430 'correlations.at:73' \
"CORRELATIONS -- weighted" " " 67
at_xfail=no
(
$as_echo "430. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >correlations1.sps <<'_ATEOF'
set format = F11.3.
data list notable list /foo * bar * wiz * bang * w *.
begin data.
1 0 3 1 1
3 9 -50 5 2
3 4 3 203 1
4 -9 0 -4 1
98 78 104 2 3
3 50 -49 200 1
end data.
weight by w.
correlations
variables = foo bar wiz bang
/statistics=descriptives xprod
.
_ATEOF
cat >correlations2.sps <<'_ATEOF'
set format = F11.3.
data list notable list /foo * bar * wiz * bang * w *.
begin data.
1 0 3 1 1
3 9 -50 5 1
3 9 -50 5 1
3 4 3 203 1
4 -9 0 -4 1
98 78 104 2 1
98 78 104 2 1
98 78 104 2 1
3 50 -49 200 1
end data.
weight by w.
correlations
variables = foo bar wiz bang
/statistics=descriptives xprod
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/correlations.at:115: pspp -O format=csv correlations1.sps"
at_fn_check_prepare_trace "correlations.at:115"
( $at_check_trace; pspp -O format=csv correlations1.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/correlations.at:115"
$at_failed && at_fn_log_failure
$at_traceon; }
mv stdout expout
{ set +x
$as_echo "$at_srcdir/correlations.at:117: pspp -O format=csv correlations2.sps"
at_fn_check_prepare_trace "correlations.at:117"
( $at_check_trace; pspp -O format=csv correlations2.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/correlations.at:117"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_430
#AT_START_431
at_fn_group_banner 431 'correlations.at:121' \
"CORRELATIONS -- non-square" " " 67
at_xfail=no
(
$as_echo "431. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >corr-ns.sps <<'_ATEOF'
set format = F11.3.
data list notable list /foo * bar * wiz *.
begin data.
1 1 6
2 2 5
3 3 4
4 4 3
5 5 2
6 6 1
end data.
correlations
variables = foo with bar wiz
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/correlations.at:139: pspp -O format=csv corr-ns.sps"
at_fn_check_prepare_trace "correlations.at:139"
( $at_check_trace; pspp -O format=csv corr-ns.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Correlations
,,bar,wiz
foo,Pearson Correlation,1.000,-1.000
,Sig. (2-tailed),.000,.000
,N,6,6
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/correlations.at:139"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_431
#AT_START_432
at_fn_group_banner 432 'correlations.at:150' \
"CORRELATIONS -- crash with WITH keyword" " " 67
at_xfail=no
(
$as_echo "432. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >correlations.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /a b c d e f g h i.
.
BEGIN DATA.
20 21 17 28 23 4.35 24 19 25
28 18 29 30 23 4.55 17 23 28
47 18 30 30 29 4.35 26 31 31
20 7 19 22 22 4.80 24 16 27
19 12 17 27 22 . 22 14 25
22 9 19 30 33 5 29 30 27
41 16 22 32 23 3.90 26 27 23
18 18 20 26 22 5.80 17 20 39
18 24 25 25 31 5.15 27 27 34
19 22 26 23 37 6 41 32 27
23 12 15 29 25 4.10 21 27 20
21 4 28 37 31 5.65 27 18 42
19 5 17 17 29 3.10 19 16 19
21 17 20 35 31 . 28 30 22
END DATA.
CORRELATIONS VARIABLE=a f b WITH c g h i e d/STATISTICS=DESCRIPTIVES.
_ATEOF
{ set +x
$as_echo "$at_srcdir/correlations.at:173: pspp -o pspp.csv correlations.sps"
at_fn_check_prepare_trace "correlations.at:173"
( $at_check_trace; pspp -o pspp.csv correlations.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/correlations.at:173"
$at_failed && at_fn_log_failure
$at_traceon; }
# Check the output, ignoring the actual correlations values since
# they look pretty nonsensical to me for this input (they include NaNs).
{ set +x
$as_echo "$at_srcdir/correlations.at:176: sed '/a,Pearson/,\$s/,\\([^,]*\\),.*/,\\1,.../' pspp.csv"
at_fn_check_prepare_dynamic "sed '/a,Pearson/,$s/,\\([^,]*\\),.*/,\\1,.../' pspp.csv" "correlations.at:176"
( $at_check_trace; sed '/a,Pearson/,$s/,\([^,]*\),.*/,\1,.../' pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Descriptive Statistics
,Mean,Std. Deviation,N
a,24.00,8.93,14.00
f,4.73,.85,12.00
b,14.50,6.41,14.00
c,21.71,4.98,14.00
g,24.86,6.09,14.00
h,23.57,6.30,14.00
i,27.79,6.73,14.00
e,27.21,4.95,14.00
d,27.93,5.23,14.00
Table: Correlations
,,c,g,h,i,e,d
a,Pearson Correlation,...
,Sig. (2-tailed),...
,N,...
f,Pearson Correlation,...
,Sig. (2-tailed),...
,N,...
b,Pearson Correlation,...
,Sig. (2-tailed),...
,N,...
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/correlations.at:176"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_432
#AT_START_433
at_fn_group_banner 433 'correlations.at:206' \
"CORRELATIONS -- incorrect subtable selection" " " 67
at_xfail=no
(
$as_echo "433. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >correlations.sps <<'_ATEOF'
set format = F12.4.
set decimal = dot.
data list notable list /var1 var2 var3 var4 var5 *.
begin data.
7,6,9,2,3
9,12,8,5,8
8,9,7,8,6
8,8,9,10,8
7,6,4,5,3
7,9,8,2,1
9,8,11,,10
8,7,6,,5
6,7,6,,8
6,,3,,4
6,,7,3,3
5,4,2,7,8
9,8,6,11,10
5,6,2,2,4
8,7,6,8,7
10,13,8,12,10
7,8,7,11,2
8,7,7,9,6
10,11,11,8,1
5,8,6,9,9
8,7,5,5,6
5,7,2,1,8
9,8,8,13,6
5,8,5,6,4
,7,5,4,5
,8,4,4,3
,6,4,9,5
8,11,9,12,3
9,11,8,10,6
10,10,7,8,1
6,6,3,8,9
10,9,7,12,2
6,8,,7,4
6,8,3,2,9
7,8,8,2,9
5,6,5,5,5
9,9,7,7,5
9,10,11,7,8
8,11,9,3,3
5,4,4,0,5
9,9,11,14,2
5,6,2,4,4
8,8,7,4,1
9,9,8,14,
6,8,7,2,
10,9,9,6,
8,8,10,9,
7,8,4,12,
6,6,6,7,1
5,7,7,4,10
9,10,10,13,4
9,11,9,8,7
10,13,12,6,8
8,11,6,8,5
7,8,7,12,2
6,7,4,1,10
5,4,5,6,10
7,8,6,12,10
6,5,3,9,2
7,8,8,7,2
5,4,4,9,8
5,7,6,3,9
10,10,9,13,1
8,10,9,5,4
8,9,8,8,7
7,9,9,6,7
10,9,7,12,6
10,13,12,12,4
7,10,9,7,2
6,8,7,11,6
8,11,5,13,2
7,10,6,12,8
10,10,9,7,9
9,12,6,7,10
6,6,8,2,9
10,9,12,13,10
8,9,8,3,6
8,7,6,4,10
8,7,10,12,2
7,6,8,2,7
8,11,6,9,4
6,6,7,8,2
6,7,3,11,4
5,6,3,0,5
10,10,11,15,6
5,4,7,6,8
5,4,4,1,3
6,9,8,1,6
10,11,10,15,8
7,10,4,11,7
9,12,8,6,3
10,10,11,15,2
10,9,9,15,3
6,6,8,5,1
5,7,7,0,3
9,8,10,6,8
9,8,11,11,4
8,10,7,3,4
7,8,7,3,3
8,9,10,13,8
end data.
CORRELATION
/VARIABLES = var1 var2 var3 WITH var4 var5
/PRINT = TWOTAIL NOSIG.
CORRELATION
/VARIABLES = var3 var4 var5 WITH var1 var2
/PRINT = TWOTAIL NOSIG.
_ATEOF
{ set +x
$as_echo "$at_srcdir/correlations.at:324: pspp -O format=csv correlations.sps"
at_fn_check_prepare_trace "correlations.at:324"
( $at_check_trace; pspp -O format=csv correlations.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Correlations
,,var4,var5
var1,Pearson Correlation,.5693,-.0519
,Sig. (2-tailed),.000,.623
,N,93,92
var2,Pearson Correlation,.3792,-.0407
,Sig. (2-tailed),.000,.698
,N,95,93
var3,Pearson Correlation,.3699,-.0543
,Sig. (2-tailed),.000,.603
,N,95,94
Table: Correlations
,,var1,var2
var3,Pearson Correlation,.6964,.5615
,Sig. (2-tailed),.000,.000
,N,96,97
var4,Pearson Correlation,.5693,.3792
,Sig. (2-tailed),.000,.000
,N,93,95
var5,Pearson Correlation,-.0519,-.0407
,Sig. (2-tailed),.623,.698
,N,92,93
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/correlations.at:324"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_433
#AT_START_434
at_fn_group_banner 434 'crosstabs.at:3' \
"CROSSTABS integer mode crash" " " 68
at_xfail=no
(
$as_echo "434. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >crosstabs.sps <<'_ATEOF'
DATA LIST LIST /A * B * X * Y * .
BEGIN DATA.
2 3 4 5
END DATA.
CROSSTABS VARIABLES X (1,7) Y (1,7) /TABLES X BY Y.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:12: pspp -O format=csv crosstabs.sps"
at_fn_check_prepare_trace "crosstabs.at:12"
( $at_check_trace; pspp -O format=csv crosstabs.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
A,F8.0
B,F8.0
X,F8.0
Y,F8.0
Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
X * Y,1,100.0%,0,0.0%,1,100.0%
Table: X * Y [count].
,Y,,,,,,,
X,1.00,2.00,3.00,4.00,5.00,6.00,7.00,Total
1.00,.00,.00,.00,.00,.00,.00,.00,.00
2.00,.00,.00,.00,.00,.00,.00,.00,.00
3.00,.00,.00,.00,.00,.00,.00,.00,.00
4.00,.00,.00,.00,.00,1.00,.00,.00,1.00
5.00,.00,.00,.00,.00,.00,.00,.00,.00
6.00,.00,.00,.00,.00,.00,.00,.00,.00
7.00,.00,.00,.00,.00,.00,.00,.00,.00
Total,.00,.00,.00,.00,1.00,.00,.00,1.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_434
#AT_START_435
at_fn_group_banner 435 'crosstabs.at:41' \
"CROSSTABS long string crash" " " 68
at_xfail=no
(
$as_echo "435. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >crosstabs.sps <<'_ATEOF'
data list list /x * y (a18).
begin data.
1. 'zero none'
1 'one unity'
2 'two duality'
3 'three lots'
end data.
CROSSTABS /TABLES = x BY y.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:56: pspp -o - -O format=csv crosstabs.sps"
at_fn_check_prepare_trace "crosstabs.at:56"
( $at_check_trace; pspp -o - -O format=csv crosstabs.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
x,F8.0
y,A18
\"crosstabs.sps:4: warning: Missing value(s) for all variables from x onward. These will be filled with the system-missing value or blanks, as appropriate.\"
\"crosstabs.sps:6: warning: Missing value(s) for all variables from x onward. These will be filled with the system-missing value or blanks, as appropriate.\"
Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,4,66.7%,2,33.3%,6,100.0%
Table: x * y [count].
,y,,,,
x,one unity ,three lots ,two duality ,zero none ,Total
1.00,1.00,.00,.00,1.00,2.00
2.00,.00,.00,1.00,.00,1.00
3.00,.00,1.00,.00,.00,1.00
Total,1.00,1.00,1.00,1.00,4.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:56"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_435
#AT_START_436
at_fn_group_banner 436 'crosstabs.at:82' \
"CROSSTABS crash" " " 68
at_xfail=no
(
$as_echo "436. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >crosstabs.sps <<'_ATEOF'
DATA LIST FIXED
/ x 1-2
y 3
z 4.
BEGIN DATA.
0111
0222
0311
0412
0521
0612
0711
0811
0912
END DATA.
LIST.
CROSSTABS TABLES y by z.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:106: pspp -O format=csv crosstabs.sps"
at_fn_check_prepare_trace "crosstabs.at:106"
( $at_check_trace; pspp -O format=csv crosstabs.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading 1 record from INLINE.
Variable,Record,Columns,Format
x,1,1- 2,F2.0
y,1,3- 3,F1.0
z,1,4- 4,F1.0
Table: Data List
x,y,z
1,1,1
2,2,2
3,1,1
4,1,2
5,2,1
6,1,2
7,1,1
8,1,1
9,1,2
Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
y * z,9,100.0%,0,0.0%,9,100.0%
Table: y * z [count].
,z,,
y,1,2,Total
1,4.00,3.00,7.00
2,1.00,1.00,2.00
Total,5.00,4.00,9.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:106"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_436
#AT_START_437
at_fn_group_banner 437 'crosstabs.at:142' \
"CROSSTABS chi-square crash" " " 68
at_xfail=no
(
$as_echo "437. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >crosstabs.sps <<'_ATEOF'
DATA LIST LIST /x * y *.
BEGIN DATA.
2 2
3 1
4 2
4 1
END DATA.
CROSSTABS
/TABLES= x BY y
/STATISTICS=CHISQ.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:156: pspp -O format=csv crosstabs.sps"
at_fn_check_prepare_trace "crosstabs.at:156"
( $at_check_trace; pspp -O format=csv crosstabs.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
x,F8.0
y,F8.0
Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,4,100.0%,0,0.0%,4,100.0%
Table: x * y [count].
,y,,
x,1.00,2.00,Total
2.00,.00,1.00,1.00
3.00,1.00,.00,1.00
4.00,1.00,1.00,2.00
Total,2.00,2.00,4.00
Table: Chi-square tests.
Statistic,Value,df,Asymp. Sig. (2-tailed)
Pearson Chi-Square,2.00,2,.368
Likelihood Ratio,2.77,2,.250
Linear-by-Linear Association,.27,1,.602
N of Valid Cases,4,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:156"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_437
#AT_START_438
at_fn_group_banner 438 'crosstabs.at:186' \
"CROSSTABS crash with SPLIT FILE" " " 68
at_xfail=no
(
$as_echo "438. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >crosstabs.sps <<'_ATEOF'
data list notable / v0 to v2 1-6 (A)
begin data.
a c e
a c e
a c e
a d e
a d f
b d f
b d f
b c f
b d e
a c f
end data.
SORT CASES BY v0.
SPLIT FILE SEPARATE BY v0.
CROSSTABS
/TABLES= v1 BY v2
/FORMAT=AVALUE TABLES PIVOT
/STATISTICS=CHISQ
/CELLS=COUNT ROW COLUMN TOTAL.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:211: pspp -O format=csv crosstabs.sps"
at_fn_check_prepare_trace "crosstabs.at:211"
( $at_check_trace; pspp -O format=csv crosstabs.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Value,Label
v0,a ,
Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
v1 * v2,6,100.0%,0,0.0%,6,100.0%
\"Table: v1 * v2 [count, row %, column %, total %].\"
,v2,,
v1,e ,f ,Total
c ,3.00,1.00,4.00
,75.00%,25.00%,100.00%
,75.00%,50.00%,66.67%
,50.00%,16.67%,66.67%
d ,1.00,1.00,2.00
,50.00%,50.00%,100.00%
,25.00%,50.00%,33.33%
,16.67%,16.67%,33.33%
Total,4.00,2.00,6.00
,66.67%,33.33%,100.00%
,100.00%,100.00%,100.00%
,66.67%,33.33%,100.00%
Table: Chi-square tests.
Statistic,Value,df,Asymp. Sig. (2-tailed),Exact Sig. (2-tailed),Exact Sig. (1-tailed)
Pearson Chi-Square,.38,1,.540,,
Likelihood Ratio,.37,1,.545,,
Fisher's Exact Test,,,,1.000,.600
Continuity Correction,.00,1,1.000,,
N of Valid Cases,6,,,,
Variable,Value,Label
v0,b ,
Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
v1 * v2,4,100.0%,0,0.0%,4,100.0%
\"Table: v1 * v2 [count, row %, column %, total %].\"
,v2,,
v1,e ,f ,Total
c ,.00,1.00,1.00
,.00%,100.00%,100.00%
,.00%,33.33%,25.00%
,.00%,25.00%,25.00%
d ,1.00,2.00,3.00
,33.33%,66.67%,100.00%
,100.00%,66.67%,75.00%
,25.00%,50.00%,75.00%
Total,1.00,3.00,4.00
,25.00%,75.00%,100.00%
,100.00%,100.00%,100.00%
,25.00%,75.00%,100.00%
Table: Chi-square tests.
Statistic,Value,df,Asymp. Sig. (2-tailed),Exact Sig. (2-tailed),Exact Sig. (1-tailed)
Pearson Chi-Square,.44,1,.505,,
Likelihood Ratio,.68,1,.410,,
Fisher's Exact Test,,,,1.000,.750
Continuity Correction,.00,1,1.000,,
N of Valid Cases,4,,,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:211"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_438
#AT_START_439
at_fn_group_banner 439 'crosstabs.at:281' \
"3-way CROSSTABS" " " 68
at_xfail=no
(
$as_echo "439. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >crosstabs.sps <<'_ATEOF'
DATA LIST FIXED
/ x 1-2
y 3
z 4.
BEGIN DATA.
0111
0222
0311
0412
0521
0612
0711
0811
0912
END DATA.
LIST.
CROSSTABS TABLES x BY y BY z/STATISTICS=ALL.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:305: pspp -O format=csv crosstabs.sps"
at_fn_check_prepare_trace "crosstabs.at:305"
( $at_check_trace; pspp -O format=csv crosstabs.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading 1 record from INLINE.
Variable,Record,Columns,Format
x,1,1- 2,F2.0
y,1,3- 3,F1.0
z,1,4- 4,F1.0
Table: Data List
x,y,z
1,1,1
2,2,2
3,1,1
4,1,2
5,2,1
6,1,2
7,1,1
8,1,1
9,1,2
Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y * z,9,100.0%,0,0.0%,9,100.0%
Table: x * y * z [count].
z,,y,,
,x,1,2,Total
1,1,1.00,.00,1.00
,3,1.00,.00,1.00
,5,.00,1.00,1.00
,7,1.00,.00,1.00
,8,1.00,.00,1.00
Total,,4.00,1.00,5.00
2,2,.00,1.00,1.00
,4,1.00,.00,1.00
,6,1.00,.00,1.00
,9,1.00,.00,1.00
Total,,3.00,1.00,4.00
Table: Chi-square tests.
z,Statistic,Value,df,Asymp. Sig. (2-tailed)
1,Pearson Chi-Square,5.00,4,.287
,Likelihood Ratio,5.00,4,.287
,Linear-by-Linear Association,.01,1,.938
,N of Valid Cases,5,,
2,Pearson Chi-Square,4.00,3,.261
,Likelihood Ratio,4.50,3,.212
,Linear-by-Linear Association,1.58,1,.209
,N of Valid Cases,4,,
Table: Symmetric measures.
z,Category,Statistic,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
1,Nominal by Nominal,Phi,1.00,,,
,,Cramer's V,1.00,,,
,,Contingency Coefficient,.71,,,
,Ordinal by Ordinal,Kendall's tau-b,.00,.32,.00,
,,Kendall's tau-c,.00,.32,.00,
,,Gamma,.00,.50,.00,
,,Spearman Correlation,.00,.22,.00,
,Interval by Interval,Pearson's R,.04,.22,.07,
,N of Valid Cases,,5,,,
2,Nominal by Nominal,Phi,1.00,,,
,,Cramer's V,1.00,,,
,,Contingency Coefficient,.71,,,
,Ordinal by Ordinal,Kendall's tau-b,-.71,.20,-1.73,
,,Kendall's tau-c,-.75,.43,-1.73,
,,Gamma,-1.00,.00,-1.73,
,,Spearman Correlation,-.77,.17,-1.73,
,Interval by Interval,Pearson's R,-.73,.18,-1.49,
,N of Valid Cases,,4,,,
Table: Directional measures.
z,Category,Statistic,Type,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
1,Nominal by Nominal,Lambda,Symmetric,.40,.28,1.12,.264
,,,x Dependent,.25,.22,1.12,.264
,,,y Dependent,1.00,.00,1.12,.264
,,Goodman and Kruskal tau,x Dependent,.25,,,.
,,,y Dependent,1.00,,,.
,,Uncertainty Coefficient,Symmetric,.47,.18,,.
,,,x Dependent,.31,.15,2.02,.
,,,y Dependent,1.00,.00,2.02,.
,Ordinal by Ordinal,Somers' d,Symmetric,.00,,.00,1.000
,,,x Dependent,.00,.50,.00,1.000
,,,y Dependent,.00,.20,.00,1.000
,Nominal by Interval,Eta,x Dependent,.04,,,.
,,,y Dependent,1.00,,,.
2,Nominal by Nominal,Lambda,Symmetric,.50,.25,2.00,.046
,,,x Dependent,.33,.27,1.15,.248
,,,y Dependent,1.00,.00,1.15,.248
,,Goodman and Kruskal tau,x Dependent,.33,,,.
,,,y Dependent,1.00,,,.
,,Uncertainty Coefficient,Symmetric,.58,.17,,.
,,,x Dependent,.41,.17,2.36,.
,,,y Dependent,1.00,.00,2.36,.
,Ordinal by Ordinal,Somers' d,Symmetric,-.67,,-1.73,.083
,,,x Dependent,-1.00,.00,-1.73,.083
,,,y Dependent,-.50,.29,-1.73,.083
,Nominal by Interval,Eta,x Dependent,.73,,,.
,,,y Dependent,1.00,,,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:305"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_439
#AT_START_440
at_fn_group_banner 440 'crosstabs.at:410' \
"CROSSTABS descending sort order" " " 68
at_xfail=no
(
$as_echo "440. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >crosstabs-descending.sps <<'_ATEOF'
DATA LIST NOTABLE LIST /x * y *.
BEGIN DATA.
2 2
2 2
3 1
4 1
3 2
3 2
END DATA.
CROSSTABS
/TABLES= x BY y
/FORMAT = DVALUE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:427: pspp -O format=csv crosstabs-descending.sps"
at_fn_check_prepare_trace "crosstabs.at:427"
( $at_check_trace; pspp -O format=csv crosstabs-descending.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,6,100.0%,0,0.0%,6,100.0%
Table: x * y [count].
,y,,
x,2.00,1.00,Total
4.00,.00,1.00,1.00
3.00,2.00,1.00,3.00
2.00,2.00,.00,2.00
Total,4.00,2.00,6.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:427"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_440
#AT_START_441
at_fn_group_banner 441 'crosstabs.at:445' \
"CROSSTABS crash when all cases missing" " " 68
at_xfail=no
(
$as_echo "441. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >crosstabs.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /X1 X2.
BEGIN DATA.
1 1
END DATA.
MISSING VALUES x2 (1).
CROSSTABS /TABLES= X1 by X2.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:456: pspp -O format=csv crosstabs.sps"
at_fn_check_prepare_trace "crosstabs.at:456"
( $at_check_trace; pspp -O format=csv crosstabs.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
X1 * X2,0,0.0%,1,100.0%,1,100.0%
crosstabs.sps:8: warning: CROSSTABS: Crosstabulation X1 * X2 contained no non-missing cases.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:456"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_441
#AT_START_442
at_fn_group_banner 442 'crosstabs.at:470' \
"CROSSTABS Fisher Exact Test" " " 68
at_xfail=no
(
$as_echo "442. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >fisher-exact.sps <<'_ATEOF'
SET FORMAT F12.3.
SET DECIMAL DOT.
DATA LIST notable LIST /schtyp (F9.2) female (F9.2) ses (F9.2) .
begin data.
1.00 .00 1.00
1.00 1.00 2.00
1.00 .00 3.00
1.00 .00 3.00
1.00 .00 2.00
1.00 .00 2.00
1.00 .00 2.00
1.00 .00 2.00
1.00 .00 2.00
1.00 .00 2.00
1.00 .00 2.00
1.00 .00 2.00
1.00 .00 3.00
1.00 .00 3.00
1.00 .00 1.00
1.00 .00 1.00
1.00 .00 3.00
2.00 .00 2.00
1.00 .00 3.00
1.00 .00 2.00
1.00 .00 2.00
1.00 .00 2.00
1.00 .00 2.00
1.00 .00 3.00
1.00 .00 2.00
1.00 .00 2.00
1.00 .00 3.00
2.00 .00 2.00
2.00 .00 3.00
1.00 .00 1.00
1.00 .00 2.00
1.00 .00 3.00
2.00 .00 3.00
1.00 .00 2.00
2.00 .00 3.00
1.00 .00 3.00
2.00 .00 2.00
1.00 .00 3.00
1.00 .00 1.00
1.00 .00 2.00
2.00 .00 2.00
2.00 .00 2.00
1.00 .00 2.00
1.00 .00 1.00
1.00 .00 3.00
1.00 .00 1.00
1.00 .00 3.00
1.00 .00 2.00
2.00 .00 2.00
1.00 .00 2.00
1.00 .00 2.00
1.00 .00 3.00
1.00 .00 2.00
2.00 .00 2.00
1.00 .00 2.00
1.00 .00 3.00
1.00 .00 1.00
1.00 .00 2.00
2.00 .00 2.00
1.00 .00 2.00
2.00 .00 2.00
1.00 .00 3.00
1.00 .00 1.00
1.00 .00 2.00
2.00 .00 3.00
1.00 .00 2.00
1.00 .00 2.00
1.00 .00 1.00
1.00 .00 1.00
1.00 .00 2.00
1.00 .00 2.00
1.00 .00 3.00
1.00 .00 2.00
1.00 .00 2.00
1.00 .00 2.00
1.00 .00 1.00
1.00 .00 3.00
1.00 .00 3.00
1.00 .00 2.00
1.00 .00 3.00
1.00 .00 3.00
1.00 .00 1.00
2.00 .00 2.00
1.00 .00 1.00
1.00 .00 2.00
1.00 .00 3.00
1.00 .00 3.00
1.00 .00 3.00
1.00 .00 2.00
1.00 .00 3.00
1.00 .00 2.00
1.00 .00 1.00
1.00 1.00 3.00
1.00 1.00 1.00
1.00 1.00 1.00
1.00 1.00 1.00
1.00 1.00 2.00
1.00 1.00 3.00
1.00 1.00 1.00
2.00 1.00 3.00
1.00 1.00 3.00
1.00 1.00 3.00
1.00 1.00 1.00
1.00 1.00 3.00
1.00 1.00 2.00
1.00 1.00 2.00
1.00 1.00 3.00
1.00 1.00 1.00
2.00 1.00 1.00
2.00 1.00 3.00
1.00 1.00 2.00
1.00 1.00 1.00
1.00 1.00 3.00
1.00 1.00 1.00
2.00 1.00 3.00
1.00 1.00 2.00
1.00 1.00 3.00
1.00 1.00 3.00
1.00 1.00 1.00
1.00 1.00 1.00
2.00 1.00 1.00
1.00 1.00 2.00
1.00 1.00 2.00
1.00 1.00 2.00
1.00 1.00 1.00
1.00 1.00 3.00
1.00 1.00 2.00
1.00 1.00 2.00
1.00 1.00 3.00
1.00 1.00 1.00
1.00 1.00 2.00
1.00 1.00 1.00
1.00 1.00 2.00
1.00 1.00 2.00
1.00 1.00 1.00
1.00 1.00 3.00
2.00 1.00 2.00
1.00 1.00 2.00
1.00 1.00 2.00
2.00 1.00 2.00
1.00 1.00 1.00
1.00 1.00 3.00
1.00 1.00 2.00
1.00 1.00 2.00
1.00 1.00 2.00
2.00 1.00 3.00
1.00 1.00 2.00
2.00 1.00 2.00
1.00 1.00 1.00
1.00 1.00 1.00
1.00 1.00 1.00
1.00 1.00 3.00
1.00 1.00 2.00
1.00 1.00 2.00
1.00 1.00 2.00
1.00 1.00 2.00
1.00 1.00 2.00
1.00 1.00 2.00
1.00 1.00 2.00
1.00 1.00 3.00
1.00 1.00 1.00
1.00 1.00 2.00
2.00 1.00 3.00
1.00 1.00 1.00
1.00 1.00 2.00
1.00 1.00 1.00
1.00 1.00 2.00
1.00 1.00 1.00
2.00 1.00 2.00
1.00 1.00 1.00
1.00 1.00 1.00
1.00 1.00 2.00
1.00 1.00 3.00
1.00 1.00 3.00
1.00 1.00 1.00
1.00 1.00 1.00
1.00 1.00 2.00
1.00 1.00 2.00
1.00 1.00 3.00
1.00 1.00 1.00
1.00 1.00 2.00
2.00 1.00 2.00
1.00 1.00 3.00
1.00 1.00 2.00
1.00 1.00 3.00
1.00 1.00 1.00
1.00 1.00 2.00
1.00 1.00 2.00
2.00 1.00 3.00
1.00 1.00 1.00
1.00 1.00 1.00
2.00 1.00 3.00
2.00 1.00 2.00
1.00 1.00 3.00
2.00 1.00 2.00
2.00 1.00 2.00
1.00 1.00 2.00
2.00 1.00 2.00
1.00 1.00 2.00
1.00 1.00 3.00
end data.
VARIABLE LABEL schtyp 'type of school'.
ADD VALUE LABELS female 0 male 1 female.
ADD VALUE LABELS ses 1 low 2 middle 3 high.
ADD VALUE LABELS schtyp 1 public 2 private.
crosstabs /tables = schtyp by female /statistic = chisq.
crosstabs /tables = female by ses /statistic = chisq.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:689: pspp -O format=csv fisher-exact.sps"
at_fn_check_prepare_trace "crosstabs.at:689"
( $at_check_trace; pspp -O format=csv fisher-exact.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
type of school * female,200,100.0%,0,0.0%,200,100.0%
Table: type of school * female [count].
,female,,
type of school,male,female,Total
public,77.000,91.000,168.000
private,14.000,18.000,32.000
Total,91.000,109.000,200.000
Table: Chi-square tests.
Statistic,Value,df,Asymp. Sig. (2-tailed),Exact Sig. (2-tailed),Exact Sig. (1-tailed)
Pearson Chi-Square,.047,1,.828,,
Likelihood Ratio,.047,1,.828,,
Fisher's Exact Test,,,,.849,.492
Continuity Correction,.001,1,.981,,
Linear-by-Linear Association,.047,1,.829,,
N of Valid Cases,200,,,,
Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
female * ses,200,100.0%,0,0.0%,200,100.0%
Table: female * ses [count].
,ses,,,
female,low,middle,high,Total
male,15.000,47.000,29.000,91.000
female,32.000,48.000,29.000,109.000
Total,47.000,95.000,58.000,200.000
Table: Chi-square tests.
Statistic,Value,df,Asymp. Sig. (2-tailed)
Pearson Chi-Square,4.577,2,.101
Likelihood Ratio,4.679,2,.096
Linear-by-Linear Association,3.110,1,.078
N of Valid Cases,200,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:689"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_442
#AT_START_443
at_fn_group_banner 443 'crosstabs.at:735' \
"CROSSTABS Pearson's R" " " 68
at_xfail=no
(
$as_echo "443. $at_setup_line: testing $at_desc ..."
$at_traceon
# Test 1.
cat >pearson.sps <<'_ATEOF'
SET FORMAT F8.3.
* From http://www.statisticslectures.com/topics/pearsonr/.
DATA LIST FREE/x y.
BEGIN DATA.
1 4
3 6
5 10
5 12
6 13
END DATA.
CROSSTABS x BY y/STATISTICS=CORR.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:751: pspp -O format=csv pearson.sps"
at_fn_check_prepare_trace "crosstabs.at:751"
( $at_check_trace; pspp -O format=csv pearson.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,5,100.0%,0,0.0%,5,100.0%
Table: x * y [count].
,y,,,,,
x,4.000,6.000,10.000,12.000,13.000,Total
1.000,1.000,.000,.000,.000,.000,1.000
3.000,.000,1.000,.000,.000,.000,1.000
5.000,.000,.000,1.000,1.000,.000,2.000
6.000,.000,.000,.000,.000,1.000,1.000
Total,1.000,1.000,1.000,1.000,1.000,5.000
Table: Symmetric measures.
Category,Statistic,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Spearman Correlation,.975,.022,7.550,
Interval by Interval,Pearson's R,.968,.017,6.708,
N of Valid Cases,,5,,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:751"
$at_failed && at_fn_log_failure
$at_traceon; }
# Test 2.
cat >pearson2.sps <<'_ATEOF'
SET FORMAT F8.3.
* Checked with http://www.socscistatistics.com/tests/pearson/Default2.aspx.
DATA LIST FREE/x y.
BEGIN DATA.
1 1.5
2 1.5
3 4
4 6
5 5
6 7
7 6.5
8 9
9 10.5
10 11
END DATA.
CROSSTABS x BY y/STATISTICS=CORR.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:794: pspp -O format=csv pearson2.sps"
at_fn_check_prepare_trace "crosstabs.at:794"
( $at_check_trace; pspp -O format=csv pearson2.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,10,100.0%,0,0.0%,10,100.0%
Table: x * y [count].
,y,,,,,,,,,
x,1.500,4.000,5.000,6.000,6.500,7.000,9.000,10.500,11.000,Total
1.000,1.000,.000,.000,.000,.000,.000,.000,.000,.000,1.000
2.000,1.000,.000,.000,.000,.000,.000,.000,.000,.000,1.000
3.000,.000,1.000,.000,.000,.000,.000,.000,.000,.000,1.000
4.000,.000,.000,.000,1.000,.000,.000,.000,.000,.000,1.000
5.000,.000,.000,1.000,.000,.000,.000,.000,.000,.000,1.000
6.000,.000,.000,.000,.000,.000,1.000,.000,.000,.000,1.000
7.000,.000,.000,.000,.000,1.000,.000,.000,.000,.000,1.000
8.000,.000,.000,.000,.000,.000,.000,1.000,.000,.000,1.000
9.000,.000,.000,.000,.000,.000,.000,.000,1.000,.000,1.000
10.000,.000,.000,.000,.000,.000,.000,.000,.000,1.000,1.000
Total,2.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,10.000
Table: Symmetric measures.
Category,Statistic,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Spearman Correlation,.973,.015,11.844,
Interval by Interval,Pearson's R,.971,.017,11.580,
N of Valid Cases,,10,,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:794"
$at_failed && at_fn_log_failure
$at_traceon; }
# Test 3.
cat >pearson3.sps <<'_ATEOF'
SET FORMAT F8.3.
* From http://learntech.uwe.ac.uk/da/Default.aspx?pageid=1442.
DATA LIST FREE/x y.
BEGIN DATA.
56 87
56 91
65 85
65 91
50 75
25 28
87 122
44 66
35 58
END DATA.
CROSSTABS x BY y/STATISTICS=CORR.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:842: pspp -O format=csv pearson3.sps"
at_fn_check_prepare_trace "crosstabs.at:842"
( $at_check_trace; pspp -O format=csv pearson3.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,9,100.0%,0,0.0%,9,100.0%
Table: x * y [count].
,y,,,,,,,,
x,28.000,58.000,66.000,75.000,85.000,87.000,91.000,122.000,Total
25.000,1.000,.000,.000,.000,.000,.000,.000,.000,1.000
35.000,.000,1.000,.000,.000,.000,.000,.000,.000,1.000
44.000,.000,.000,1.000,.000,.000,.000,.000,.000,1.000
50.000,.000,.000,.000,1.000,.000,.000,.000,.000,1.000
56.000,.000,.000,.000,.000,.000,1.000,1.000,.000,2.000
65.000,.000,.000,.000,.000,1.000,.000,1.000,.000,2.000
87.000,.000,.000,.000,.000,.000,.000,.000,1.000,1.000
Total,1.000,1.000,1.000,1.000,1.000,1.000,2.000,1.000,9.000
Table: Symmetric measures.
Category,Statistic,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Spearman Correlation,.911,.068,5.860,
Interval by Interval,Pearson's R,.966,.017,9.915,
N of Valid Cases,,9,,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:842"
$at_failed && at_fn_log_failure
$at_traceon; }
# Test 4.
cat >pearson4.sps <<'_ATEOF'
SET FORMAT F8.3.
* From http://psychology.ucdavis.edu/faculty_sites/sommerb/sommerdemo/correlation/hand/pearson_hand.htm.
DATA LIST FREE/x y.
BEGIN DATA.
5 5
10 20
6 4
8 15
4 11
4 9
3 12
10 18
2 7
6 2
7 14
9 17
END DATA.
CROSSTABS x BY y/STATISTICS=CORR.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:890: pspp -O format=csv pearson4.sps"
at_fn_check_prepare_trace "crosstabs.at:890"
( $at_check_trace; pspp -O format=csv pearson4.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,12,100.0%,0,0.0%,12,100.0%
Table: x * y [count].
,y,,,,,,,,,,,,
x,2.000,4.000,5.000,7.000,9.000,11.000,12.000,14.000,15.000,17.000,18.000,20.000,Total
2.000,.000,.000,.000,1.000,.000,.000,.000,.000,.000,.000,.000,.000,1.000
3.000,.000,.000,.000,.000,.000,.000,1.000,.000,.000,.000,.000,.000,1.000
4.000,.000,.000,.000,.000,1.000,1.000,.000,.000,.000,.000,.000,.000,2.000
5.000,.000,.000,1.000,.000,.000,.000,.000,.000,.000,.000,.000,.000,1.000
6.000,1.000,1.000,.000,.000,.000,.000,.000,.000,.000,.000,.000,.000,2.000
7.000,.000,.000,.000,.000,.000,.000,.000,1.000,.000,.000,.000,.000,1.000
8.000,.000,.000,.000,.000,.000,.000,.000,.000,1.000,.000,.000,.000,1.000
9.000,.000,.000,.000,.000,.000,.000,.000,.000,.000,1.000,.000,.000,1.000
10.000,.000,.000,.000,.000,.000,.000,.000,.000,.000,.000,1.000,1.000,2.000
Total,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,12.000
Table: Symmetric measures.
Category,Statistic,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Spearman Correlation,.657,.140,2.758,
Interval by Interval,Pearson's R,.667,.132,2.830,
N of Valid Cases,,12,,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:890"
$at_failed && at_fn_log_failure
$at_traceon; }
# Test 5.
cat >pearson5.sps <<'_ATEOF'
SET FORMAT F8.3.
* From http://www.statisticslectures.com/topics/pearsonr/.
DATA LIST FREE/x y.
BEGIN DATA.
18 15000
25 29000
57 68000
45 52000
26 32000
64 80000
37 41000
40 45000
24 26000
33 33000
END DATA.
CROSSTABS x BY y/STATISTICS=CORR.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:938: pspp -O format=csv pearson5.sps"
at_fn_check_prepare_trace "crosstabs.at:938"
( $at_check_trace; pspp -O format=csv pearson5.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,10,100.0%,0,0.0%,10,100.0%
Table: x * y [count].
,y,,,,,,,,,,
x,15000.000,26000.000,29000.000,32000.000,33000.000,41000.000,45000.000,52000.000,68000.000,80000.000,Total
18.000,1.000,.000,.000,.000,.000,.000,.000,.000,.000,.000,1.000
24.000,.000,1.000,.000,.000,.000,.000,.000,.000,.000,.000,1.000
25.000,.000,.000,1.000,.000,.000,.000,.000,.000,.000,.000,1.000
26.000,.000,.000,.000,1.000,.000,.000,.000,.000,.000,.000,1.000
33.000,.000,.000,.000,.000,1.000,.000,.000,.000,.000,.000,1.000
37.000,.000,.000,.000,.000,.000,1.000,.000,.000,.000,.000,1.000
40.000,.000,.000,.000,.000,.000,.000,1.000,.000,.000,.000,1.000
45.000,.000,.000,.000,.000,.000,.000,.000,1.000,.000,.000,1.000
57.000,.000,.000,.000,.000,.000,.000,.000,.000,1.000,.000,1.000
64.000,.000,.000,.000,.000,.000,.000,.000,.000,.000,1.000,1.000
Total,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,10.000
Table: Symmetric measures.
Category,Statistic,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Spearman Correlation,1.000,.000,+Infinity,
Interval by Interval,Pearson's R,.992,.004,22.638,
N of Valid Cases,,10,,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:938"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_443
#AT_START_444
at_fn_group_banner 444 'crosstabs.at:968' \
"CROSSTABS Goodman and Kruskal's lambda" " " 68
at_xfail=no
(
$as_echo "444. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >lambda.sps <<'_ATEOF'
SET FORMAT F8.3.
* From http://www.csupomona.edu/~jlkorey/POWERMUTT/Topics/contingency_tables.html.
DATA LIST LIST NOTABLE/x y w.
WEIGHT BY w.
BEGIN DATA.
1 1 424
1 2 213
1 3 59
3 1 55
3 2 188
3 3 357
END DATA.
CROSSTABS x BY y/CELLS=NONE/STATISTICS=LAMBDA.
* From http://vassarstats.net.
DATA LIST LIST NOTABLE/x y w.
WEIGHT BY w.
BEGIN DATA.
1 1 19
1 2 26
1 3 8
2 1 21
2 2 13
2 3 5
3 1 6
3 2 12
3 3 27
END DATA.
CROSSTABS x BY y/CELLS=NONE/STATISTICS=LAMBDA.
* From Goodman, L.A., Kruskal, W.H. (1954) "Measures of association for
cross classifications". Part I. Journal of the American Statistical
Association, 49, 732-764.
DATA LIST LIST NOTABLE/x y w.
WEIGHT BY w.
BEGIN DATA.
1 1 1768
1 2 807
1 3 189
1 4 47
2 1 946
2 2 1387
2 3 746
2 4 53
3 1 115
3 2 438
3 3 288
3 4 16
END DATA.
CROSSTABS x BY y/CELLS=NONE/STATISTICS=LAMBDA.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:1024: pspp -O format=csv lambda.sps"
at_fn_check_prepare_trace "crosstabs.at:1024"
( $at_check_trace; pspp -O format=csv lambda.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,1296.000,100.0%,.000,0.0%,1296.000,100.0%
Table: Directional measures.
Category,Statistic,Type,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Nominal by Nominal,Lambda,Symmetric,.423,.021,16.875,.000
,,x Dependent,.497,.024,15.986,.000
,,y Dependent,.370,.020,16.339,.000
,Goodman and Kruskal tau,x Dependent,.382,,,.
,,y Dependent,.198,,,.
Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,137.000,100.0%,.000,0.0%,137.000,100.0%
Table: Directional measures.
Category,Statistic,Type,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Nominal by Nominal,Lambda,Symmetric,.259,.081,2.902,.004
,,x Dependent,.250,.089,2.479,.013
,,y Dependent,.267,.085,2.766,.006
,Goodman and Kruskal tau,x Dependent,.129,,,.
,,y Dependent,.123,,,.
Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,6800.000,100.0%,.000,0.0%,6800.000,100.0%
Table: Directional measures.
Category,Statistic,Type,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Nominal by Nominal,Lambda,Symmetric,.208,.010,18.793,.000
,,x Dependent,.224,.013,16.076,.000
,,y Dependent,.192,.012,14.438,.000
,Goodman and Kruskal tau,x Dependent,.089,,,.
,,y Dependent,.081,,,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:1024"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_444
#AT_START_445
at_fn_group_banner 445 'crosstabs.at:1069' \
"CROSSTABS Goodman and Kruskal's lambda - treatment of ties" "" 68
at_xfail=no
(
$as_echo "445. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >lambda.sps <<'_ATEOF'
SET FORMAT F8.3.
* From Douglas Bonett.
DATA LIST LIST NOTABLE/x y w.
WEIGHT BY w.
BEGIN DATA.
1 1 225
1 2 43
1 3 216
2 1 3
2 2 1
2 3 12
END DATA.
CROSSTABS x BY y/CELLS=NONE/STATISTICS=LAMBDA.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:1087: pspp -O format=csv lambda.sps"
at_fn_check_prepare_trace "crosstabs.at:1087"
( $at_check_trace; pspp -O format=csv lambda.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,500.000,100.0%,.000,0.0%,500.000,100.0%
Table: Directional measures.
Category,Statistic,Type,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Nominal by Nominal,Lambda,Symmetric,.031,.013,2.336,.019
,,x Dependent,.000,.000,NaN,NaN
,,y Dependent,.033,.014,2.336,.019
,Goodman and Kruskal tau,x Dependent,.012,,,.
,,y Dependent,.009,,,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:1087"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_445
#AT_START_446
at_fn_group_banner 446 'crosstabs.at:1104' \
"CROSSTABS Somers' D, Tau-B, Tau-C, Gamma" " " 68
at_xfail=no
(
$as_echo "446. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >somersd.sps <<'_ATEOF'
SET FORMAT F8.3.
* From http://stats.stackexchange.com/questions/72203/problem-with-calculating-asymptotic-standard-error-for-somers-d.
DATA LIST LIST NOTABLE/x y * w (F10.6).
WEIGHT BY w.
BEGIN DATA.
1 1 0.000025
1 2 0.0001
1 3 0.001
1 4 0.0025
1 5 0.004
1 6 0.0075
1 7 0.0125
2 1 0.049975
2 2 0.0999
2 3 0.199
2 4 0.2475
2 5 0.196
2 6 0.1425
2 7 0.0375
END DATA.
CROSSTABS x BY y/STATISTICS=D/CELLS=NONE.
* From http://uregina.ca/~gingrich/gamma.pdf.
DATA LIST LIST NOTABLE/x y w.
WEIGHT BY w.
BEGIN DATA.
1 1 34
1 2 24
1 3 15
2 1 42
2 2 74
2 3 67
3 1 28
3 2 111
3 3 292
END DATA.
CROSSTABS x BY y/STATISTICS=BTAU CTAU GAMMA D/CELLS=NONE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:1145: pspp -O format=csv somersd.sps"
at_fn_check_prepare_trace "crosstabs.at:1145"
( $at_check_trace; pspp -O format=csv somersd.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,1.000000,100.0%,.000000,0.0%,1.000000,100.0%
Table: Directional measures.
Category,Statistic,Type,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Somers' d,Symmetric,-.084,,-.149,.882
,,x Dependent,-.045,.300,-.149,.882
,,y Dependent,-.684,2.378,-.149,.882
Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,687.000,100.0%,.000,0.0%,687.000,100.0%
Table: Symmetric measures.
Category,Statistic,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Kendall's tau-b,.372,.033,10.669,
,Kendall's tau-c,.310,.029,10.669,
,Gamma,.591,.043,10.669,
N of Valid Cases,,687.000,,,
Table: Directional measures.
Category,Statistic,Type,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Somers' d,Symmetric,.371,,10.669,.000
,,x Dependent,.351,.032,10.669,.000
,,y Dependent,.394,.035,10.669,.000
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:1145"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >ordinal.sps <<'_ATEOF'
SET FORMAT F8.3.
* From https://www.iup.edu/WorkArea/DownloadAsset.aspx?id=9829, "Case 1".
DATA LIST LIST NOTABLE /x y w.
WEIGHT BY w.
BEGIN DATA.
1 2 40
2 3 80
3 4 30
END DATA.
CROSSTABS x BY y/STATISTICS=GAMMA D BTAU/CELLS=NONE.
* Same site, case 2.
DATA LIST LIST NOTABLE /x y w.
WEIGHT BY w.
BEGIN DATA.
1 1 40
2 3 80
3 4 30
END DATA.
CROSSTABS x BY y/STATISTICS=GAMMA D BTAU/CELLS=NONE.
* Same site, case 3.
DATA LIST LIST NOTABLE /x y w.
WEIGHT BY w.
BEGIN DATA.
1 4 40
2 3 80
3 2 30
END DATA.
CROSSTABS x BY y/STATISTICS=GAMMA D BTAU/CELLS=NONE.
* Same site, case 4.
DATA LIST LIST NOTABLE /x y w.
WEIGHT BY w.
BEGIN DATA.
1 1 20
1 2 20
2 3 80
3 4 30
END DATA.
CROSSTABS x BY y/STATISTICS=GAMMA D BTAU/CELLS=NONE.
* Same site, case 5.
DATA LIST LIST NOTABLE /x y w.
WEIGHT BY w.
BEGIN DATA.
1 2 40
2 2 80
3 2 29
3 3 1
END DATA.
CROSSTABS x BY y/STATISTICS=GAMMA D BTAU/CELLS=NONE.
* Same site, case 6.
DATA LIST LIST NOTABLE /x y w.
WEIGHT BY w.
BEGIN DATA.
1 1 3
1 2 6
1 3 28
1 4 61
2 1 4
2 2 5
2 3 21
2 4 20
END DATA.
CROSSTABS x BY y/STATISTICS=GAMMA D BTAU/CELLS=NONE.
* Same site, case 7.
DATA LIST LIST NOTABLE /x y w.
WEIGHT BY w.
BEGIN DATA.
1 1 38
1 2 6
1 3 3
1 4 51
2 1 4
2 2 20
2 3 21
2 4 5
END DATA.
CROSSTABS x BY y/STATISTICS=LAMBDA D PHI GAMMA/CELLS=NONE.
* Same site, case 8.
DATA LIST LIST NOTABLE /x y w.
WEIGHT BY w.
BEGIN DATA.
1 1 2
1 2 3
1 3 5
1 4 1
2 1 2
2 2 16
2 3 3
2 4 6
3 1 3
3 2 10
3 3 35
3 4 27
4 1 6
4 2 15
4 3 33
4 4 45
END DATA.
CROSSTABS x BY y/STATISTICS=LAMBDA D PHI BTAU/CELLS=NONE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:1286: pspp -O format=csv ordinal.sps"
at_fn_check_prepare_trace "crosstabs.at:1286"
( $at_check_trace; pspp -O format=csv ordinal.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,150.000,100.0%,.000,0.0%,150.000,100.0%
Table: Symmetric measures.
Category,Statistic,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Kendall's tau-b,1.000,.000,24.841,
,Gamma,1.000,.000,24.841,
N of Valid Cases,,150.000,,,
Table: Directional measures.
Category,Statistic,Type,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Somers' d,Symmetric,1.000,,24.841,.000
,,x Dependent,1.000,.000,24.841,.000
,,y Dependent,1.000,.000,24.841,.000
Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,150.000,100.0%,.000,0.0%,150.000,100.0%
Table: Symmetric measures.
Category,Statistic,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Kendall's tau-b,1.000,.000,24.841,
,Gamma,1.000,.000,24.841,
N of Valid Cases,,150.000,,,
Table: Directional measures.
Category,Statistic,Type,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Somers' d,Symmetric,1.000,,24.841,.000
,,x Dependent,1.000,.000,24.841,.000
,,y Dependent,1.000,.000,24.841,.000
Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,150.000,100.0%,.000,0.0%,150.000,100.0%
Table: Symmetric measures.
Category,Statistic,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Kendall's tau-b,-1.000,.000,-24.841,
,Gamma,-1.000,.000,-24.841,
N of Valid Cases,,150.000,,,
Table: Directional measures.
Category,Statistic,Type,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Somers' d,Symmetric,-1.000,,-24.841,.000
,,x Dependent,-1.000,.000,-24.841,.000
,,y Dependent,-1.000,.000,-24.841,.000
Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,150.000,100.0%,.000,0.0%,150.000,100.0%
Table: Symmetric measures.
Category,Statistic,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Kendall's tau-b,.972,.007,24.841,
,Gamma,1.000,.000,24.841,
N of Valid Cases,,150.000,,,
Table: Directional measures.
Category,Statistic,Type,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Somers' d,Symmetric,.971,,24.841,.000
,,x Dependent,.944,.013,24.841,.000
,,y Dependent,1.000,.000,24.841,.000
Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,150.000,100.0%,.000,0.0%,150.000,100.0%
Table: Symmetric measures.
Category,Statistic,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Kendall's tau-b,.119,.059,1.009,
,Gamma,1.000,.000,1.009,
N of Valid Cases,,150.000,,,
Table: Directional measures.
Category,Statistic,Type,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Somers' d,Symmetric,.035,,1.009,.313
,,x Dependent,.805,.032,1.009,.313
,,y Dependent,.018,.017,1.009,.313
Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,148.000,100.0%,.000,0.0%,148.000,100.0%
Table: Symmetric measures.
Category,Statistic,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Kendall's tau-b,-.208,.078,-2.641,
,Gamma,-.381,.130,-2.641,
N of Valid Cases,,148.000,,,
Table: Directional measures.
Category,Statistic,Type,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Ordinal by Ordinal,Somers' d,Symmetric,-.206,,-2.641,.008
,,x Dependent,-.182,.069,-2.641,.008
,,y Dependent,-.237,.089,-2.641,.008
Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,148.000,100.0%,.000,0.0%,148.000,100.0%
Table: Symmetric measures.
Category,Statistic,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Nominal by Nominal,Phi,.731,,,
,Cramer's V,.731,,,
Ordinal by Ordinal,Gamma,-.110,.107,-1.022,
N of Valid Cases,,148.000,,,
Table: Directional measures.
Category,Statistic,Type,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Nominal by Nominal,Lambda,Symmetric,.338,.059,4.743,.000
,,x Dependent,.640,.085,4.875,.000
,,y Dependent,.174,.050,3.248,.001
,Goodman and Kruskal tau,x Dependent,.534,,,.
,,y Dependent,.167,,,.
Ordinal by Ordinal,Somers' d,Symmetric,-.074,,-1.022,.307
,,x Dependent,-.060,.059,-1.022,.307
,,y Dependent,-.096,.094,-1.022,.307
Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,212.000,100.0%,.000,0.0%,212.000,100.0%
Table: Symmetric measures.
Category,Statistic,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Nominal by Nominal,Phi,.432,,,
,Cramer's V,.249,,,
Ordinal by Ordinal,Kendall's tau-b,.209,.062,3.338,
N of Valid Cases,,212.000,,,
Table: Directional measures.
Category,Statistic,Type,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Nominal by Nominal,Lambda,Symmetric,.102,.067,1.473,.141
,,x Dependent,.027,.087,.302,.763
,,y Dependent,.165,.065,2.349,.019
,Goodman and Kruskal tau,x Dependent,.051,,,.
,,y Dependent,.068,,,.
Ordinal by Ordinal,Somers' d,Symmetric,.209,,3.338,.001
,,x Dependent,.202,.060,3.338,.001
,,y Dependent,.217,.064,3.338,.001
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:1286"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_446
#AT_START_447
at_fn_group_banner 447 'crosstabs.at:1445' \
"CROSSTABS many statistics" " " 68
at_xfail=no
(
$as_echo "447. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >crosstabs.sps <<'_ATEOF'
SET FORMAT=F8.4.
* From http://www4.stat.ncsu.edu/~dzhang2/st744/table3.9.lst.txt.
DATA LIST LIST NOTABLE/x y w.
WEIGHT BY w.
BEGIN DATA.
1 1 25
1 2 25
1 3 12
2 2 1
2 3 3
END DATA.
CROSSTABS x BY y/STATISTICS=CHISQ PHI CC LAMBDA UC BTAU CTAU GAMMA D CORR/CELLS=NONE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:1461: pspp -O format=csv crosstabs.sps"
at_fn_check_prepare_trace "crosstabs.at:1461"
( $at_check_trace; pspp -O format=csv crosstabs.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,66.0000,100.0%,.0000,0.0%,66.0000,100.0%
Table: Chi-square tests.
Statistic,Value,df,Asymp. Sig. (2-tailed)
Pearson Chi-Square,6.9562,2.0000,.031
Likelihood Ratio,6.6901,2.0000,.035
Linear-by-Linear Association,5.8450,1.0000,.016
N of Valid Cases,66.0000,,
Table: Symmetric measures.
Category,Statistic,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Nominal by Nominal,Phi,.3246,,,
,Cramer's V,.3246,,,
,Contingency Coefficient,.3088,,,
Ordinal by Ordinal,Kendall's tau-b,.2752,.0856,1.9920,
,Kendall's tau-c,.1497,.0751,1.9920,
,Gamma,.8717,.1250,1.9920,
,Spearman Correlation,.2908,.0906,2.4311,
Interval by Interval,Pearson's R,.2999,.0973,2.5147,
N of Valid Cases,,66.0000,,,
Table: Directional measures.
Category,Statistic,Type,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Nominal by Nominal,Lambda,Symmetric,.0455,.1629,.2723,.785
,,x Dependent,.0000,.0000,NaN,NaN
,,y Dependent,.0500,.1791,.2723,.785
,Goodman and Kruskal tau,x Dependent,.1054,,,.
,,y Dependent,.0434,,,.
,Uncertainty Coefficient,Symmetric,.0780,.0474,,.
,,x Dependent,.2217,.1062,1.5373,.
,,y Dependent,.0473,.0306,1.5373,.
Ordinal by Ordinal,Somers' d,Symmetric,.1960,,1.9920,.046
,,x Dependent,.1152,.0572,1.9920,.046
,,y Dependent,.6573,.1417,1.9920,.046
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:1461"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_447
#AT_START_448
at_fn_group_banner 448 'crosstabs.at:1503' \
"CROSSTABS uncertainy coefficient" " " 68
at_xfail=no
(
$as_echo "448. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >uc.sps <<'_ATEOF'
* From http://groups.chass.utoronto.ca/pol242/5bMeasuringAssociation.htm.
SET FORMAT=F8.3.
DATA LIST LIST NOTABLE/x y w.
WEIGHT BY w.
BEGIN DATA.
1 1 416
1 2 121
2 1 335
2 2 2
3 1 112
3 2 1
END DATA.
CROSSTABS x BY y/STATISTICS=LAMBDA UC/CELLS=NONE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:1520: pspp -O format=csv uc.sps"
at_fn_check_prepare_trace "crosstabs.at:1520"
( $at_check_trace; pspp -O format=csv uc.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Summary.
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x * y,987.000,100.0%,.000,0.0%,987.000,100.0%
Table: Directional measures.
Category,Statistic,Type,Value,Asymp. Std. Error,Approx. T,Approx. Sig.
Nominal by Nominal,Lambda,Symmetric,.000,.000,NaN,NaN
,,x Dependent,.000,.000,NaN,NaN
,,y Dependent,.000,.000,NaN,NaN
,Goodman and Kruskal tau,x Dependent,.076,,,.
,,y Dependent,.108,,,.
,Uncertainty Coefficient,Symmetric,.105,.012,,.
,,x Dependent,.073,.009,7.890,.
,,y Dependent,.184,.019,7.890,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:1520"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_448
#AT_START_449
at_fn_group_banner 449 'crosstabs.at:1542' \
"CROSSTABS barchart" " " 68
at_xfail=no
(
$as_echo "449. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >bc.sps <<'_ATEOF'
SET FORMAT=F8.3.
DATA LIST LIST NOTABLE /x (a20) y (f8) z (f8) w (f8) .
BEGIN DATA.
This 1 0 416
That 2 0 121
Other 2 0 335
This 2 0 231
That 3 0 112
Other 4 0 130
This 1 1 160
That 2 1 211
Other 2 1 352
This 2 1 212
That 3 1 121
Other 4 1 101
END DATA.
WEIGHT BY w.
CROSSTABS
/table x BY y BY z
/table x BY y
/barchart.
_ATEOF
{ set +x
$as_echo "$at_srcdir/crosstabs.at:1570: pspp -O format=txt -o xxx bc.sps"
at_fn_check_prepare_trace "crosstabs.at:1570"
( $at_check_trace; pspp -O format=txt -o xxx bc.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:1570"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/crosstabs.at:1572: test -e xxx-1.png"
at_fn_check_prepare_trace "crosstabs.at:1572"
( $at_check_trace; test -e xxx-1.png
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:1572"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/crosstabs.at:1573: test -e xxx-2.png"
at_fn_check_prepare_trace "crosstabs.at:1573"
( $at_check_trace; test -e xxx-2.png
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:1573"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/crosstabs.at:1575: diff xxx-1.png xxx-2.png"
at_fn_check_prepare_trace "crosstabs.at:1575"
( $at_check_trace; diff xxx-1.png xxx-2.png
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/crosstabs.at:1575"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_449
#AT_START_450
at_fn_group_banner 450 'descriptives.at:3' \
"DESCRIPTIVES basics" " " 69
at_xfail=no
(
$as_echo "450. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >descriptives.sps <<'_ATEOF'
title 'Test DESCRIPTIVES procedure'.
data list / V0 to V16 1-17.
begin data.
12128989012389023
34128080123890128
56127781237893217
78127378123793112
90913781237892318
37978547878935789
52878237892378279
12377912789378932
26787654347894348
29137178947891888
end data.
descript all/stat=all/format=serial.
_ATEOF
{ set +x
$as_echo "$at_srcdir/descriptives.at:23: pspp -O format=csv descriptives.sps"
at_fn_check_prepare_trace "descriptives.at:23"
( $at_check_trace; pspp -O format=csv descriptives.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Title: Test DESCRIPTIVES procedure
Table: Reading 1 record from INLINE.
Variable,Record,Columns,Format
V0,1,1- 1,F1.0
V1,1,2- 2,F1.0
V2,1,3- 3,F1.0
V3,1,4- 4,F1.0
V4,1,5- 5,F1.0
V5,1,6- 6,F1.0
V6,1,7- 7,F1.0
V7,1,8- 8,F1.0
V8,1,9- 9,F1.0
V9,1,10- 10,F1.0
V10,1,11- 11,F1.0
V11,1,12- 12,F1.0
V12,1,13- 13,F1.0
V13,1,14- 14,F1.0
V14,1,15- 15,F1.0
V15,1,16- 16,F1.0
V16,1,17- 17,F1.0
Table: Valid cases = 10; cases with missing value(s) = 0.
Variable,Valid N,Missing N,Mean,S.E. Mean,Std Dev,Variance,Kurtosis,S.E. Kurt,Skewness,S.E. Skew,Range,Minimum,Maximum,Sum
V0,10,0,3.80,.84,2.66,7.07,-.03,1.33,.89,.69,8.00,1.00,9.00,38.00
V1,10,0,4.60,.96,3.03,9.16,-1.39,1.33,-.03,.69,9.00,.00,9.00,46.00
V2,10,0,4.10,1.16,3.67,13.43,-2.02,1.33,.48,.69,8.00,1.00,9.00,41.00
V3,10,0,4.10,.87,2.77,7.66,-2.05,1.33,.42,.69,7.00,1.00,8.00,41.00
V4,10,0,7.00,.47,1.49,2.22,7.15,1.33,-2.52,.69,5.00,3.00,8.00,70.00
V5,10,0,4.90,1.03,3.25,10.54,-1.40,1.33,-.20,.69,9.00,.00,9.00,49.00
V6,10,0,5.90,.80,2.51,6.32,-.29,1.33,-.96,.69,7.00,1.00,8.00,59.00
V7,10,0,4.70,1.10,3.47,12.01,-1.99,1.33,-.16,.69,9.00,.00,9.00,47.00
V8,10,0,4.10,1.10,3.48,12.10,-1.93,1.33,.37,.69,9.00,.00,9.00,41.00
V9,10,0,4.30,.87,2.75,7.57,-.87,1.33,.73,.69,8.00,1.00,9.00,43.00
V10,10,0,5.50,.85,2.68,7.17,-1.84,1.33,-.33,.69,7.00,2.00,9.00,55.00
V11,10,0,6.50,.78,2.46,6.06,-1.28,1.33,-.89,.69,6.00,3.00,9.00,65.00
V12,10,0,7.90,.60,1.91,3.66,5.24,1.33,-2.21,.69,6.00,3.00,9.00,79.00
V13,10,0,4.30,.99,3.13,9.79,-1.25,1.33,.33,.69,9.00,.00,9.00,43.00
V14,10,0,3.60,1.01,3.20,10.27,-.96,1.33,.81,.69,9.00,.00,9.00,36.00
V15,10,0,3.70,.92,2.91,8.46,-1.35,1.33,.71,.69,7.00,1.00,8.00,37.00
V16,10,0,6.40,.91,2.88,8.27,-1.14,1.33,-.92,.69,7.00,2.00,9.00,64.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/descriptives.at:23"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_450
#AT_START_451
at_fn_group_banner 451 'descriptives.at:82' \
"DESCRIPTIVES -- excluding missing data" " " 69
at_xfail=no
(
$as_echo "451. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >descriptives.sps <<'_ATEOF'
data list notable / V1 TO V3 1-3.
mis val v1 to v3 (1).
begin data.
111
1
1 1
112
123
234
end data.
descript all/stat=all/format=serial.
_ATEOF
{ set +x
$as_echo "$at_srcdir/descriptives.at:87: pspp -O format=csv descriptives.sps"
at_fn_check_prepare_trace "descriptives.at:87"
( $at_check_trace; pspp -O format=csv descriptives.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Valid cases = 7; cases with missing value(s) = 6.
Variable,Valid N,Missing N,Mean,S.E. Mean,Std Dev,Variance,Kurtosis,S.E. Kurt,Skewness,S.E. Skew,Range,Minimum,Maximum,Sum
V1,1,6,2.00,. ,. ,. ,. ,. ,. ,. ,.00,2.00,2.00,2.00
V2,2,5,2.50,.50,.71,.50,. ,. ,. ,. ,1.00,2.00,3.00,5.00
V3,3,4,3.00,.58,1.00,1.00,. ,. ,.00,1.22,2.00,2.00,4.00,9.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/descriptives.at:87"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_451
#AT_START_452
at_fn_group_banner 452 'descriptives.at:96' \
"DESCRIPTIVES -- including missing data" " " 69
at_xfail=no
(
$as_echo "452. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >descriptives.sps <<'_ATEOF'
data list notable / V1 TO V3 1-3.
mis val v1 to v3 (1).
begin data.
111
1
1 1
112
123
234
end data.
descript all/stat=all/format=serial/missing=include.
_ATEOF
{ set +x
$as_echo "$at_srcdir/descriptives.at:101: pspp -O format=csv descriptives.sps"
at_fn_check_prepare_trace "descriptives.at:101"
( $at_check_trace; pspp -O format=csv descriptives.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Valid cases = 7; cases with missing value(s) = 3.
Variable,Valid N,Missing N,Mean,S.E. Mean,Std Dev,Variance,Kurtosis,S.E. Kurt,Skewness,S.E. Skew,Range,Minimum,Maximum,Sum
V1,5,2,1.20,.20,.45,.20,5.00,2.00,2.24,.91,1.00,1.00,2.00,6.00
V2,5,2,1.60,.40,.89,.80,.31,2.00,1.26,.91,2.00,1.00,3.00,8.00
V3,5,2,2.20,.58,1.30,1.70,-1.49,2.00,.54,.91,3.00,1.00,4.00,11.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/descriptives.at:101"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_452
#AT_START_453
at_fn_group_banner 453 'descriptives.at:110' \
"DESCRIPTIVES -- excluding missing data listwise" "" 69
at_xfail=no
(
$as_echo "453. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >descriptives.sps <<'_ATEOF'
data list notable / V1 TO V3 1-3.
mis val v1 to v3 (1).
begin data.
111
1
1 1
112
123
234
end data.
descript all/stat=all/format=serial/missing=listwise.
_ATEOF
{ set +x
$as_echo "$at_srcdir/descriptives.at:115: pspp -O format=csv descriptives.sps"
at_fn_check_prepare_trace "descriptives.at:115"
( $at_check_trace; pspp -O format=csv descriptives.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Valid cases = 1; cases with missing value(s) = 6.
Variable,Valid N,Missing N,Mean,S.E. Mean,Std Dev,Variance,Kurtosis,S.E. Kurt,Skewness,S.E. Skew,Range,Minimum,Maximum,Sum
V1,1,0,2.00,. ,. ,. ,. ,. ,. ,. ,.00,2.00,2.00,2.00
V2,1,0,3.00,. ,. ,. ,. ,. ,. ,. ,.00,3.00,3.00,3.00
V3,1,0,4.00,. ,. ,. ,. ,. ,. ,. ,.00,4.00,4.00,4.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/descriptives.at:115"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_453
#AT_START_454
at_fn_group_banner 454 'descriptives.at:124' \
"DESCRIPTIVES -- including missing data listwise" "" 69
at_xfail=no
(
$as_echo "454. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >descriptives.sps <<'_ATEOF'
data list notable / V1 TO V3 1-3.
mis val v1 to v3 (1).
begin data.
111
1
1 1
112
123
234
end data.
descript all/stat=all/format=serial/missing=listwise include.
_ATEOF
{ set +x
$as_echo "$at_srcdir/descriptives.at:129: pspp -O format=csv descriptives.sps"
at_fn_check_prepare_trace "descriptives.at:129"
( $at_check_trace; pspp -O format=csv descriptives.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Valid cases = 4; cases with missing value(s) = 3.
Variable,Valid N,Missing N,Mean,S.E. Mean,Std Dev,Variance,Kurtosis,S.E. Kurt,Skewness,S.E. Skew,Range,Minimum,Maximum,Sum
V1,4,0,1.25,.25,.50,.25,4.00,2.62,2.00,1.01,1.00,1.00,2.00,5.00
V2,4,0,1.75,.48,.96,.92,-1.29,2.62,.85,1.01,2.00,1.00,3.00,7.00
V3,4,0,2.50,.65,1.29,1.67,-1.20,2.62,.00,1.01,3.00,1.00,4.00,10.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/descriptives.at:129"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_454
#AT_START_455
at_fn_group_banner 455 'descriptives.at:138' \
"DESCRIPTIVES bug calculating mean only" " " 69
at_xfail=no
(
$as_echo "455. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >descriptives.sps <<'_ATEOF'
SET FORMAT F8.3.
data list notable / X 1.
begin data.
0
1
2
3
4
5
end data.
descript all/stat=mean.
_ATEOF
{ set +x
$as_echo "$at_srcdir/descriptives.at:154: pspp -O format=csv descriptives.sps"
at_fn_check_prepare_trace "descriptives.at:154"
( $at_check_trace; pspp -O format=csv descriptives.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Valid cases = 6; cases with missing value(s) = 0.
Variable,N,Mean
X,6,2.500
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/descriptives.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_455
#AT_START_456
at_fn_group_banner 456 'descriptives.at:164' \
"DESCRIPTIVES bug with TEMPORARY" " " 69
at_xfail=no
(
$as_echo "456. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >descriptives.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /id * abc *.
BEGIN DATA.
1 3.5
2 2.0
3 2.0
4 3.5
5 3.0
6 4.0
7 5.0
END DATA.
TEMPORARY.
SELECT IF id < 7 .
DESCRIPTIVES /VAR=abc.
_ATEOF
{ set +x
$as_echo "$at_srcdir/descriptives.at:182: pspp -O format=csv descriptives.sps"
at_fn_check_prepare_trace "descriptives.at:182"
( $at_check_trace; pspp -O format=csv descriptives.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Valid cases = 6; cases with missing value(s) = 0.
Variable,N,Mean,Std Dev,Minimum,Maximum
abc,6,3.00,.84,2.00,4.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/descriptives.at:182"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_456
#AT_START_457
at_fn_group_banner 457 'descriptives.at:189' \
"DESCRIPTIVES -- Z scores" " " 69
at_xfail=no
(
$as_echo "457. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >descriptives.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /a b.
BEGIN DATA.
1 50
2 60
3 70
END DATA.
DESCRIPTIVES /VAR=a b /SAVE.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/descriptives.at:201: pspp -O format=csv descriptives.sps"
at_fn_check_prepare_trace "descriptives.at:201"
( $at_check_trace; pspp -O format=csv descriptives.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Mapping of variables to corresponding Z-scores.
Source,Target
a,Za
b,Zb
Table: Valid cases = 3; cases with missing value(s) = 0.
Variable,N,Mean,Std Dev,Minimum,Maximum
a,3,2.00,1.00,1.00,3.00
b,3,60.00,10.00,50.00,70.00
Table: Data List
a,b,Za,Zb
1.00,50.00,-1.00,-1.00
2.00,60.00,.00,.00
3.00,70.00,1.00,1.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/descriptives.at:201"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_457
#AT_START_458
at_fn_group_banner 458 'descriptives.at:220' \
"DESCRIPTIVES -- Z scores with SPLIT FILE" " " 69
at_xfail=no
(
$as_echo "458. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >descriptives.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /group a b.
BEGIN DATA.
1 1 50
1 2 60
1 3 70
2 100 6000
2 200 7000
2 400 9000
2 500 10000
END DATA.
SPLIT FILE BY group.
DESCRIPTIVES /VAR=a b /SAVE.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/descriptives.at:237: pspp -O format=csv descriptives.sps"
at_fn_check_prepare_trace "descriptives.at:237"
( $at_check_trace; pspp -O format=csv descriptives.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Mapping of variables to corresponding Z-scores.
Source,Target
a,Za
b,Zb
Variable,Value,Label
group,1.00,
Table: Valid cases = 3; cases with missing value(s) = 0.
Variable,N,Mean,Std Dev,Minimum,Maximum
a,3,2.00,1.00,1.00,3.00
b,3,60.00,10.00,50.00,70.00
Variable,Value,Label
group,2.00,
Table: Valid cases = 4; cases with missing value(s) = 0.
Variable,N,Mean,Std Dev,Minimum,Maximum
a,4,300.00,182.57,100.00,500.00
b,4,8000.00,1825.74,6000.00,10000.00
Variable,Value,Label
group,1.00,
Table: Data List
group,a,b,Za,Zb
1.00,1.00,50.00,-1.00,-1.00
1.00,2.00,60.00,.00,.00
1.00,3.00,70.00,1.00,1.00
Variable,Value,Label
group,2.00,
Table: Data List
group,a,b,Za,Zb
2.00,100.00,6000.00,-1.10,-1.10
2.00,200.00,7000.00,-.55,-.55
2.00,400.00,9000.00,.55,.55
2.00,500.00,10000.00,1.10,1.10
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/descriptives.at:237"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_458
#AT_START_459
at_fn_group_banner 459 'descriptives.at:284' \
"DESCRIPTIVES -- Z scores bug with TEMPORARY" " " 69
at_xfail=no
(
$as_echo "459. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >descriptives.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /id abc.
BEGIN DATA.
1 3.5
2 2.0
3 2.0
4 3.5
5 3.0
6 4.0
7 5.0
END DATA.
TEMPORARY.
SELECT IF id < 7 .
DESCRIPTIVES /VAR=abc/SAVE.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/descriptives.at:303: pspp -O format=csv descriptives.sps"
at_fn_check_prepare_trace "descriptives.at:303"
( $at_check_trace; pspp -O format=csv descriptives.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "descriptives.sps:15: warning: DESCRIPTIVES: DESCRIPTIVES with Z scores ignores TEMPORARY. Temporary transformations will be made permanent.
Table: Mapping of variables to corresponding Z-scores.
Source,Target
abc,Zabc
Table: Valid cases = 6; cases with missing value(s) = 0.
Variable,N,Mean,Std Dev,Minimum,Maximum
abc,6,3.00,.84,2.00,4.00
Table: Data List
id,abc,Zabc
1.00,3.50,.60
2.00,2.00,-1.20
3.00,2.00,-1.20
4.00,3.50,.60
5.00,3.00,.00
6.00,4.00,1.20
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/descriptives.at:303"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_459
#AT_START_460
at_fn_group_banner 460 'descriptives.at:326' \
"DESCRIPTIVES -- Z scores with FILTER" " " 69
at_xfail=no
(
$as_echo "460. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >descriptives.sps <<'_ATEOF'
DATA LIST LIST/filter1 filter2 x.
BEGIN DATA.
0,0,300
0,1,200
0,1,100
1,0,5
1,0,4
1,1,3
1,1,2
1,1,1
END DATA.
FILTER OFF.
SPLIT FILE OFF.
DESCRIPTIVES /VARIABLES=X /SAVE.
FILTER BY filter1.
SPLIT FILE OFF.
DESCRIPTIVES /VARIABLES=X /SAVE.
FILTER OFF.
SORT CASES BY filter1.
SPLIT FILE BY filter1.
DESCRIPTIVES /VARIABLES=X /SAVE.
FILTER BY filter2.
SPLIT FILE BY filter1.
DESCRIPTIVES /VARIABLES=X /SAVE.
FILTER OFF.
SORT CASES BY filter1 filter2.
SPLIT FILE BY filter1 filter2.
DESCRIPTIVES /VARIABLES=X /SAVE.
EXECUTE.
SPLIT FILE OFF.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/descriptives.at:366: pspp -o pspp.csv descriptives.sps"
at_fn_check_prepare_trace "descriptives.at:366"
( $at_check_trace; pspp -o pspp.csv descriptives.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/descriptives.at:366"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/descriptives.at:367: sed -n '/Table: Data List/,\$p' < pspp.csv"
at_fn_check_prepare_dynamic "sed -n '/Table: Data List/,$p' < pspp.csv" "descriptives.at:367"
( $at_check_trace; sed -n '/Table: Data List/,$p' < pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
filter1,filter2,x,Zx,ZSC001,ZSC002,ZSC003,ZSC004
.00,.00,300.00,1.94,. ,1.00,. ,.
.00,1.00,200.00,1.07,. ,.00,.71,.71
.00,1.00,100.00,.20,. ,-1.00,-.71,-.71
1.00,.00,5.00,-.62,1.26,1.26,. ,.71
1.00,.00,4.00,-.63,.63,.63,. ,-.71
1.00,1.00,3.00,-.64,.00,.00,1.00,1.00
1.00,1.00,2.00,-.65,-.63,-.63,.00,.00
1.00,1.00,1.00,-.66,-1.26,-1.26,-1.00,-1.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/descriptives.at:367"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_460
#AT_START_461
at_fn_group_banner 461 'examine.at:3' \
"EXAMINE" " " 70
at_xfail=no
(
$as_echo "461. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >examine.sps <<'_ATEOF'
DATA LIST LIST /QUALITY * W * BRAND * .
BEGIN DATA
3 1 1
2 2 1
1 2 1
1 1 1
4 1 1
4 1 1
5 1 2
2 1 2
4 4 2
2 1 2
3 1 2
7 1 3
4 2 3
5 3 3
3 1 3
6 1 3
END DATA
WEIGHT BY w.
VARIABLE LABELS brand 'Manufacturer'.
VARIABLE LABELS quality 'Breaking Strain'.
VALUE LABELS /brand 1 'Aspeger' 2 'Bloggs' 3 'Charlies'.
LIST /FORMAT=NUMBERED.
EXAMINE
quality BY brand
/STATISTICS descriptives extreme(3)
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:43: pspp -O format=csv examine.sps"
at_fn_check_prepare_trace "examine.at:43"
( $at_check_trace; pspp -O format=csv examine.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
QUALITY,F8.0
W,F8.0
BRAND,F8.0
Table: Data List
Case Number,QUALITY,W,BRAND
1,3.00,1.00,1.00
2,2.00,2.00,1.00
3,1.00,2.00,1.00
4,1.00,1.00,1.00
5,4.00,1.00,1.00
6,4.00,1.00,1.00
7,5.00,1.00,2.00
8,2.00,1.00,2.00
9,4.00,4.00,2.00
10,2.00,1.00,2.00
11,3.00,1.00,2.00
12,7.00,1.00,3.00
13,4.00,2.00,3.00
14,5.00,3.00,3.00
15,3.00,1.00,3.00
16,6.00,1.00,3.00
Table: Case Processing Summary
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
Breaking Strain,24.00,100%,.00,0%,24.00,100%
Table: Extreme Values
,,,Case Number,Value
Breaking Strain,Highest,1,12,7.00
,,2,16,6.00
,,3,14,5.00
,Lowest,1,3,1.00
,,2,4,1.00
,,3,2,2.00
Table: Descriptives
,,,Statistic,Std. Error
Breaking Strain,Mean,,3.54,.32
,95% Confidence Interval for Mean,Lower Bound,2.87,
,,Upper Bound,4.21,
,5% Trimmed Mean,,3.50,
,Median,,4.00,
,Variance,,2.52,
,Std. Deviation,,1.59,
,Minimum,,1.00,
,Maximum,,7.00,
,Range,,6.00,
,Interquartile Range,,2.75,
,Skewness,,.06,.47
,Kurtosis,,-.36,.92
Table: Case Processing Summary
,,Cases,,,,,
,,Valid,,Missing,,Total,
,Manufacturer,N,Percent,N,Percent,N,Percent
Breaking Strain,Aspeger,8.00,100%,.00,0%,8.00,100%
,Bloggs,8.00,100%,.00,0%,8.00,100%
,Charlies,8.00,100%,.00,0%,8.00,100%
Table: Extreme Values
,Manufacturer,,,Case Number,Value
Breaking Strain,Aspeger,Highest,1,6,4.00
,,,2,5,4.00
,,,3,1,3.00
,,Lowest,1,3,1.00
,,,2,4,1.00
,,,3,2,2.00
,Bloggs,Highest,1,7,5.00
,,,2,9,4.00
,,,3,11,3.00
,,Lowest,1,8,2.00
,,,2,10,2.00
,,,3,11,3.00
,Charlies,Highest,1,12,7.00
,,,2,16,6.00
,,,3,14,5.00
,,Lowest,1,15,3.00
,,,2,13,4.00
,,,3,14,5.00
Table: Descriptives
,Manufacturer,,,Statistic,Std. Error
Breaking Strain,Aspeger,Mean,,2.25,.45
,,95% Confidence Interval for Mean,Lower Bound,1.18,
,,,Upper Bound,3.32,
,,5% Trimmed Mean,,2.22,
,,Median,,2.00,
,,Variance,,1.64,
,,Std. Deviation,,1.28,
,,Minimum,,1.00,
,,Maximum,,4.00,
,,Range,,3.00,
,,Interquartile Range,,2.75,
,,Skewness,,.47,.75
,,Kurtosis,,-1.55,1.48
,Bloggs,Mean,,3.50,.38
,,95% Confidence Interval for Mean,Lower Bound,2.61,
,,,Upper Bound,4.39,
,,5% Trimmed Mean,,3.50,
,,Median,,4.00,
,,Variance,,1.14,
,,Std. Deviation,,1.07,
,,Minimum,,2.00,
,,Maximum,,5.00,
,,Range,,3.00,
,,Interquartile Range,,1.75,
,,Skewness,,-.47,.75
,,Kurtosis,,-.83,1.48
,Charlies,Mean,,4.88,.44
,,95% Confidence Interval for Mean,Lower Bound,3.83,
,,,Upper Bound,5.92,
,,5% Trimmed Mean,,4.86,
,,Median,,5.00,
,,Variance,,1.55,
,,Std. Deviation,,1.25,
,,Minimum,,3.00,
,,Maximum,,7.00,
,,Range,,4.00,
,,Interquartile Range,,1.75,
,,Skewness,,.30,.75
,,Kurtosis,,.15,1.48
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:43"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_461
#AT_START_462
at_fn_group_banner 462 'examine.at:174' \
"EXAMINE -- extremes" " " 70
at_xfail=no
(
$as_echo "462. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >examine.sps <<'_ATEOF'
data list free /V1 W
begin data.
1 1
2 1
3 2
3 1
4 1
5 1
6 1
7 1
8 1
9 1
10 1
11 1
12 1
13 1
14 1
15 1
16 1
17 1
18 2
19 1
20 1
end data.
weight by w.
examine v1
/statistics=extreme(6)
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:208: pspp -O format=csv examine.sps"
at_fn_check_prepare_trace "examine.at:208"
( $at_check_trace; pspp -O format=csv examine.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Case Processing Summary
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
V1,23.00,100%,.00,0%,23.00,100%
Table: Extreme Values
,,,Case Number,Value
V1,Highest,1,21,20.00
,,2,20,19.00
,,3,19,18.00
,,4,18,17.00
,,5,17,16.00
,,6,16,15.00
,Lowest,1,1,1.00
,,2,2,2.00
,,3,3,3.00
,,4,4,3.00
,,5,5,4.00
,,6,6,5.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:208"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_462
#AT_START_463
at_fn_group_banner 463 'examine.at:235' \
"EXAMINE -- extremes with fractional weights" " " 70
at_xfail=no
(
$as_echo "463. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >extreme.sps <<'_ATEOF'
set format=F20.3.
data list notable list /w * x *.
begin data.
0.88 300000
0.86 320000
0.98 480000
0.93 960000
1.35 960000
1.31 960000
0.88 960000
0.88 1080000
0.88 1080000
0.95 1200000
1.47 1200000
0.93 1200000
0.98 1320000
1.31 1380000
0.93 1440000
0.88 1560000
1.56 1560000
1.47 1560000
end data.
weight by w.
EXAMINE
x
/STATISTICS = DESCRIPTIVES EXTREME (5)
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:269: pspp -O format=csv extreme.sps"
at_fn_check_prepare_trace "examine.at:269"
( $at_check_trace; pspp -O format=csv extreme.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Case Processing Summary
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x,19.430,100%,.000,0%,19.430,100%
Table: Extreme Values
,,,Case Number,Value
x,Highest,1,18,1560000.000
,,2,17,1560000.000
,,3,16,1560000.000
,,4,15,1440000.000
,,5,14,1380000.000
,Lowest,1,1,300000.000
,,2,2,320000.000
,,3,3,480000.000
,,4,4,960000.000
,,5,5,960000.000
Table: Descriptives
,,,Statistic,Std. Error
x,Mean,,1120010.293,86222.178
,95% Confidence Interval for Mean,Lower Bound,939166.693,
,,Upper Bound,1300853.894,
,5% Trimmed Mean,,1141017.899,
,Median,,1200000.000,
,Variance,,144447748124.869,
,Std. Deviation,,380062.821,
,Minimum,,300000.000,
,Maximum,,1560000.000,
,Range,,1260000.000,
,Interquartile Range,,467258.065,
,Skewness,,-.887,.519
,Kurtosis,,.340,1.005
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:269"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_463
#AT_START_464
at_fn_group_banner 464 'examine.at:311' \
"EXAMINE -- percentiles" " " 70
at_xfail=no
(
$as_echo "464. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >examine.sps <<'_ATEOF'
DATA LIST LIST /X *.
BEGIN DATA.
2.00
8.00
5.00
END DATA.
EXAMINE /x
/PERCENTILES=HAVERAGE.
EXAMINE /x
/PERCENTILES=WAVERAGE.
EXAMINE /x
/PERCENTILES=ROUND.
EXAMINE /x
/PERCENTILES=EMPIRICAL.
EXAMINE /x
/PERCENTILES=AEMPIRICAL.
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:335: pspp -o pspp.csv examine.sps"
at_fn_check_prepare_trace "examine.at:335"
( $at_check_trace; pspp -o pspp.csv examine.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:335"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/examine.at:336: cat pspp.csv"
at_fn_check_prepare_trace "examine.at:336"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
X,F8.0
Table: Case Processing Summary
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
X,3,100%,0,0%,3,100%
Table: Percentiles
,,Percentiles,,,,,,
,,5,10,25,50,75,90,95
X,HAverage,.40,.80,2.00,5.00,8.00,8.00,8.00
,Tukey's Hinges,,,3.50,5.00,6.50,,
Table: Case Processing Summary
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
X,3,100%,0,0%,3,100%
Table: Percentiles
,,Percentiles,,,,,,
,,5,10,25,50,75,90,95
X,Weighted Average,.30,.60,1.50,3.50,5.75,7.10,7.55
,Tukey's Hinges,,,3.50,5.00,6.50,,
Table: Case Processing Summary
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
X,3,100%,0,0%,3,100%
Table: Percentiles
,,Percentiles,,,,,,
,,5,10,25,50,75,90,95
X,Rounded,.00,.00,2.00,5.00,5.00,8.00,8.00
,Tukey's Hinges,,,3.50,5.00,6.50,,
Table: Case Processing Summary
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
X,3,100%,0,0%,3,100%
Table: Percentiles
,,Percentiles,,,,,,
,,5,10,25,50,75,90,95
X,Empirical,2.00,2.00,2.00,5.00,8.00,8.00,8.00
,Tukey's Hinges,,,3.50,5.00,6.50,,
Table: Case Processing Summary
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
X,3,100%,0,0%,3,100%
Table: Percentiles
,,Percentiles,,,,,,
,,5,10,25,50,75,90,95
X,Empirical with averaging,2.00,2.00,2.00,5.00,8.00,8.00,8.00
,Tukey's Hinges,,,3.50,5.00,6.50,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:336"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_464
#AT_START_465
at_fn_group_banner 465 'examine.at:403' \
"EXAMINE -- missing values" " " 70
at_xfail=no
(
$as_echo "465. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >examine.sps <<'_ATEOF'
DATA LIST LIST /x * y *.
BEGIN DATA.
1 1
2 1
3 1
4 1
5 2
6 2
. 2
END DATA
EXAMINE /x by y
/MISSING = PAIRWISE
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:420: pspp -o pspp.csv examine.sps"
at_fn_check_prepare_trace "examine.at:420"
( $at_check_trace; pspp -o pspp.csv examine.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:420"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/examine.at:421: cat pspp.csv"
at_fn_check_prepare_trace "examine.at:421"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
x,F8.0
y,F8.0
Table: Case Processing Summary
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x,6,85.7143%,1,14.2857%,7,100%
Table: Case Processing Summary
,,Cases,,,,,
,,Valid,,Missing,,Total,
,y,N,Percent,N,Percent,N,Percent
x,1.00,4,100%,0,0%,4,100%
,2.00,2,66.6667%,1,33.3333%,3,100%
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:421"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_465
#AT_START_466
at_fn_group_banner 466 'examine.at:443' \
"EXAMINE -- user missing values" " " 70
at_xfail=no
(
$as_echo "466. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >examine-m.sps <<'_ATEOF'
DATA LIST notable LIST /x * y *.
BEGIN DATA.
1 2
9999999999 2
9999999999 99
END DATA.
MISSING VALUES x (9999999999).
MISSING VALUES y (99).
EXAMINE
/VARIABLES= x y
/MISSING=PAIRWISE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:459: pspp -O format=csv examine-m.sps"
at_fn_check_prepare_trace "examine.at:459"
( $at_check_trace; pspp -O format=csv examine-m.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Case Processing Summary
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x,1,33.3333%,2,66.6667%,3,100%
y,2,66.6667%,1,33.3333%,3,100%
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:459"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_466
#AT_START_467
at_fn_group_banner 467 'examine.at:469' \
"EXAMINE -- missing values and percentiles" " " 70
at_xfail=no
(
$as_echo "467. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >examine.sps <<'_ATEOF'
DATA LIST LIST /X *.
BEGIN DATA.
99
99
5.00
END DATA.
MISSING VALUE X (99).
EXAMINE /x
/PERCENTILES=HAVERAGE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:483: pspp -o pspp.csv examine.sps"
at_fn_check_prepare_trace "examine.at:483"
( $at_check_trace; pspp -o pspp.csv examine.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:483"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_467
#AT_START_468
at_fn_group_banner 468 'examine.at:489' \
"EXAMINE -- trimmed mean" " " 70
at_xfail=no
(
$as_echo "468. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >examine.sps <<'_ATEOF'
DATA LIST LIST /X * C *.
BEGIN DATA.
1 1
2 49
3 2
END DATA.
WEIGHT BY c.
EXAMINE
x
/STATISTICS=DESCRIPTIVES
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:505: pspp -o pspp.csv examine.sps"
at_fn_check_prepare_trace "examine.at:505"
( $at_check_trace; pspp -o pspp.csv examine.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:505"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/examine.at:506: cat pspp.csv"
at_fn_check_prepare_trace "examine.at:506"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
X,F8.0
C,F8.0
Table: Case Processing Summary
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
X,52.00,100%,.00,0%,52.00,100%
Table: Descriptives
,,,Statistic,Std. Error
X,Mean,,2.02,.03
,95% Confidence Interval for Mean,Lower Bound,1.95,
,,Upper Bound,2.09,
,5% Trimmed Mean,,2.00,
,Median,,2.00,
,Variance,,.06,
,Std. Deviation,,.24,
,Minimum,,1.00,
,Maximum,,3.00,
,Range,,2.00,
,Interquartile Range,,.00,
,Skewness,,1.19,.33
,Kurtosis,,15.73,.65
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:506"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_468
#AT_START_469
at_fn_group_banner 469 'examine.at:536' \
"EXAMINE -- crash bug" " " 70
at_xfail=no
(
$as_echo "469. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >examine.sps <<'_ATEOF'
data list list /a * x * y *.
begin data.
3 1 3
5 1 4
7 2 3
end data.
examine a by x by y
/statistics=DESCRIPTIVES
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:549: pspp -o pspp.csv examine.sps"
at_fn_check_prepare_trace "examine.at:549"
( $at_check_trace; pspp -o pspp.csv examine.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:549"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_469
#AT_START_470
at_fn_group_banner 470 'examine.at:554' \
"EXAMINE -- consecutive runs don't crash" " " 70
at_xfail=no
(
$as_echo "470. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >examine.sps <<'_ATEOF'
data list list /y * z *.
begin data.
6 4
5 3
7 6
end data.
EXAMINE /VARIABLES= z BY y.
EXAMINE /VARIABLES= z.
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:567: pspp -o pspp.csv examine.sps"
at_fn_check_prepare_trace "examine.at:567"
( $at_check_trace; pspp -o pspp.csv examine.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:567"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_470
#AT_START_471
at_fn_group_banner 471 'examine.at:572' \
"EXAMINE -- missing values don't crash" " " 70
at_xfail=no
(
$as_echo "471. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >examine.sps <<'_ATEOF'
data list list /x * y *.
begin data.
1 0
2 0
. 0
3 1
4 1
end data.
examine x by y /statistics=descriptives.
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:584: pspp -o pspp.csv examine.sps"
at_fn_check_prepare_trace "examine.at:584"
( $at_check_trace; pspp -o pspp.csv examine.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:584"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_471
#AT_START_472
at_fn_group_banner 472 'examine.at:589' \
"EXAMINE -- single case doesn't crash" " " 70
at_xfail=no
(
$as_echo "472. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >examine.sps <<'_ATEOF'
DATA LIST LIST /quality * .
BEGIN DATA
3
END DATA
EXAMINE
quality
/STATISTICS descriptives
/PLOT = histogram
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:603: pspp -o pspp.csv examine.sps"
at_fn_check_prepare_trace "examine.at:603"
( $at_check_trace; pspp -o pspp.csv examine.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:603"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_472
#AT_START_473
at_fn_group_banner 473 'examine.at:608' \
"EXAMINE -- all-missing data doesn't crash" " " 70
at_xfail=no
(
$as_echo "473. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >examine.sps <<'_ATEOF'
DATA LIST LIST /x *.
BEGIN DATA.
.
.
.
.
END DATA.
EXAMINE /x PLOT=HISTOGRAM.
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:620: pspp -o pspp.csv examine.sps"
at_fn_check_prepare_trace "examine.at:620"
( $at_check_trace; pspp -o pspp.csv examine.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:620"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_473
#AT_START_474
at_fn_group_banner 474 'examine.at:625' \
"EXAMINE -- big input doesn't crash" " " 70
at_xfail=no
(
$as_echo "474. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >examine.sps <<'_ATEOF'
INPUT PROGRAM.
LOOP #I=1 TO 50000.
COMPUTE X=NORMAL(10).
END CASE.
END LOOP.
END FILE.
END INPUT PROGRAM.
EXAMINE /x
/STATISTICS=DESCRIPTIVES.
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:639: pspp -o pspp.csv examine.sps"
at_fn_check_prepare_trace "examine.at:639"
( $at_check_trace; pspp -o pspp.csv examine.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:639"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_474
#AT_START_475
at_fn_group_banner 475 'examine.at:645' \
"EXAMINE -- big input doesn't crash 2" " " 70
at_xfail=no
(
$as_echo "475. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >make-big-input.pl <<'_ATEOF'
for ($i=0; $i<100000; $i++) { print "AB12\n" };
for ($i=0; $i<100000; $i++) { print "AB04\n" };
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:650: \$PERL make-big-input.pl > large.txt"
at_fn_check_prepare_dynamic "$PERL make-big-input.pl > large.txt" "examine.at:650"
( $at_check_trace; $PERL make-big-input.pl > large.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:650"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >examine.sps <<'_ATEOF'
DATA LIST FILE='large.txt' /S 1-2 (A) X 3 .
AGGREGATE OUTFILE=* /BREAK=X /A=N.
EXAMINE /A BY X.
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:660: pspp -o pspp.csv examine.sps"
at_fn_check_prepare_trace "examine.at:660"
( $at_check_trace; pspp -o pspp.csv examine.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:660"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >more-big-input.pl <<'_ATEOF'
for ($i=0; $i<25000; $i++) { print "AB04\nAB12\n" };
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:665: \$PERL more-big-input.pl >> large.txt"
at_fn_check_prepare_dynamic "$PERL more-big-input.pl >> large.txt" "examine.at:665"
( $at_check_trace; $PERL more-big-input.pl >> large.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:665"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/examine.at:666: pspp -o pspp.csv examine.sps"
at_fn_check_prepare_trace "examine.at:666"
( $at_check_trace; pspp -o pspp.csv examine.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:666"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_475
#AT_START_476
at_fn_group_banner 476 'examine.at:672' \
"EXAMINE -- non-numeric ID" " " 70
at_xfail=no
(
$as_echo "476. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >examine-id.sps <<'_ATEOF'
data list notable list /x * y (a12).
begin data.
1 one
2 two
3 three
4 four
5 five
6 six
7 seven
8 eight
9 nine
10 ten
11 eleven
12 twelve
30 thirty
300 threehundred
end data.
examine x
/statistics = extreme
/id = y
/plot = boxplot
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:700: pspp -O format=csv examine-id.sps"
at_fn_check_prepare_trace "examine.at:700"
( $at_check_trace; pspp -O format=csv examine-id.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Case Processing Summary
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
x,14,100%,0,0%,14,100%
Table: Extreme Values
,,,y,Value
x,Highest,1,threehundred,300.00
,,2,thirty ,30.00
,,3,twelve ,12.00
,,4,eleven ,11.00
,,5,ten ,10.00
,Lowest,1,one ,1.00
,,2,two ,2.00
,,3,three ,3.00
,,4,four ,4.00
,,5,five ,5.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:700"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_476
#AT_START_477
at_fn_group_banner 477 'examine.at:724' \
"EXAMINE -- Bad Input" " " 70
at_xfail=no
(
$as_echo "477. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >examine-bad.sps <<'_ATEOF'
data list list /h * g *.
begin data.
1 1
2 1
3 1
4 1
5 2
6 2
7 2
8 2
9 2
end data.
EXAMINE
/VARIABLES= h
BY g
/STATISTICS = DESCRIPTIVES EXTREME
/PLOT = lkajsdas
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:748: pspp -o pspp.csv examine-bad.sps"
at_fn_check_prepare_trace "examine.at:748"
( $at_check_trace; pspp -o pspp.csv examine-bad.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/examine.at:748"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_477
#AT_START_478
at_fn_group_banner 478 'examine.at:754' \
"EXAMINE -- MISSING=REPORT" " " 70
at_xfail=no
(
$as_echo "478. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >examine-report.sps <<'_ATEOF'
set format = F22.0.
data list list /x * g *.
begin data.
1 1
2 1
3 1
4 1
5 1
6 1
7 1
8 1
9 1
10 2
20 2
30 2
40 2
50 2
60 2
70 2
80 2
90 2
101 9
201 9
301 9
401 9
501 99
601 99
701 99
801 99
901 99
1001 .
2002 .
3003 .
4004 .
end data.
MISSING VALUES g (9, 99, 999).
EXAMINE
/VARIABLES = x
BY g
/STATISTICS = EXTREME
/NOTOTAL
/MISSING = REPORT.
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:805: pspp -O format=csv examine-report.sps"
at_fn_check_prepare_trace "examine.at:805"
( $at_check_trace; pspp -O format=csv examine-report.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
x,F8.0
g,F8.0
Table: Case Processing Summary
,,Cases,,,,,
,,Valid,,Missing,,Total,
,g,N,Percent,N,Percent,N,Percent
x,. (missing),4,100%,0,0%,4,100%
,1,9,100%,0,0%,9,100%
,2,9,100%,0,0%,9,100%
,9 (missing),4,100%,0,0%,4,100%
,99 (missing),5,100%,0,0%,5,100%
Table: Extreme Values
,g,,,Case Number,Value
x,. (missing),Highest,1,31,4004
,,,2,30,3003
,,,3,29,2002
,,,4,28,1001
,,,5,0,0
,,Lowest,1,28,1001
,,,2,29,2002
,,,3,30,3003
,,,4,31,4004
,,,5,31,4004
,1,Highest,1,9,9
,,,2,8,8
,,,3,7,7
,,,4,6,6
,,,5,5,5
,,Lowest,1,1,1
,,,2,2,2
,,,3,3,3
,,,4,4,4
,,,5,5,5
,2,Highest,1,18,90
,,,2,17,80
,,,3,16,70
,,,4,15,60
,,,5,14,50
,,Lowest,1,10,10
,,,2,11,20
,,,3,12,30
,,,4,13,40
,,,5,14,50
,9 (missing),Highest,1,22,401
,,,2,21,301
,,,3,20,201
,,,4,19,101
,,,5,0,0
,,Lowest,1,19,101
,,,2,20,201
,,,3,21,301
,,,4,22,401
,,,5,22,401
,99 (missing),Highest,1,27,901
,,,2,26,801
,,,3,25,701
,,,4,24,601
,,,5,23,501
,,Lowest,1,23,501
,,,2,24,601
,,,3,25,701
,,,4,26,801
,,,5,27,901
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:805"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_478
#AT_START_479
at_fn_group_banner 479 'examine.at:882' \
"EXAMINE -- sample unweighted" " " 70
at_xfail=no
(
$as_echo "479. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sample.sps <<'_ATEOF'
set format = F22.4.
DATA LIST notable LIST /X *
BEGIN DATA.
461.19000000
466.38000000
479.46000000
480.10000000
483.43000000
488.30000000
489.00000000
491.62000000
505.62000000
511.30000000
521.53000000
526.70000000
528.25000000
538.70000000
540.22000000
540.58000000
546.10000000
548.17000000
553.99000000
566.21000000
575.90000000
584.38000000
593.40000000
357.05000000
359.73000000
360.48000000
373.98000000
374.13000000
381.45000000
383.72000000
390.00000000
400.34000000
415.32000000
415.91000000
418.30000000
421.03000000
422.43000000
426.93000000
433.25000000
436.89000000
445.33000000
446.33000000
446.55000000
456.44000000
689.49000000
691.92000000
695.00000000
695.36000000
698.21000000
699.46000000
706.61000000
710.69000000
715.82000000
715.82000000
741.39000000
752.27000000
756.73000000
757.74000000
759.57000000
796.07000000
813.78000000
817.25000000
825.48000000
831.28000000
849.24000000
890.00000000
894.78000000
935.65000000
935.90000000
945.90000000
1012.8600000
1022.6000000
1061.8100000
1063.5000000
1077.2300000
1151.6300000
1355.2800000
598.88000000
606.91000000
621.60000000
624.80000000
636.13000000
637.38000000
640.32000000
649.35000000
656.51000000
662.55000000
664.69000000
106.22000000
132.24000000
174.76000000
204.85000000
264.93000000
264.99000000
269.84000000
325.12000000
331.67000000
337.26000000
347.68000000
354.91000000
END DATA.
EXAMINE
x
/STATISTICS=DESCRIPTIVES
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/examine.at:996: pspp -O format=csv sample.sps"
at_fn_check_prepare_trace "examine.at:996"
( $at_check_trace; pspp -O format=csv sample.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Case Processing Summary
,Cases,,,,,
,Valid,,Missing,,Total,
,N,Percent,N,Percent,N,Percent
X,100,100%,0,0%,100,100%
Table: Descriptives
,,,Statistic,Std. Error
X,Mean,,587.6603,23.2665
,95% Confidence Interval for Mean,Lower Bound,541.4946,
,,Upper Bound,633.8260,
,5% Trimmed Mean,,579.7064,
,Median,,547.1350,
,Variance,,54132.8466,
,Std. Deviation,,232.6647,
,Minimum,,106.2200,
,Maximum,,1355.2800,
,Range,,1249.0600,
,Interquartile Range,,293.1575,
,Skewness,,.6331,.2414
,Kurtosis,,.5300,.4783
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/examine.at:996"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_479
#AT_START_480
at_fn_group_banner 480 'graph.at:3' \
"GRAPH simple scatterplot" " " 71
at_xfail=no
(
$as_echo "480. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >scatterplot.sps <<'_ATEOF'
* Simple Scatterplot test
NEW FILE.
INPUT PROGRAM.
LOOP #i = 1 to 100.
COMPUTE Age = RV.NORMAL(40,10).
END CASE.
END LOOP.
END FILE.
END INPUT PROGRAM.
COMPUTE Size = Age * 3 + 50.
GRAPH
/SCATTERPLOT(BIVARIATE) = Age WITH Size.
_ATEOF
{ set +x
$as_echo "$at_srcdir/graph.at:22: pspp -O format=csv scatterplot.sps"
at_fn_check_prepare_trace "graph.at:22"
( $at_check_trace; pspp -O format=csv scatterplot.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/graph.at:22"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_480
#AT_START_481
at_fn_group_banner 481 'graph.at:27' \
"GRAPH Scatter and Histogram" " " 71
at_xfail=no
(
$as_echo "481. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >scatterlong.sps <<'_ATEOF'
NEW FILE.
INPUT PROGRAM.
LOOP #i = 1 to 10000.
COMPUTE Age = RV.NORMAL(40,10).
COMPUTE CityNum = TRUNC(UNIFORM(2.95)).
END CASE.
END LOOP.
END FILE.
END INPUT PROGRAM.
COMPUTE Size = Age * 3 + 50 + 50*CityNum.
STRING City (a20).
Recode CityNum
(0 = "Madrid")
(1 = "Paris")
(ELSE = "Stockholm")
into City.
GRAPH
/SCATTERPLOT(BIVARIATE) = Age WITH Size
GRAPH
/SCATTERPLOT(BIVARIATE) = Age WITH CityNum
GRAPH
/SCATTERPLOT = CityNum WITH Age
GRAPH
/SCATTERPLOT = CityNum WITH Size
GRAPH
/SCATTERPLOT(BIVARIATE) = Age WITH Size BY City
GRAPH
/SCATTERPLOT(BIVARIATE) = Age WITH Size BY CityNum
ADD VALUE LABELS
/CityNum 1 'Rio' 2 'Tokyo' 0 'Mumbai'.
GRAPH
/SCATTERPLOT(BIVARIATE) = Age WITH Size BY CityNum
GRAPH
/HISTOGRAM = Age.
_ATEOF
{ set +x
$as_echo "$at_srcdir/graph.at:78: pspp -O format=pdf scatterlong.sps"
at_fn_check_prepare_trace "graph.at:78"
( $at_check_trace; pspp -O format=pdf scatterlong.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/graph.at:78"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_481
#AT_START_482
at_fn_group_banner 482 'graph.at:81' \
"GRAPH missing values don't crash" " " 71
at_xfail=no
(
$as_echo "482. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >scatter.sps <<'_ATEOF'
data list list /x * y *.
begin data.
1 0
2 0
. 0
3 1
4 1
5 .
6 1
end data.
graph
/scatterplot = x with y.
graph
/histogram = x.
_ATEOF
{ set +x
$as_echo "$at_srcdir/graph.at:98: pspp -o pspp.pdf scatter.sps"
at_fn_check_prepare_trace "graph.at:98"
( $at_check_trace; pspp -o pspp.pdf scatter.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/graph.at:98"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_482
#AT_START_483
at_fn_group_banner 483 'graph.at:102' \
"GRAPH missing=VARIABLE no crash" " " 71
at_xfail=no
(
$as_echo "483. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >scatter.sps <<'_ATEOF'
data list list /x * y *.
begin data.
1 0
2 0
. 0
3 1
4 1
5 .
6 1
end data.
graph
/scatterplot = x with y
/missing = VARIABLE.
graph
/histogram = x
/missing = VARIABLE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/graph.at:121: pspp -o pspp.pdf scatter.sps"
at_fn_check_prepare_trace "graph.at:121"
( $at_check_trace; pspp -o pspp.pdf scatter.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/graph.at:121"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_483
#AT_START_484
at_fn_group_banner 484 'graph.at:125' \
"GRAPH missing value in by variable" " " 71
at_xfail=no
(
$as_echo "484. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >scatter.sps <<'_ATEOF'
data list list /x * y * z *.
begin data.
1 0 9
2 0 9
. 0 9
3 1 .
4 1 8
5 . 8
6 1 8
end data.
graph
/scatterplot = x with y by z
/missing = VARIABLE.
graph
/scatterplot = x with y by z.
_ATEOF
{ set +x
$as_echo "$at_srcdir/graph.at:145: pspp -o pspp.pdf scatter.sps"
at_fn_check_prepare_trace "graph.at:145"
( $at_check_trace; pspp -o pspp.pdf scatter.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/graph.at:145"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_484
#AT_START_485
at_fn_group_banner 485 'graph.at:150' \
"GRAPH histogram with null data" " " 71
at_xfail=no
(
$as_echo "485. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >null-hist.sps <<'_ATEOF'
data list list /x *.
begin data.
1109
.
end data.
graph
/histogram = x.
_ATEOF
{ set +x
$as_echo "$at_srcdir/graph.at:163: pspp -o pspp.pdf null-hist.sps"
at_fn_check_prepare_trace "graph.at:163"
( $at_check_trace; pspp -o pspp.pdf null-hist.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/graph.at:163"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_485
#AT_START_486
at_fn_group_banner 486 'factor.at:3' \
"FACTOR extraction=paf method=correlation" " " 72
at_xfail=no
(
$as_echo "486. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >factor.sps <<'_ATEOF'
set format = F11.3.
data list notable fixed /question13 to question24 1-12.
begin data.
555555535543
544453434443
545555544444
444442444433
554545554554
554455454455
555554555244
554455544443
555554434344
544454544344
555545555555
555454544455
555445544455
455544443343
544454344344
555555555455
555554454455
555555554445
555555554555
545534553343
555555535554
555544444445
545544334433
554555434443
555555544454
555445545453
555554434244
444444433233
545555454443
554443434243
444534334333
454534444332
555455353444
555544443243
555554543243
555544444343
445444434443
555555555544
444444434340
455044434334
555555533433
554554535040
434533334232
443232444432
555555555555
555555554544
555544444445
444224343344
444554454355
444434332433
555555555555
043243432433
444443334333
453443433434
443342332232
554434434533
444344434443
444444434443
554552434133
453334332432
444445554444
431232332223
555555555544
544445543443
444455535543
444444444433
444444543243
555431443333
444443433433
444433433443
454334444433
111111111544
444423442433
555443333353
555543334344
055454400000
555454444355
555555555555
055544533333
555554555554
555555535554
555555545355
555555555455
555544545543
555554404455
555454435454
555555535554
555555555555
555443433544
555554435454
555555545344
555555535454
555445535453
444444333544
555554434444
455454434454
555555535555
554545534455
555555555443
454443434444
555553334444
555554545454
555555555555
555554554454
555555555555
544545534544
555555534454
555555555455
555554535544
555555535555
555451234443
555444444544
555544434354
555545533444
555554534443
545554434554
554433444433
544432233524
411111111111
445423442233
555543433344
444443342233
555555534455
545442434223
554553352333
544554554445
555555435455
444334304234
455453444434
444443443245
555552232132
555434324345
544444434344
534344344444
445555555344
444343442132
444444434344
444444554334
444545444333
434442343224
443443433233
555551555554
544544434444
454544434433
555555535434
555555555555
455544444444
454444434233
555555544344
454445544445
444444554434
555455455443
555454425444
444454434443
544443433233
444543434433
555553545354
544444444433
444445434433
555533353333
555434234333
444314222411
555555555555
455545534443
455045534433
555545444444
455544243543
444421113343
554444534444
555555544554
555334434452
555544543455
555554434554
555445554454
555555545344
555555555555
554543334245
554441233333
555554334545
555555535544
555555554554
555445444543
444424544432
444425544333
555434344443
555533233223
544433442343
555555555555
555445452234
555444555444
555444544455
555544354554
545445555555
555555555555
455443342232
555555544454
455534443455
555555555055
444554333244
444445434543
555554544455
444443444434
444444434445
334231314323
444444434433
555554444443
444444434443
555455434444
444444444444
555455435455
444444434344
444543433232
544443334454
555544433244
534443324224
555555544444
444443434444
555553444344
443434443333
444444434333
554445444343
444443344434
445555544543
555554443443
322232403322
444444444433
444445444443
444454534445
544344444344
554445534544
555555555554
555544432333
444444444443
555555555554
455555555554
555555555543
555555555544
555554445555
444335544455
555555555555
555454444454
555455544454
444445444444
555555555555
555455454554
555454544554
555555555455
555555554444
444444544434
334334443333
422224222211
121512011111
443444432332
434335533344
444443543433
554454443453
555555545454
555555555344
555555555554
555555334555
454445554444
454545534444
555554555444
455444534455
555544554544
444444444444
555424423133
222433443224
544544532344
545554544544
555532544144
444432343433
434545554545
444344505443
555555555544
555554555344
444531113112
555554333133
455433233233
354354434345
454534433433
433112332321
555445433333
454343434143
555554445555
455423334322
443333332222
444443444443
553432224134
444223432233
454324425444
344434514443
555552415255
354332543353
444531333233
443433334133
444444444433
444444445533
445133212223
343433432213
442333333332
345455535244
443211121122
555445444444
555555544344
453243332232
443543422533
554444434344
554444333444
555555335343
444231121133
454433332233
455524434244
554433224354
555455555444
454444424444
554242232134
555553315443
555553333454
455421434211
111111151111
454443203123
454243334132
355332213144
554534334134
555543434355
555543433255
444441223334
555443143255
444444444454
444442323544
454443434343
445453434444
454455554433
554532342234
444442243233
444442343334
555443433444
555543253444
554554444455
555543355344
555444445444
434443204222
444432444234
222142441111
111111141111
334334454433
555354552543
433411122112
455534504444
543211224233
344333332532
344443233333
444424432434
555555544454
555555554544
555444444444
555443533443
555554544344
555554444444
544543433343
444445434444
555555555555
555443333233
545444534454
555454434343
555453434544
544334444333
555443443444
555555534544
444444444433
555543433343
555444445334
555543442433
455444334443
554443434443
555254500544
555444433344
555555535544
444443532232
544443433433
555555535544
555455454444
555455445544
544444534433
555555555554
555553533444
555555555554
555554434343
555455544443
555554444443
555454444445
333222333223
444443544233
543443534433
555545454533
444444404033
455454504543
455555555454
454443344343
555553435244
555543544444
555553343044
444443444433
445543434434
555554433545
555554455445
455553333234
555552344243
444141212213
444443504234
445544253444
555554354555
534552234543
555554544544
444233404224
555554534444
444443444344
422442434324
554434434344
444444434334
443433432444
555454435344
252423332214
454544434434
444444444244
555554544445
443222432333
555544444332
545555543445
554544334444
555445555544
554343434433
555555535554
444554444333
553544343534
555553254433
555555554554
544443443344
555443444344
544432144123
555555555555
555555555354
555555535545
455454434444
455455534445
455555554455
555553545445
445545544444
545345553555
444445444433
443435433433
555554545353
444443232223
444444434433
555555545454
555554444343
555554444443
434544333422
444443434343
555555455443
555544434343
455545534444
555555555553
444443343434
555555555445
433444444434
344221512132
333421132223
333444443444
435544545533
444335544443
333323223323
334434332333
444422323213
324433443423
555555554555
555452424444
555544434444
555544443343
555445545453
555555344453
555544545550
454443434334
444332233344
555554332344
554444433444
555554555554
555555543544
444442443132
555555545555
544553435533
044044444444
444443434533
555454433434
555555555454
555555555555
454544434444
444444434333
554555455554
555555543444
423331124132
445445534455
555555555554
444535554434
555555555554
354443422232
555545535443
555555555555
555455444453
455434443333
455444443233
343322434411
555555555534
453442432333
445554434544
345444443333
454554554355
444434453434
555555454443
555443343341
545553343433
222343222201
444433434443
535555555544
552541442423
545433343334
455445433443
444444433433
455543343433
434444432333
444545444444
555554534444
452444434433
454443432533
555453334433
444442233432
555555553433
545555545445
335543222333
554554344445
243424442212
133222432411
343434534233
222222212211
445455554434
455554453344
223334424434
555355555544
455544554434
544455555444
444444444444
444444444344
444334444444
444444444434
555455534243
555555545555
555555555555
444443534343
555554544444
555555555454
444434433433
455445544444
555544544455
444333433333
455443445343
444432442444
443334451543
555554455555
555444444444
555555555455
555555555554
555454345154
555555555555
555555555455
555554454544
454444454544
554443334544
455555402535
555554531534
455545544554
444423444223
555444334533
455554445243
453444334344
555555555554
555555555455
555555555554
455443334344
555555253555
555554433454
555444344455
550030034433
555444233343
555343222133
555555555554
555555243243
555555555355
555554345555
555443434454
545543133133
555443334154
444444344454
555555242254
555554444344
545443334454
554444132454
555455143154
555554453044
555555555455
555534335454
555555245555
545543333444
555555355454
555353145133
555553043454
555555354554
555543434454
555444324454
444444203443
555552233355
555555445455
555500034354
555354354444
555555555555
555543334144
555555005254
454444344254
555555555554
555555555255
555555555455
444444242243
555554445154
444444234333
555555553455
444422224243
555545443344
545552133143
555455044344
555555455555
555555545454
454433343144
555555555555
555455255155
555555454455
555555424455
555555355555
555444444455
555555454455
544411211314
223322441123
444223434233
444441121232
555555535555
454445533444
434442434433
545355554454
555542544333
445545555444
321000001011
444444444444
333223321322
444232433233
425432523122
455555555544
555555545555
555555534354
554554444243
555554343443
444443434333
555224252443
555544433433
344544434423
555554434344
555542134233
444344434444
445443433233
455343333434
455443333445
355344434433
234234433333
445444444445
455535535545
443423234443
455544334544
345441333323
445444533433
455554443355
445444433243
455454453444
444244444444
554244544154
555555555555
454343444444
555444444344
545455534454
555555555555
555554534454
555254555444
544354544453
553454534445
555454445355
545253554454
433342322233
544444444443
555455445544
424322433233
444424222233
555355555544
000000000000
555455345344
000055505450
434333444333
444445444444
555555555545
555554455545
555455435533
544544444243
444331232323
555555554444
443332323233
444224342433
555555555544
433443342333
555445504554
555545555544
555555535555
555555535345
454443433333
555444444555
444443232435
555433444443
555443434543
555555535555
555555533544
555543234444
433432332221
443433544233
443443333334
444424433444
552444333123
233332232211
223422221122
434433414133
332323333102
552544223222
542423343232
555552534132
455554544134
433523533132
433333433433
435434543333
434553433444
555544434345
443543443433
555555542344
544444553144
555544544243
535443441342
344555444333
444444443333
443443433432
545554534544
443533433433
333443432223
333333433123
322432122213
555555555555
554555444433
444543443234
444444433433
452555534433
244444444233
433442422232
555555535555
555555554455
555554545244
555555355455
555555555555
555555555555
444433323233
555455455455
434445444433
555554444455
454444543445
555555535455
555545554455
555555555555
555555555555
555443344353
455543304132
444443444433
555555555355
434433443333
444434444433
444444444433
555555555555
445553443323
445444444444
555554444054
455555554543
555555535555
555554445454
555444444443
555555555454
555554344455
555555454454
554444444454
555555555353
555545544454
553545332223
444424444332
545555543433
555444433444
555555444445
444444424433
444444543434
124113531311
555554534543
555343333333
545444544344
555444534444
555544543444
555455544443
444324402121
555554534544
555455544444
555555544454
444334404433
555443534444
555545554444
555555555555
455333233433
455444433433
455444444444
444235442443
555443343433
444445453444
454345453432
555555453444
344433322323
444443444244
444442343133
554445432233
555555544444
555555534444
555554455554
454443334244
544443333233
444445534445
444432134121
555555332243
555555544433
555554434444
454543534233
454432432343
444424432433
545553335344
555443434344
454443433333
555553534444
554544434355
552532421235
454543433434
544544343234
555552334125
555543455555
443442334222
554443444344
555554543334
555552342444
554443433333
443444434445
555554533344
442412242121
454543343244
445554433344
444443333433
444443433333
444433333334
444444334444
432321102223
444444434443
444444434343
454531432331
445543433434
554554434554
334253232333
444443434244
444433443234
444433334334
444443433333
553434303222
454443434244
444445544444
443441133433
444432232133
444444404344
444444333243
455543124243
555544532344
444432333132
554553434244
454443443333
433111121111
555555555544
444432433222
444443433233
443332332133
445344453243
444444405434
554554434343
455344534443
444444400434
444444344344
544554533443
555554443455
555555544544
555554534444
323123232311
444344344443
555554555544
343323332333
444443434444
444442214340
555434434444
455543343444
445432434433
455553434455
243321332322
444422332332
555533454444
555544443433
354422431422
333322421211
444443432434
344422431322
333342222321
444443454433
443443444433
553434531334
554434552343
545455553544
554455554443
555555555533
555555554543
454454544433
555444532143
554545544443
444233442434
544444434234
554344432233
555345533355
554554544433
455444444344
555554554554
555554545555
444433534434
444444421134
334333333333
334443443343
122333441413
434444333333
444344433233
444333332143
555154344133
324344333223
244444402233
454443433543
444344433344
455555445555
555555544433
454544434443
344535554533
333435443433
444444554544
343434443333
544553544455
555444444455
244333332222
333441232233
544433433433
555544343344
344211142124
442442232113
433432332223
333424322222
444443333233
344321232223
442434342422
545555535555
455454434454
455355544444
454444444445
555554432430
555444344144
455534342234
555555554354
213332443111
555545434433
555554424444
443434443433
555555554443
555555555544
435535554433
555455545443
555555554533
554545443455
555553333233
434432232323
443443333433
443544231534
434533334334
555555535544
555544444445
555555555555
555555555555
555555555555
555555555555
544555544544
555555545555
545555534354
445444344344
555555555555
444443343334
555444440000
555555555554
555555545455
454434444345
555445544443
555554535433
454445555555
555444444355
555555555555
555555555555
555555555555
555555554555
555455554455
454435544255
545543342243
555544355345
555555455354
435553244333
555555443454
444444433445
121422433111
555554543244
555444554444
444203444433
344342553322
554445554344
545445454454
444245504233
334335555533
554355544444
444445545444
555555555344
454544543233
444455532434
555544354243
535444554433
444444444444
455555553243
244442343235
554544504043
444435553433
455553434354
555444343314
555553344453
555555555544
544444444433
434434550033
555455544444
455445534344
454445444554
555555555555
555555555555
555555555454
555455545412
334433343132
555454455455
555554454443
555555555555
555555553433
555555555555
555555445555
555545445455
555555545554
555555555555
445455554443
555445554433
555555554445
555553333144
555554455143
554454445444
555555554533
334422433422
555554434444
433531133222
443432342224
555544554433
553434333333
555543334443
444443344323
555555555555
555554545344
555555545554
555342434333
444443333233
444544435444
555555555555
555455554354
555555405054
555555555555
554555545545
555555555544
555545454344
555555455555
433444444343
454555554444
453555554544
444445554444
544455555455
555343434343
555553444454
555444434443
555555555444
555555545443
555444534455
555555555555
444443443434
555445533543
555555555444
555544444354
445444544243
555554555455
555555455444
555555555544
555555555454
554445545454
555555555543
344444434443
555555454453
455444443433
344244434433
355234452132
555445545455
444444444444
455444454433
555555555555
344233341155
333334433233
444433434333
444233443334
454344544444
555554245253
444444333344
554544434333
555444443343
555554555445
005555555544
554444445244
555455555555
555555555444
444444444433
555555555444
555555544454
555555555544
444444434444
555555535553
545534543334
554554534533
555555555554
554554544544
454541231221
555555535544
445344334432
444444344333
555555534444
555555545555
443434544232
545544433343
343234434333
444444443233
555454444455
555455535455
554433442243
444444544454
554545554544
454444444444
554455534455
555555544355
555445555555
555444534444
455454534444
555555555544
444444444455
454455554344
443244442233
350554554434
455444535343
344233443433
454444535545
244222232232
245345554344
355344444443
555455555444
444434444233
334323444322
333234443233
455455554454
555554544434
555355555444
444444544443
555554555544
344231224131
444443434433
454344444431
555554555553
454544444443
444443443532
334323423222
455555545554
555542434443
554444444443
554444534344
555443454555
555555534554
444434443343
444234432233
334323311333
444443443233
355424552242
233335323322
234233443333
123353532334
444345555244
332222433422
545445555443
555555555555
555554444443
455445554455
455455555455
555555555555
444443433445
555455555544
355453434232
555555554344
444433433433
434322242112
444444433433
444445444544
555444535444
544444444443
454544344334
454444334333
434433433332
334434423423
444455552233
442442342233
445433433343
555555444355
555555555555
455554555545
555445544444
544444434443
555555535333
554444444344
555554554445
345433334121
555555555554
545444444233
555555544455
555554545555
555555455555
555555545555
555554544455
444444444333
544544544445
555445544544
555455444455
555455555454
554455535444
453423442244
444443444444
454444333333
555555555542
555555555543
555555555544
555555535534
555555555444
444443423333
555444444444
555445544453
444444444443
555555443444
444443444333
554554154344
555543353333
554445443333
555555553455
554534444243
554555554545
555544443443
555554555555
555425552422
555555555555
454421121321
555454453433
555555554443
244224431223
455444453444
454345544455
344235545044
555555555544
555553325554
554554444244
555545544544
454555554545
444444545444
545544444455
454344445443
545555554453
444444444443
545554554453
555453434444
005434434454
455555455544
555555555554
455542444433
545543444555
445545445444
555553325454
555554555554
444544444443
555555444454
443332443222
454444443444
344333433332
555455444455
555555555445
555555534454
445433432343
555554434444
555555545444
544545434455
454435543444
555555555555
555455554555
555555544554
555553554455
555555555555
545454545444
555555445555
554534343444
555545443343
545454334444
554445544544
555455354344
555555555355
554445544354
455554444444
555555553543
555554444444
555543233444
555554344433
333334441223
543554344434
055541243244
555555555544
555555533444
555445444544
444335343433
544434344333
544435533333
444444443333
555555555554
555552343233
444444444433
544444434444
555555545555
555555555554
445244434444
445444434444
445555554521
443444543343
444433343434
355444433442
555543444455
555444334544
555555555555
554555545555
555555554555
555555555555
454444343445
444444433444
354445443444
555334242132
455445555543
254153343433
354244443333
554455444344
343255535444
455454555553
555455545555
444343433343
343323443323
455444444424
555544444455
343434543444
555555555544
555554534243
555554543344
555455555544
555443344343
444445533133
555543534555
444554444444
444002323320
444232322222
244344424441
555443344334
555555555555
555444534443
555555555555
555555555550
455555554555
555555555555
end data.
missing values
question13 question14 question15 question16 question17 question18 question19 question20 question21 question22 question23 question24 (0).
factor
/variables question13 question14 question15 question16 question17 question18 question19 question20 question21 question22 question23 question24
/analysis all
/print univariate det correlation
/format blank(.30)
/plot eigen
/criteria factors(3)
/extraction paf
/method = correlation.
_ATEOF
{ set +x
$as_echo "$at_srcdir/factor.at:1456: pspp -O format=csv factor.sps"
at_fn_check_prepare_trace "factor.at:1456"
( $at_check_trace; pspp -O format=csv factor.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Descriptive Statistics
,Mean,Std. Deviation,Analysis N
question13,4.462,.729,1365
question14,4.525,.700,1365
question15,4.445,.732,1365
question16,4.281,.829,1365
question17,4.166,.895,1365
question18,3.930,1.034,1365
question19,4.077,.963,1365
question20,3.777,.909,1365
question21,3.774,.984,1365
question22,3.607,1.116,1365
question23,3.813,.957,1365
question24,3.666,.926,1365
Table: Correlation Matrix
,,question13,question14,question15,question16,question17,question18,question19,question20,question21,question22,question23,question24
Correlations,question13,1.000,.661,.600,.566,.577,.409,.286,.304,.476,.333,.564,.454
,question14,.661,1.000,.635,.500,.552,.433,.320,.315,.449,.333,.565,.443
,question15,.600,.635,1.000,.505,.587,.457,.359,.356,.509,.369,.582,.435
,question16,.566,.500,.505,1.000,.586,.405,.335,.317,.452,.363,.459,.430
,question17,.577,.552,.587,.586,1.000,.555,.449,.417,.595,.450,.613,.521
,question18,.409,.433,.457,.405,.555,1.000,.627,.521,.554,.536,.569,.474
,question19,.286,.320,.359,.335,.449,.627,1.000,.446,.499,.484,.444,.374
,question20,.304,.315,.356,.317,.417,.521,.446,1.000,.425,.383,.410,.357
,question21,.476,.449,.509,.452,.595,.554,.499,.425,1.000,.507,.598,.500
,question22,.333,.333,.369,.363,.450,.536,.484,.383,.507,1.000,.493,.444
,question23,.564,.565,.582,.459,.613,.569,.444,.410,.598,.493,1.000,.705
,question24,.454,.443,.435,.430,.521,.474,.374,.357,.500,.444,.705,1.000
Determinant,.002,,,,,,,,,,,,
Table: Factor Matrix
,Factor,,
,1,2,3
question13,.713,.398,
question14,.703,.339,
question15,.721,,
question16,.648,,
question17,.783,,
question18,.740,-.345,
question19,.616,-.415,
question20,.550,,
question21,.732,,
question22,.613,,
question23,.819,,.345
question24,.695,,.386
Table: Rotated Factor Matrix
,Factor,,
,1,2,3
question13,.771,,
question14,.726,,
question15,.676,,
question16,.591,,
question17,.587,.446,
question18,,.739,
question19,,.727,
question20,,.540,
question21,.402,.533,.321
question22,,.559,
question23,.449,.377,.668
question24,.324,.321,.652
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/factor.at:1456"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_486
#AT_START_487
at_fn_group_banner 487 'factor.at:1523' \
"FACTOR extraction=pc method=correlation" " " 72
at_xfail=no
(
$as_echo "487. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >factor2.sps <<'_ATEOF'
set format = F11.3.
data list notable list /id female race ses schtyp prog read write math science socst.
begin data.
70.00 .00 4.00 1.00 1.00 1.00 57.00 52.00 41.00 47.00 57.00
121.00 1.00 4.00 2.00 1.00 3.00 68.00 59.00 53.00 63.00 61.00
86.00 .00 4.00 3.00 1.00 1.00 44.00 33.00 54.00 58.00 31.00
141.00 .00 4.00 3.00 1.00 3.00 63.00 44.00 47.00 53.00 56.00
172.00 .00 4.00 2.00 1.00 2.00 47.00 52.00 57.00 53.00 61.00
113.00 .00 4.00 2.00 1.00 2.00 44.00 52.00 51.00 63.00 61.00
50.00 .00 3.00 2.00 1.00 1.00 50.00 59.00 42.00 53.00 61.00
11.00 .00 1.00 2.00 1.00 2.00 34.00 46.00 45.00 39.00 36.00
84.00 .00 4.00 2.00 1.00 1.00 63.00 57.00 54.00 58.00 51.00
48.00 .00 3.00 2.00 1.00 2.00 57.00 55.00 52.00 50.00 51.00
75.00 .00 4.00 2.00 1.00 3.00 60.00 46.00 51.00 53.00 61.00
60.00 .00 4.00 2.00 1.00 2.00 57.00 65.00 51.00 63.00 61.00
95.00 .00 4.00 3.00 1.00 2.00 73.00 60.00 71.00 61.00 71.00
104.00 .00 4.00 3.00 1.00 2.00 54.00 63.00 57.00 55.00 46.00
38.00 .00 3.00 1.00 1.00 2.00 45.00 57.00 50.00 31.00 56.00
115.00 .00 4.00 1.00 1.00 1.00 42.00 49.00 43.00 50.00 56.00
76.00 .00 4.00 3.00 1.00 2.00 47.00 52.00 51.00 50.00 56.00
195.00 .00 4.00 2.00 2.00 1.00 57.00 57.00 60.00 58.00 56.00
114.00 .00 4.00 3.00 1.00 2.00 68.00 65.00 62.00 55.00 61.00
85.00 .00 4.00 2.00 1.00 1.00 55.00 39.00 57.00 53.00 46.00
167.00 .00 4.00 2.00 1.00 1.00 63.00 49.00 35.00 66.00 41.00
143.00 .00 4.00 2.00 1.00 3.00 63.00 63.00 75.00 72.00 66.00
41.00 .00 3.00 2.00 1.00 2.00 50.00 40.00 45.00 55.00 56.00
20.00 .00 1.00 3.00 1.00 2.00 60.00 52.00 57.00 61.00 61.00
12.00 .00 1.00 2.00 1.00 3.00 37.00 44.00 45.00 39.00 46.00
53.00 .00 3.00 2.00 1.00 3.00 34.00 37.00 46.00 39.00 31.00
154.00 .00 4.00 3.00 1.00 2.00 65.00 65.00 66.00 61.00 66.00
178.00 .00 4.00 2.00 2.00 3.00 47.00 57.00 57.00 58.00 46.00
196.00 .00 4.00 3.00 2.00 2.00 44.00 38.00 49.00 39.00 46.00
29.00 .00 2.00 1.00 1.00 1.00 52.00 44.00 49.00 55.00 41.00
126.00 .00 4.00 2.00 1.00 1.00 42.00 31.00 57.00 47.00 51.00
103.00 .00 4.00 3.00 1.00 2.00 76.00 52.00 64.00 64.00 61.00
192.00 .00 4.00 3.00 2.00 2.00 65.00 67.00 63.00 66.00 71.00
150.00 .00 4.00 2.00 1.00 3.00 42.00 41.00 57.00 72.00 31.00
199.00 .00 4.00 3.00 2.00 2.00 52.00 59.00 50.00 61.00 61.00
144.00 .00 4.00 3.00 1.00 1.00 60.00 65.00 58.00 61.00 66.00
200.00 .00 4.00 2.00 2.00 2.00 68.00 54.00 75.00 66.00 66.00
80.00 .00 4.00 3.00 1.00 2.00 65.00 62.00 68.00 66.00 66.00
16.00 .00 1.00 1.00 1.00 3.00 47.00 31.00 44.00 36.00 36.00
153.00 .00 4.00 2.00 1.00 3.00 39.00 31.00 40.00 39.00 51.00
176.00 .00 4.00 2.00 2.00 2.00 47.00 47.00 41.00 42.00 51.00
177.00 .00 4.00 2.00 2.00 2.00 55.00 59.00 62.00 58.00 51.00
168.00 .00 4.00 2.00 1.00 2.00 52.00 54.00 57.00 55.00 51.00
40.00 .00 3.00 1.00 1.00 1.00 42.00 41.00 43.00 50.00 41.00
62.00 .00 4.00 3.00 1.00 1.00 65.00 65.00 48.00 63.00 66.00
169.00 .00 4.00 1.00 1.00 1.00 55.00 59.00 63.00 69.00 46.00
49.00 .00 3.00 3.00 1.00 3.00 50.00 40.00 39.00 49.00 47.00
136.00 .00 4.00 2.00 1.00 2.00 65.00 59.00 70.00 63.00 51.00
189.00 .00 4.00 2.00 2.00 2.00 47.00 59.00 63.00 53.00 46.00
7.00 .00 1.00 2.00 1.00 2.00 57.00 54.00 59.00 47.00 51.00
27.00 .00 2.00 2.00 1.00 2.00 53.00 61.00 61.00 57.00 56.00
128.00 .00 4.00 3.00 1.00 2.00 39.00 33.00 38.00 47.00 41.00
21.00 .00 1.00 2.00 1.00 1.00 44.00 44.00 61.00 50.00 46.00
183.00 .00 4.00 2.00 2.00 2.00 63.00 59.00 49.00 55.00 71.00
132.00 .00 4.00 2.00 1.00 2.00 73.00 62.00 73.00 69.00 66.00
15.00 .00 1.00 3.00 1.00 3.00 39.00 39.00 44.00 26.00 42.00
67.00 .00 4.00 1.00 1.00 3.00 37.00 37.00 42.00 33.00 32.00
22.00 .00 1.00 2.00 1.00 3.00 42.00 39.00 39.00 56.00 46.00
185.00 .00 4.00 2.00 2.00 2.00 63.00 57.00 55.00 58.00 41.00
9.00 .00 1.00 2.00 1.00 3.00 48.00 49.00 52.00 44.00 51.00
181.00 .00 4.00 2.00 2.00 2.00 50.00 46.00 45.00 58.00 61.00
170.00 .00 4.00 3.00 1.00 2.00 47.00 62.00 61.00 69.00 66.00
134.00 .00 4.00 1.00 1.00 1.00 44.00 44.00 39.00 34.00 46.00
108.00 .00 4.00 2.00 1.00 1.00 34.00 33.00 41.00 36.00 36.00
197.00 .00 4.00 3.00 2.00 2.00 50.00 42.00 50.00 36.00 61.00
140.00 .00 4.00 2.00 1.00 3.00 44.00 41.00 40.00 50.00 26.00
171.00 .00 4.00 2.00 1.00 2.00 60.00 54.00 60.00 55.00 66.00
107.00 .00 4.00 1.00 1.00 3.00 47.00 39.00 47.00 42.00 26.00
81.00 .00 4.00 1.00 1.00 2.00 63.00 43.00 59.00 65.00 44.00
18.00 .00 1.00 2.00 1.00 3.00 50.00 33.00 49.00 44.00 36.00
155.00 .00 4.00 2.00 1.00 1.00 44.00 44.00 46.00 39.00 51.00
97.00 .00 4.00 3.00 1.00 2.00 60.00 54.00 58.00 58.00 61.00
68.00 .00 4.00 2.00 1.00 2.00 73.00 67.00 71.00 63.00 66.00
157.00 .00 4.00 2.00 1.00 1.00 68.00 59.00 58.00 74.00 66.00
56.00 .00 4.00 2.00 1.00 3.00 55.00 45.00 46.00 58.00 51.00
5.00 .00 1.00 1.00 1.00 2.00 47.00 40.00 43.00 45.00 31.00
159.00 .00 4.00 3.00 1.00 2.00 55.00 61.00 54.00 49.00 61.00
123.00 .00 4.00 3.00 1.00 1.00 68.00 59.00 56.00 63.00 66.00
164.00 .00 4.00 2.00 1.00 3.00 31.00 36.00 46.00 39.00 46.00
14.00 .00 1.00 3.00 1.00 2.00 47.00 41.00 54.00 42.00 56.00
127.00 .00 4.00 3.00 1.00 2.00 63.00 59.00 57.00 55.00 56.00
165.00 .00 4.00 1.00 1.00 3.00 36.00 49.00 54.00 61.00 36.00
174.00 .00 4.00 2.00 2.00 2.00 68.00 59.00 71.00 66.00 56.00
3.00 .00 1.00 1.00 1.00 2.00 63.00 65.00 48.00 63.00 56.00
58.00 .00 4.00 2.00 1.00 3.00 55.00 41.00 40.00 44.00 41.00
146.00 .00 4.00 3.00 1.00 2.00 55.00 62.00 64.00 63.00 66.00
102.00 .00 4.00 3.00 1.00 2.00 52.00 41.00 51.00 53.00 56.00
117.00 .00 4.00 3.00 1.00 3.00 34.00 49.00 39.00 42.00 56.00
133.00 .00 4.00 2.00 1.00 3.00 50.00 31.00 40.00 34.00 31.00
94.00 .00 4.00 3.00 1.00 2.00 55.00 49.00 61.00 61.00 56.00
24.00 .00 2.00 2.00 1.00 2.00 52.00 62.00 66.00 47.00 46.00
149.00 .00 4.00 1.00 1.00 1.00 63.00 49.00 49.00 66.00 46.00
82.00 1.00 4.00 3.00 1.00 2.00 68.00 62.00 65.00 69.00 61.00
8.00 1.00 1.00 1.00 1.00 2.00 39.00 44.00 52.00 44.00 48.00
129.00 1.00 4.00 1.00 1.00 1.00 44.00 44.00 46.00 47.00 51.00
173.00 1.00 4.00 1.00 1.00 1.00 50.00 62.00 61.00 63.00 51.00
57.00 1.00 4.00 2.00 1.00 2.00 71.00 65.00 72.00 66.00 56.00
100.00 1.00 4.00 3.00 1.00 2.00 63.00 65.00 71.00 69.00 71.00
1.00 1.00 1.00 1.00 1.00 3.00 34.00 44.00 40.00 39.00 41.00
194.00 1.00 4.00 3.00 2.00 2.00 63.00 63.00 69.00 61.00 61.00
88.00 1.00 4.00 3.00 1.00 2.00 68.00 60.00 64.00 69.00 66.00
99.00 1.00 4.00 3.00 1.00 1.00 47.00 59.00 56.00 66.00 61.00
47.00 1.00 3.00 1.00 1.00 2.00 47.00 46.00 49.00 33.00 41.00
120.00 1.00 4.00 3.00 1.00 2.00 63.00 52.00 54.00 50.00 51.00
166.00 1.00 4.00 2.00 1.00 2.00 52.00 59.00 53.00 61.00 51.00
65.00 1.00 4.00 2.00 1.00 2.00 55.00 54.00 66.00 42.00 56.00
101.00 1.00 4.00 3.00 1.00 2.00 60.00 62.00 67.00 50.00 56.00
89.00 1.00 4.00 1.00 1.00 3.00 35.00 35.00 40.00 51.00 33.00
54.00 1.00 3.00 1.00 2.00 1.00 47.00 54.00 46.00 50.00 56.00
180.00 1.00 4.00 3.00 2.00 2.00 71.00 65.00 69.00 58.00 71.00
162.00 1.00 4.00 2.00 1.00 3.00 57.00 52.00 40.00 61.00 56.00
4.00 1.00 1.00 1.00 1.00 2.00 44.00 50.00 41.00 39.00 51.00
131.00 1.00 4.00 3.00 1.00 2.00 65.00 59.00 57.00 46.00 66.00
125.00 1.00 4.00 1.00 1.00 2.00 68.00 65.00 58.00 59.00 56.00
34.00 1.00 1.00 3.00 2.00 2.00 73.00 61.00 57.00 55.00 66.00
106.00 1.00 4.00 2.00 1.00 3.00 36.00 44.00 37.00 42.00 41.00
130.00 1.00 4.00 3.00 1.00 1.00 43.00 54.00 55.00 55.00 46.00
93.00 1.00 4.00 3.00 1.00 2.00 73.00 67.00 62.00 58.00 66.00
163.00 1.00 4.00 1.00 1.00 2.00 52.00 57.00 64.00 58.00 56.00
37.00 1.00 3.00 1.00 1.00 3.00 41.00 47.00 40.00 39.00 51.00
35.00 1.00 1.00 1.00 2.00 1.00 60.00 54.00 50.00 50.00 51.00
87.00 1.00 4.00 2.00 1.00 1.00 50.00 52.00 46.00 50.00 56.00
73.00 1.00 4.00 2.00 1.00 2.00 50.00 52.00 53.00 39.00 56.00
151.00 1.00 4.00 2.00 1.00 3.00 47.00 46.00 52.00 48.00 46.00
44.00 1.00 3.00 1.00 1.00 3.00 47.00 62.00 45.00 34.00 46.00
152.00 1.00 4.00 3.00 1.00 2.00 55.00 57.00 56.00 58.00 61.00
105.00 1.00 4.00 2.00 1.00 2.00 50.00 41.00 45.00 44.00 56.00
28.00 1.00 2.00 2.00 1.00 1.00 39.00 53.00 54.00 50.00 41.00
91.00 1.00 4.00 3.00 1.00 3.00 50.00 49.00 56.00 47.00 46.00
45.00 1.00 3.00 1.00 1.00 3.00 34.00 35.00 41.00 29.00 26.00
116.00 1.00 4.00 2.00 1.00 2.00 57.00 59.00 54.00 50.00 56.00
33.00 1.00 2.00 1.00 1.00 2.00 57.00 65.00 72.00 54.00 56.00
66.00 1.00 4.00 2.00 1.00 3.00 68.00 62.00 56.00 50.00 51.00
72.00 1.00 4.00 2.00 1.00 3.00 42.00 54.00 47.00 47.00 46.00
77.00 1.00 4.00 1.00 1.00 2.00 61.00 59.00 49.00 44.00 66.00
61.00 1.00 4.00 3.00 1.00 2.00 76.00 63.00 60.00 67.00 66.00
190.00 1.00 4.00 2.00 2.00 2.00 47.00 59.00 54.00 58.00 46.00
42.00 1.00 3.00 2.00 1.00 3.00 46.00 52.00 55.00 44.00 56.00
2.00 1.00 1.00 2.00 1.00 3.00 39.00 41.00 33.00 42.00 41.00
55.00 1.00 3.00 2.00 2.00 2.00 52.00 49.00 49.00 44.00 61.00
19.00 1.00 1.00 1.00 1.00 1.00 28.00 46.00 43.00 44.00 51.00
90.00 1.00 4.00 3.00 1.00 2.00 42.00 54.00 50.00 50.00 52.00
142.00 1.00 4.00 2.00 1.00 3.00 47.00 42.00 52.00 39.00 51.00
17.00 1.00 1.00 2.00 1.00 2.00 47.00 57.00 48.00 44.00 41.00
122.00 1.00 4.00 2.00 1.00 2.00 52.00 59.00 58.00 53.00 66.00
191.00 1.00 4.00 3.00 2.00 2.00 47.00 52.00 43.00 48.00 61.00
83.00 1.00 4.00 2.00 1.00 3.00 50.00 62.00 41.00 55.00 31.00
182.00 1.00 4.00 2.00 2.00 2.00 44.00 52.00 43.00 44.00 51.00
6.00 1.00 1.00 1.00 1.00 2.00 47.00 41.00 46.00 40.00 41.00
46.00 1.00 3.00 1.00 1.00 2.00 45.00 55.00 44.00 34.00 41.00
43.00 1.00 3.00 1.00 1.00 2.00 47.00 37.00 43.00 42.00 46.00
96.00 1.00 4.00 3.00 1.00 2.00 65.00 54.00 61.00 58.00 56.00
138.00 1.00 4.00 2.00 1.00 3.00 43.00 57.00 40.00 50.00 51.00
10.00 1.00 1.00 2.00 1.00 1.00 47.00 54.00 49.00 53.00 61.00
71.00 1.00 4.00 2.00 1.00 1.00 57.00 62.00 56.00 58.00 66.00
139.00 1.00 4.00 2.00 1.00 2.00 68.00 59.00 61.00 55.00 71.00
110.00 1.00 4.00 2.00 1.00 3.00 52.00 55.00 50.00 54.00 61.00
148.00 1.00 4.00 2.00 1.00 3.00 42.00 57.00 51.00 47.00 61.00
109.00 1.00 4.00 2.00 1.00 1.00 42.00 39.00 42.00 42.00 41.00
39.00 1.00 3.00 3.00 1.00 2.00 66.00 67.00 67.00 61.00 66.00
147.00 1.00 4.00 1.00 1.00 2.00 47.00 62.00 53.00 53.00 61.00
74.00 1.00 4.00 2.00 1.00 2.00 57.00 50.00 50.00 51.00 58.00
198.00 1.00 4.00 3.00 2.00 2.00 47.00 61.00 51.00 63.00 31.00
161.00 1.00 4.00 1.00 1.00 2.00 57.00 62.00 72.00 61.00 61.00
112.00 1.00 4.00 2.00 1.00 2.00 52.00 59.00 48.00 55.00 61.00
69.00 1.00 4.00 1.00 1.00 3.00 44.00 44.00 40.00 40.00 31.00
156.00 1.00 4.00 2.00 1.00 2.00 50.00 59.00 53.00 61.00 61.00
111.00 1.00 4.00 1.00 1.00 1.00 39.00 54.00 39.00 47.00 36.00
186.00 1.00 4.00 2.00 2.00 2.00 57.00 62.00 63.00 55.00 41.00
98.00 1.00 4.00 1.00 1.00 3.00 57.00 60.00 51.00 53.00 37.00
119.00 1.00 4.00 1.00 1.00 1.00 42.00 57.00 45.00 50.00 43.00
13.00 1.00 1.00 2.00 1.00 3.00 47.00 46.00 39.00 47.00 61.00
51.00 1.00 3.00 3.00 1.00 1.00 42.00 36.00 42.00 31.00 39.00
26.00 1.00 2.00 3.00 1.00 2.00 60.00 59.00 62.00 61.00 51.00
36.00 1.00 3.00 1.00 1.00 1.00 44.00 49.00 44.00 35.00 51.00
135.00 1.00 4.00 1.00 1.00 2.00 63.00 60.00 65.00 54.00 66.00
59.00 1.00 4.00 2.00 1.00 2.00 65.00 67.00 63.00 55.00 71.00
78.00 1.00 4.00 2.00 1.00 2.00 39.00 54.00 54.00 53.00 41.00
64.00 1.00 4.00 3.00 1.00 3.00 50.00 52.00 45.00 58.00 36.00
63.00 1.00 4.00 1.00 1.00 1.00 52.00 65.00 60.00 56.00 51.00
79.00 1.00 4.00 2.00 1.00 2.00 60.00 62.00 49.00 50.00 51.00
193.00 1.00 4.00 2.00 2.00 2.00 44.00 49.00 48.00 39.00 51.00
92.00 1.00 4.00 3.00 1.00 1.00 52.00 67.00 57.00 63.00 61.00
160.00 1.00 4.00 2.00 1.00 2.00 55.00 65.00 55.00 50.00 61.00
32.00 1.00 2.00 3.00 1.00 3.00 50.00 67.00 66.00 66.00 56.00
23.00 1.00 2.00 1.00 1.00 2.00 65.00 65.00 64.00 58.00 71.00
158.00 1.00 4.00 2.00 1.00 1.00 52.00 54.00 55.00 53.00 51.00
25.00 1.00 2.00 2.00 1.00 1.00 47.00 44.00 42.00 42.00 36.00
188.00 1.00 4.00 3.00 2.00 2.00 63.00 62.00 56.00 55.00 61.00
52.00 1.00 3.00 1.00 1.00 2.00 50.00 46.00 53.00 53.00 66.00
124.00 1.00 4.00 1.00 1.00 3.00 42.00 54.00 41.00 42.00 41.00
175.00 1.00 4.00 3.00 2.00 1.00 36.00 57.00 42.00 50.00 41.00
184.00 1.00 4.00 2.00 2.00 3.00 50.00 52.00 53.00 55.00 56.00
30.00 1.00 2.00 3.00 1.00 2.00 41.00 59.00 42.00 34.00 51.00
179.00 1.00 4.00 2.00 2.00 2.00 47.00 65.00 60.00 50.00 56.00
31.00 1.00 2.00 2.00 2.00 1.00 55.00 59.00 52.00 42.00 56.00
145.00 1.00 4.00 2.00 1.00 3.00 42.00 46.00 38.00 36.00 46.00
187.00 1.00 4.00 2.00 2.00 1.00 57.00 41.00 57.00 55.00 52.00
118.00 1.00 4.00 2.00 1.00 1.00 55.00 62.00 58.00 58.00 61.00
137.00 1.00 4.00 3.00 1.00 2.00 63.00 65.00 65.00 53.00 61.00
end data.
factor
/variables read write math science socst
/analysis read write math science socst
/extraction pc
/plot eigen
/criteria mineigen (.557)
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/factor.at:1743: pspp -O format=csv factor2.sps"
at_fn_check_prepare_trace "factor.at:1743"
( $at_check_trace; pspp -O format=csv factor2.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Communalities
,Initial,Extraction
read,1.000,.736
write,1.000,.704
math,1.000,.750
science,1.000,.849
socst,1.000,.900
Table: Total Variance Explained
,Initial Eigenvalues,,,Extraction Sums of Squared Loadings,,,Rotation Sums of Squared Loadings,,
Component,Total,% of Variance,Cumulative %,Total,% of Variance,Cumulative %,Total,% of Variance,Cumulative %
1,3.381,67.616,67.616,3.381,67.616,67.616,2.113,42.267,42.267
2,.557,11.148,78.764,.557,11.148,78.764,1.825,36.497,78.764
3,.407,8.136,86.900,,,,,,
4,.356,7.123,94.023,,,,,,
5,.299,5.977,100.000,,,,,,
Table: Component Matrix
,Component,
,1,2
read,.858,.020
write,.824,-.155
math,.844,.195
science,.801,.456
socst,.783,-.536
Table: Rotated Component Matrix
,Component,
,1,2
read,.650,.559
write,.508,.667
math,.757,.421
science,.900,.198
socst,.222,.922
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/factor.at:1743"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_487
#AT_START_488
at_fn_group_banner 488 'factor.at:1784' \
"FACTOR empty dataset" " " 72
at_xfail=no
(
$as_echo "488. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >factor-empty.sps <<'_ATEOF'
data list notable list /x * y * z *.
begin data.
3.4 . 92.9
. 32.09 34.2
1.00 19.80 .
2.00 . 3.6
end data.
factor /variables = ALL.
_ATEOF
{ set +x
$as_echo "$at_srcdir/factor.at:1799: pspp -O format=csv factor-empty.sps"
at_fn_check_prepare_trace "factor.at:1799"
( $at_check_trace; pspp -O format=csv factor-empty.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/factor.at:1799"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_488
#AT_START_489
at_fn_group_banner 489 'factor.at:1805' \
"FACTOR /ROTATION=NOROTATE" " " 72
at_xfail=no
(
$as_echo "489. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >factor-norotate.sps <<'_ATEOF'
DATA LIST FREE / TRAIT1 TO TRAIT5 (F8.2).
BEGIN DATA
1 5 5 1 1
8 9 7 9 8
9 8 9 9 8
9 9 9 9 9
1 9 1 1 9
9 7 7 9 9
9 7 9 9 7
END DATA
FACTOR /VARIABLES=TRAIT1 TO TRAIT5
/ROTATION=NOROTATE /* NOROTATE may have caused the problem. */
/EXTRACTION=PC
/PRINT=DEFAULT DET UNIVARIATE ROTATION SIG CORRELATION.
_ATEOF
{ set +x
$as_echo "$at_srcdir/factor.at:1824: pspp -O format=csv factor-norotate.sps"
at_fn_check_prepare_trace "factor.at:1824"
( $at_check_trace; pspp -O format=csv factor-norotate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Descriptive Statistics
,Mean,Std. Deviation,Analysis N
TRAIT1,6.57,3.54,7
TRAIT2,7.71,1.39,7
TRAIT3,6.71,2.71,7
TRAIT4,6.71,3.61,7
TRAIT5,7.29,2.66,7
Table: Correlation Matrix
,,TRAIT1,TRAIT2,TRAIT3,TRAIT4,TRAIT5
Correlations,TRAIT1,1.00,.30,.88,1.00,.54
,TRAIT2,.30,1.00,-.02,.33,.84
,TRAIT3,.88,-.02,1.00,.87,.13
,TRAIT4,1.00,.33,.87,1.00,.54
,TRAIT5,.54,.84,.13,.54,1.00
Sig. (1-tailed),TRAIT1,,.260,.004,.000,.103
,TRAIT2,.260,,.482,.238,.009
,TRAIT3,.004,.482,,.006,.390
,TRAIT4,.000,.238,.006,,.103
,TRAIT5,.103,.009,.390,.103,
Determinant,.00,,,,,
Table: Communalities
,Initial,Extraction
TRAIT1,1.00,1.00
TRAIT2,1.00,1.00
TRAIT3,1.00,.99
TRAIT4,1.00,.99
TRAIT5,1.00,.99
Table: Total Variance Explained
,Initial Eigenvalues,,,Extraction Sums of Squared Loadings,,
Component,Total,% of Variance,Cumulative %,Total,% of Variance,Cumulative %
1,3.26,65.26,65.26,3.26,65.26,65.26
2,1.54,30.77,96.03,1.54,30.77,96.03
3,.17,3.36,99.39,.17,3.36,99.39
4,.03,.61,100.00,.03,.61,100.00
5,.00,.00,100.00,,,
Table: Component Matrix
,Component,,,
,1,2,3,4
TRAIT1,.97,.23,-.08,.00
TRAIT2,.52,-.81,.28,.00
TRAIT3,.78,.59,.17,.00
TRAIT4,.97,.21,-.04,.00
TRAIT5,.70,-.67,-.23,.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/factor.at:1824"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_489
#AT_START_490
at_fn_group_banner 490 'factor.at:1879' \
"FACTOR /CRITERIA=ITERATE" " " 72
at_xfail=no
(
$as_echo "490. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >factor-iterate.sps <<'_ATEOF'
set format = F20.3.
data list notable list /x y z *.
begin data.
1.00 5.00 3.00
2.00 2.00 2.00
3.00 1.00 1.00
4.00 4.00 5.00
5.00 3.00 9.00
6.00 6.00 4.00
7.00 7.00 6.00
8.00 8.00 8.00
9.00 9.00 7.00
end data.
FACTOR
/VARIABLES= x y z
/CRITERIA = MINEIGEN (1) ITERATE (25)
/EXTRACTION =PAF
/METHOD = CORRELATION
/PRINT = INITIAL EXTRACTION
/CRITERIA = ITERATE (0)
/ROTATION = NOROTATE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/factor.at:1905: pspp -O format=csv factor-iterate.sps"
at_fn_check_prepare_trace "factor.at:1905"
( $at_check_trace; pspp -O format=csv factor-iterate.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Communalities
,Initial,Extraction
x,.735,.979
y,.640,.653
z,.514,.523
Table: Total Variance Explained
,Initial Eigenvalues,,,Extraction Sums of Squared Loadings,,
Factor,Total,% of Variance,Cumulative %,Total,% of Variance,Cumulative %
1,2.404,80.124,80.124,2.155,71.847,71.847
2,.425,14.166,94.290,,,
3,.171,5.710,100.000,,,
Table: Factor Matrix
,Factor
,1
x,.990
y,.808
z,.723
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/factor.at:1905"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_490
#AT_START_491
at_fn_group_banner 491 'factor.at:1929' \
"FACTOR promax" " " 72
at_xfail=no
(
$as_echo "491. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >factor-promax.sps <<'_ATEOF'
set decimal=dot.
set format=F22.3.
get file='llz.zsav'.
factor
/variables pz pn ps nz nn ns tz tn ts oz on os sz sn ss zz zn zs
/missing listwise
/print initial extraction rotation
/criteria mineigen(1) iterate(25)
/extraction paf
/method correlation
/rotation promax (5).
_ATEOF
{ set +x
$as_echo "$at_srcdir/factor.at:1946: ln -s \$top_srcdir/tests/language/stats/llz.zsav ."
at_fn_check_prepare_dynamic "ln -s $top_srcdir/tests/language/stats/llz.zsav ." "factor.at:1946"
( $at_check_trace; ln -s $top_srcdir/tests/language/stats/llz.zsav .
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/factor.at:1946"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/factor.at:1948: pspp -O format=csv factor-promax.sps"
at_fn_check_prepare_trace "factor.at:1948"
( $at_check_trace; pspp -O format=csv factor-promax.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Communalities
,Initial,Extraction
PZ,.191,.375
PN,.042,.102
PS,.458,.623
NZ,.100,.163
NN,.065,.079
NS,.129,.148
TZ,.181,.344
TN,.102,.142
TS,.310,.372
OZ,.097,.158
ON,.323,.410
OS,.469,.617
SZ,.104,.170
SN,.154,.267
SS,.081,.180
ZZ,.123,.192
ZN,.208,.412
ZS,.130,.158
Table: Total Variance Explained
,Initial Eigenvalues,,,Extraction Sums of Squared Loadings,,,Rotation Sums of Squared Loadings
Factor,Total,% of Variance,Cumulative %,Total,% of Variance,Cumulative %,Total
1,2.968,16.491,16.491,2.411,13.393,13.393,2.355
2,2.026,11.253,27.744,1.271,7.059,20.452,1.209
3,1.622,9.011,36.756,.948,5.264,25.716,1.231
4,1.086,6.032,42.788,.283,1.574,27.290,.770
5,.996,5.533,48.321,,,,
6,.923,5.130,53.451,,,,
7,.873,4.852,58.303,,,,
8,.856,4.756,63.060,,,,
9,.836,4.644,67.703,,,,
10,.816,4.534,72.237,,,,
11,.785,4.359,76.596,,,,
12,.740,4.110,80.706,,,,
13,.713,3.964,84.670,,,,
14,.653,3.626,88.296,,,,
15,.633,3.519,91.815,,,,
16,.604,3.356,95.171,,,,
17,.484,2.687,97.858,,,,
18,.386,2.142,100.000,,,,
Table: Factor Matrix
,Factor,,,
,1,2,3,4
PZ,-.276,.154,.510,.124
PN,.096,.129,-.091,.261
PS,.746,-.085,.234,.063
NZ,-.111,.323,.206,-.058
NN,.007,.260,-.083,-.069
NS,.366,.096,.046,.051
TZ,-.228,.172,.509,.059
TN,.131,.345,-.074,.029
TS,.601,-.005,.098,.030
OZ,-.145,.166,.322,-.081
ON,.607,.082,.073,-.173
OS,.757,-.059,.171,-.104
SZ,-.142,.307,.226,-.066
SN,.175,.436,-.183,.115
SS,.199,.206,-.083,.302
ZZ,-.074,.411,-.080,-.104
ZN,.015,.580,-.252,-.114
ZS,.365,.156,-.004,.015
Table: Pattern Matrix
,Factor,,,
,1,2,3,4
PZ,-.063,-.126,.599,.085
PN,-.035,.000,-.033,.325
PS,.762,-.175,.058,.081
NZ,.027,.230,.327,-.044
NN,.008,.289,.008,-.026
NS,.344,.044,.015,.091
TZ,.004,-.074,.589,.020
TN,.097,.307,.033,.103
TS,.585,-.043,-.017,.062
OZ,.046,.067,.382,-.109
ON,.654,.151,-.029,-.145
OS,.803,-.037,-.009,-.092
SZ,.009,.213,.345,-.060
SN,.065,.376,-.036,.227
SS,.054,.042,-.013,.388
ZZ,-.044,.434,.078,-.046
ZN,-.025,.646,-.041,-.006
ZS,.337,.133,-.013,.067
Table: Structure Matrix
,Factor,,,
,1,2,3,4
PZ,-.177,-.058,.598,-.022
PN,.068,.110,-.049,.317
PS,.771,-.138,-.136,.240
NZ,-.060,.236,.339,.019
NN,.000,.281,.027,.076
NS,.368,.080,-.068,.207
TZ,-.127,-.028,.582,-.049
TN,.122,.345,.023,.235
TS,.607,-.018,-.160,.221
OZ,-.074,.055,.384,-.101
ON,.619,.104,-.160,.102
OS,.778,-.064,-.190,.132
SZ,-.086,.215,.361,-.009
SN,.143,.453,-.044,.380
SS,.171,.176,-.052,.420
ZZ,-.073,.422,.120,.085
ZN,-.013,.641,.008,.214
ZS,.361,.158,-.088,.213
Table: Factor Correlation Matrix
Factor,1,2,3,4
1,1.000,.008,-.232,.294
2,.008,1.000,.065,.347
3,-.232,.065,1.000,-.076
4,.294,.347,-.076,1.000
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/factor.at:1948"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_491
#AT_START_492
at_fn_group_banner 492 'flip.at:3' \
"FLIP with NEWNAMES" " " 73
at_xfail=no
(
$as_echo "492. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >flip.sps <<'_ATEOF'
data list notable /N 1 (a) a b c d 2-9.
list.
begin data.
v 1 2 3 4 5
w 6 7 8 910
x1112131415
y1617181920
z2122232425
end data.
temporary.
compute e = a.
flip newnames=n.
list.
flip.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/flip.at:21: pspp -O format=csv flip.sps"
at_fn_check_prepare_trace "flip.at:21"
( $at_check_trace; pspp -O format=csv flip.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
N,a,b,c,d
v,1,2,3,4
w,6,7,8,9
x,11,12,13,14
y,16,17,18,19
z,21,22,23,24
flip.sps:12: warning: FLIP: FLIP ignores TEMPORARY. Temporary transformations will be made permanent.
Table: Data List
CASE_LBL,v,w,x,y,z
a ,1.00,6.00,11.00,16.00,21.00
b ,2.00,7.00,12.00,17.00,22.00
c ,3.00,8.00,13.00,18.00,23.00
d ,4.00,9.00,14.00,19.00,24.00
e ,1.00,6.00,11.00,16.00,21.00
Table: Data List
CASE_LBL,a,b,c,d,e
v ,1.00,2.00,3.00,4.00,1.00
w ,6.00,7.00,8.00,9.00,6.00
x ,11.00,12.00,13.00,14.00,11.00
y ,16.00,17.00,18.00,19.00,16.00
z ,21.00,22.00,23.00,24.00,21.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/flip.at:21"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_492
#AT_START_493
at_fn_group_banner 493 'flip.at:50' \
"FLIP without NEWNAMES" " " 73
at_xfail=no
(
$as_echo "493. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >flip.sps <<'_ATEOF'
data list list notable /v1 to v10.
format all(f2).
begin data.
1 2 3 4 5 6 7 8 9 10
4 5 6 7 8 9 10 11 12 13
end data.
list.
flip.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/flip.at:64: pspp -O format=csv flip.sps"
at_fn_check_prepare_trace "flip.at:64"
( $at_check_trace; pspp -O format=csv flip.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
v1,v2,v3,v4,v5,v6,v7,v8,v9,v10
1,2,3,4,5,6,7,8,9,10
4,5,6,7,8,9,10,11,12,13
Table: Data List
CASE_LBL,VAR000,VAR001
v1 ,1.00,4.00
v2 ,2.00,5.00
v3 ,3.00,6.00
v4 ,4.00,7.00
v5 ,5.00,8.00
v6 ,6.00,9.00
v7 ,7.00,10.00
v8 ,8.00,11.00
v9 ,9.00,12.00
v10 ,10.00,13.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/flip.at:64"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_493
#AT_START_494
at_fn_group_banner 494 'frequencies.at:3' \
"FREQUENCIES string variable" " " 74
at_xfail=no
(
$as_echo "494. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >frequencies.sps <<'_ATEOF'
DATA LIST FREE/
name (A8) value * quantity .
BEGIN DATA.
foo 1 5
bar 2 6
baz 1 9
quux 3 1
bar 1 2
baz 4 3
baz 1 4
baz 1 1
foo 6 0
quux 5 8
END DATA.
EXECUTE.
FREQUENCIES /VAR = name/ORDER=ANALYSIS.
_ATEOF
{ set +x
$as_echo "$at_srcdir/frequencies.at:23: pspp -O format=csv frequencies.sps"
at_fn_check_prepare_trace "frequencies.at:23"
( $at_check_trace; pspp -O format=csv frequencies.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: name
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
,bar ,2,20.00,20.00,20.00
,baz ,4,40.00,40.00,60.00
,foo ,2,20.00,20.00,80.00
,quux ,2,20.00,20.00,100.00
Total,,10,100.0,100.0,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:23"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_494
#AT_START_495
at_fn_group_banner 495 'frequencies.at:36' \
"FREQUENCIES two runs crash" " " 74
at_xfail=no
(
$as_echo "495. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >frequencies.sps <<'_ATEOF'
data list free /v1 v2.
begin data.
0 1
2 3
4 5
3 4
end data.
frequencies v1 v2/statistics=none/ORDER=VARIABLE.
frequencies v1 v2/statistics=none.
_ATEOF
{ set +x
$as_echo "$at_srcdir/frequencies.at:49: pspp -O format=csv frequencies.sps"
at_fn_check_prepare_trace "frequencies.at:49"
( $at_check_trace; pspp -O format=csv frequencies.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: v1
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
,.00,1,25.00,25.00,25.00
,2.00,1,25.00,25.00,50.00
,3.00,1,25.00,25.00,75.00
,4.00,1,25.00,25.00,100.00
Total,,4,100.0,100.0,
Table: v2
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
,1.00,1,25.00,25.00,25.00
,3.00,1,25.00,25.00,50.00
,4.00,1,25.00,25.00,75.00
,5.00,1,25.00,25.00,100.00
Total,,4,100.0,100.0,
Table: v1
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
,.00,1,25.00,25.00,25.00
,2.00,1,25.00,25.00,50.00
,3.00,1,25.00,25.00,75.00
,4.00,1,25.00,25.00,100.00
Total,,4,100.0,100.0,
Table: v2
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
,1.00,1,25.00,25.00,25.00
,3.00,1,25.00,25.00,50.00
,4.00,1,25.00,25.00,75.00
,5.00,1,25.00,25.00,100.00
Total,,4,100.0,100.0,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:49"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_495
#AT_START_496
at_fn_group_banner 496 'frequencies.at:86' \
"FREQUENCIES HTML output crash" " " 74
at_xfail=no
(
$as_echo "496. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >frequencies.sps <<'_ATEOF'
data list free /v1 v2.
begin data.
0 1
2 3
4 5
3 4
end data.
list.
frequencies v1/statistics=none.
_ATEOF
{ set +x
$as_echo "$at_srcdir/frequencies.at:100: pspp -o - -O format=csv -o pspp.html frequencies.sps"
at_fn_check_prepare_trace "frequencies.at:100"
( $at_check_trace; pspp -o - -O format=csv -o pspp.html frequencies.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
v1,v2
.00,1.00
2.00,3.00
4.00,5.00
3.00,4.00
Table: v1
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
,.00,1,25.00,25.00,25.00
,2.00,1,25.00,25.00,50.00
,3.00,1,25.00,25.00,75.00
,4.00,1,25.00,25.00,100.00
Total,,4,100.0,100.0,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:100"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/frequencies.at:116: test -s pspp.html"
at_fn_check_prepare_trace "frequencies.at:116"
( $at_check_trace; test -s pspp.html
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:116"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_496
#AT_START_497
at_fn_group_banner 497 'frequencies.at:121' \
"FREQUENCIES pie chart crash" " " 74
at_xfail=no
(
$as_echo "497. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >frequencies.sps <<'_ATEOF'
data list list /x * w *.
begin data.
1 4
34 10
-9 15
232 6
11 4
134 1
9 5
32 16
-2 6
2 16
20 6
end data.
weight by w.
frequencies /x /format=notable /statistics=none
/piechart.
_ATEOF
# Cannot use the CSV driver for this because it does not output charts
# at all.
{ set +x
$as_echo "$at_srcdir/frequencies.at:145: pspp frequencies.sps"
at_fn_check_prepare_trace "frequencies.at:145"
( $at_check_trace; pspp frequencies.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Reading free-form data from INLINE.
+--------+------+
|Variable|Format|
#========#======#
|x |F8.0 |
|w |F8.0 |
+--------+------+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:145"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_497
#AT_START_498
at_fn_group_banner 498 'frequencies.at:157' \
"FREQUENCIES histogram crash" " " 74
at_xfail=no
(
$as_echo "498. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >frequencies.sps <<'_ATEOF'
data list notable list /x * w *.
begin data.
1 4
34 10
-9 15
232 6
11 4
134 1
9 5
32 16
-2 6
2 16
20 6
end data.
weight by w.
frequencies /x
/format=notable
/statistics=none
/histogram=minimum(0) maximum(50) percent(5) normal.
_ATEOF
# Cannot use the CSV driver for this because it does not output charts
# at all.
{ set +x
$as_echo "$at_srcdir/frequencies.at:183: pspp -O format=pdf frequencies.sps"
at_fn_check_prepare_trace "frequencies.at:183"
( $at_check_trace; pspp -O format=pdf frequencies.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:183"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_498
#AT_START_499
at_fn_group_banner 499 'frequencies.at:188' \
"FREQUENCIES median with histogram crash" " " 74
at_xfail=no
(
$as_echo "499. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >frequencies.sps <<'_ATEOF'
data list list notable /x.
begin data.
1
end data.
frequencies /x /histogram /STATISTICS=median.
_ATEOF
{ set +x
$as_echo "$at_srcdir/frequencies.at:197: pspp -O format=csv frequencies.sps"
at_fn_check_prepare_trace "frequencies.at:197"
( $at_check_trace; pspp -O format=csv frequencies.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:197"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_499
#AT_START_500
at_fn_group_banner 500 'frequencies.at:203' \
"FREQUENCIES crash after TEMPORARY" " " 74
at_xfail=no
(
$as_echo "500. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >frequencies.sps <<'_ATEOF'
DATA LIST LIST /SEX (A1) X *.
BEGIN DATA.
M 31
F 21
M 41
F 31
M 13
F 12
M 14
F 13
END DATA.
TEMPORARY
SELECT IF SEX EQ 'F'
FREQUENCIES /X .
FINISH
_ATEOF
{ set +x
$as_echo "$at_srcdir/frequencies.at:224: pspp -O format=csv frequencies.sps"
at_fn_check_prepare_trace "frequencies.at:224"
( $at_check_trace; pspp -O format=csv frequencies.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
SEX,A1
X,F8.0
Table: X
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
,12.00,1,25.00,25.00,25.00
,13.00,1,25.00,25.00,50.00
,21.00,1,25.00,25.00,75.00
,31.00,1,25.00,25.00,100.00
Total,,4,100.0,100.0,
Table: X
N,Valid,4
,Missing,0
Mean,,19.25
Std Dev,,8.81
Minimum,,12.00
Maximum,,31.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:224"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_500
#AT_START_501
at_fn_group_banner 501 'frequencies.at:264' \
"FREQUENCIES basic percentiles" " " 74
at_xfail=no
(
$as_echo "501. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >frequencies.sps <<'_ATEOF'
DATA LIST LIST notable /x * .
BEGIN DATA.
1
2
3
4
5
END DATA.
FREQUENCIES
VAR=x
/FORMAT=NOTABLE
/PERCENTILES = 0 25 33.333 50 66.666 75 100.
_ATEOF
{ set +x
$as_echo "$at_srcdir/frequencies.at:280: pspp -O format=csv frequencies.sps"
at_fn_check_prepare_trace "frequencies.at:280"
( $at_check_trace; pspp -O format=csv frequencies.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: x
N,Valid,5
,Missing,0
Mean,,3.00
Std Dev,,1.58
Minimum,,1.00
Maximum,,5.00
Percentiles,0,1.00
,25,2.00
,33,2.33
,50 (Median),3.00
,67,3.67
,75,4.00
,100,5.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:280"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_501
#AT_START_502
at_fn_group_banner 502 'frequencies.at:284' \
"FREQUENCIES basic n-tiles" " " 74
at_xfail=no
(
$as_echo "502. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >frequencies.sps <<'_ATEOF'
DATA LIST LIST notable /x * .
BEGIN DATA.
1
2
3
4
5
END DATA.
FREQUENCIES
VAR=x
/FORMAT=NOTABLE
/NTILES = 3
/NTILES = 4.
_ATEOF
{ set +x
$as_echo "$at_srcdir/frequencies.at:301: pspp -O format=csv frequencies.sps"
at_fn_check_prepare_trace "frequencies.at:301"
( $at_check_trace; pspp -O format=csv frequencies.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: x
N,Valid,5
,Missing,0
Mean,,3.00
Std Dev,,1.58
Minimum,,1.00
Maximum,,5.00
Percentiles,0,1.00
,25,2.00
,33,2.33
,50 (Median),3.00
,67,3.67
,75,4.00
,100,5.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:301"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_502
#AT_START_503
at_fn_group_banner 503 'frequencies.at:305' \
"FREQUENCIES compatibility percentiles" " " 74
at_xfail=no
(
$as_echo "503. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >frequencies.sps <<'_ATEOF'
DATA LIST LIST notable /X * .
BEGIN DATA.
1
2
3
4
5
END DATA.
FREQUENCIES
VAR=x
/ALGORITHM=COMPATIBLE
/PERCENTILES = 0 25 50 75 100.
_ATEOF
{ set +x
$as_echo "$at_srcdir/frequencies.at:321: pspp -O format=csv frequencies.sps"
at_fn_check_prepare_trace "frequencies.at:321"
( $at_check_trace; pspp -O format=csv frequencies.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: X
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
,1.00,1,20.00,20.00,20.00
,2.00,1,20.00,20.00,40.00
,3.00,1,20.00,20.00,60.00
,4.00,1,20.00,20.00,80.00
,5.00,1,20.00,20.00,100.00
Total,,5,100.0,100.0,
Table: X
N,Valid,5
,Missing,0
Mean,,3.00
Std Dev,,1.58
Minimum,,1.00
Maximum,,5.00
Percentiles,0,1.00
,25,1.50
,50 (Median),3.00
,75,4.50
,100,5.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:321"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_503
#AT_START_504
at_fn_group_banner 504 'frequencies.at:346' \
"FREQUENCIES enhanced percentiles" " " 74
at_xfail=no
(
$as_echo "504. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >frequencies.sps <<'_ATEOF'
DATA LIST LIST notable /X * .
BEGIN DATA.
1
2
3
4
5
END DATA.
FREQUENCIES
VAR=x
/PERCENTILES = 0 25 50 75 100.
_ATEOF
{ set +x
$as_echo "$at_srcdir/frequencies.at:361: pspp -O format=csv frequencies.sps"
at_fn_check_prepare_trace "frequencies.at:361"
( $at_check_trace; pspp -O format=csv frequencies.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: X
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
,1.00,1,20.00,20.00,20.00
,2.00,1,20.00,20.00,40.00
,3.00,1,20.00,20.00,60.00
,4.00,1,20.00,20.00,80.00
,5.00,1,20.00,20.00,100.00
Total,,5,100.0,100.0,
Table: X
N,Valid,5
,Missing,0
Mean,,3.00
Std Dev,,1.58
Minimum,,1.00
Maximum,,5.00
Percentiles,0,1.00
,25,2.00
,50 (Median),3.00
,75,4.00
,100,5.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:361"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_504
#AT_START_505
at_fn_group_banner 505 'frequencies.at:386' \
"FREQUENCIES enhanced percentiles, weighted" " " 74
at_xfail=no
(
$as_echo "505. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >frequencies.sps <<'_ATEOF'
DATA LIST LIST notable /X * F *.
BEGIN DATA.
1 2
2 2
3 2
4 1
4 1
5 1
5 1
END DATA.
WEIGHT BY f.
FREQUENCIES
VAR=x
/PERCENTILES = 0 25 50 75 100.
_ATEOF
{ set +x
$as_echo "$at_srcdir/frequencies.at:405: pspp -O format=csv frequencies.sps"
at_fn_check_prepare_trace "frequencies.at:405"
( $at_check_trace; pspp -O format=csv frequencies.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: X
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
,1.00,2.00,20.00,20.00,20.00
,2.00,2.00,20.00,20.00,40.00
,3.00,2.00,20.00,20.00,60.00
,4.00,2.00,20.00,20.00,80.00
,5.00,2.00,20.00,20.00,100.00
Total,,10.00,100.0,100.0,
Table: X
N,Valid,10.00
,Missing,.00
Mean,,3.00
Std Dev,,1.49
Minimum,,1.00
Maximum,,5.00
Percentiles,0,1.00
,25,2.00
,50 (Median),3.00
,75,4.00
,100,5.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:405"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_505
#AT_START_506
at_fn_group_banner 506 'frequencies.at:430' \
"FREQUENCIES enhanced percentiles, weighted (2)" " " 74
at_xfail=no
(
$as_echo "506. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >frequencies.sps <<'_ATEOF'
DATA LIST LIST notable /X * F *.
BEGIN DATA.
1 1
3 2
4 1
5 1
5 1
END DATA.
WEIGHT BY f.
FREQUENCIES
VAR=x
/PERCENTILES = 0 25 50 75 100.
_ATEOF
{ set +x
$as_echo "$at_srcdir/frequencies.at:447: pspp -O format=csv frequencies.sps"
at_fn_check_prepare_trace "frequencies.at:447"
( $at_check_trace; pspp -O format=csv frequencies.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: X
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
,1.00,1.00,16.67,16.67,16.67
,3.00,2.00,33.33,33.33,50.00
,4.00,1.00,16.67,16.67,66.67
,5.00,2.00,33.33,33.33,100.00
Total,,6.00,100.0,100.0,
Table: X
N,Valid,6.00
,Missing,.00
Mean,,3.50
Std Dev,,1.52
Minimum,,1.00
Maximum,,5.00
Percentiles,0,1.00
,25,3.00
,50 (Median),3.50
,75,4.75
,100,5.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:447"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_506
#AT_START_507
at_fn_group_banner 507 'frequencies.at:472' \
"FREQUENCIES enhanced percentiles, weighted (3)" " " 74
at_xfail=no
(
$as_echo "507. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >frequencies.sps <<'_ATEOF'
DATA LIST LIST notable /X * F *.
BEGIN DATA.
1 7
2 16
3 12
4 5
END DATA.
WEIGHT BY f.
FREQUENCIES
VAR=x
/PERCENTILES = 0 25 50 75 100.
_ATEOF
{ set +x
$as_echo "$at_srcdir/frequencies.at:488: pspp -O format=csv frequencies.sps"
at_fn_check_prepare_trace "frequencies.at:488"
( $at_check_trace; pspp -O format=csv frequencies.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: X
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
,1.00,7.00,17.50,17.50,17.50
,2.00,16.00,40.00,40.00,57.50
,3.00,12.00,30.00,30.00,87.50
,4.00,5.00,12.50,12.50,100.00
Total,,40.00,100.0,100.0,
Table: X
N,Valid,40.00
,Missing,.00
Mean,,2.38
Std Dev,,.93
Minimum,,1.00
Maximum,,4.00
Percentiles,0,1.00
,25,2.00
,50 (Median),2.00
,75,3.00
,100,4.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:488"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_507
#AT_START_508
at_fn_group_banner 508 'frequencies.at:512' \
"FREQUENCIES enhanced percentiles, weighted, missing values" "" 74
at_xfail=no
(
$as_echo "508. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >frequencies.sps <<'_ATEOF'
DATA LIST LIST notable /X * F *.
BEGIN DATA.
1 1
3 2
4 1
5 1
5 1
99 4
END DATA.
MISSING VALUE x (99.0) .
WEIGHT BY f.
FREQUENCIES
VAR=x
/PERCENTILES = 0 25 50 75 100.
_ATEOF
{ set +x
$as_echo "$at_srcdir/frequencies.at:532: pspp -O format=csv frequencies.sps"
at_fn_check_prepare_trace "frequencies.at:532"
( $at_check_trace; pspp -O format=csv frequencies.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: X
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
,1.00,1.00,10.00,16.67,16.67
,3.00,2.00,20.00,33.33,50.00
,4.00,1.00,10.00,16.67,66.67
,5.00,2.00,20.00,33.33,100.00
,99.00,4.00,40.00,Missing,
Total,,10.00,100.0,100.0,
Table: X
N,Valid,6.00
,Missing,4.00
Mean,,3.50
Std Dev,,1.52
Minimum,,1.00
Maximum,,5.00
Percentiles,0,1.00
,25,3.00
,50 (Median),3.50
,75,4.75
,100,5.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:532"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_508
#AT_START_509
at_fn_group_banner 509 'frequencies.at:557' \
"FREQUENCIES dichotomous histogram" " " 74
at_xfail=no
(
$as_echo "509. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >frequencies.sps <<'_ATEOF'
data list notable list /d4 *.
begin data.
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
2
0
end data.
FREQUENCIES
/VARIABLES = d4
/FORMAT=AVALUE TABLE
/HISTOGRAM=NORMAL
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/frequencies.at:587: pspp frequencies.sps"
at_fn_check_prepare_trace "frequencies.at:587"
( $at_check_trace; pspp frequencies.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:587"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_509
#AT_START_510
at_fn_group_banner 510 'frequencies.at:591' \
"FREQUENCIES median" " " 74
at_xfail=no
(
$as_echo "510. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >median.sps <<'_ATEOF'
data list notable list /x *.
begin data.
1
2
3000000
end data.
FREQUENCIES
/VARIABLES = x
/STATISTICS = MEDIAN
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/frequencies.at:606: pspp median.sps -O format=csv"
at_fn_check_prepare_trace "frequencies.at:606"
( $at_check_trace; pspp median.sps -O format=csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: x
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
,1.00,1,33.33,33.33,33.33
,2.00,1,33.33,33.33,66.67
,3000000.00,1,33.33,33.33,100.00
Total,,3,100.0,100.0,
Table: x
N,Valid,3
,Missing,0
Percentiles,50 (Median),2.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:606"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_510
#AT_START_511
at_fn_group_banner 511 'frequencies.at:623' \
"FREQUENCIES default statistics" " " 74
at_xfail=no
(
$as_echo "511. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >median.sps <<'_ATEOF'
data list notable list /x *.
begin data.
10
20
3000000
end data.
FREQUENCIES
/VARIABLES = x
/STATISTICS
.
FREQUENCIES
/VARIABLES = x
/STATISTICS = DEFAULT
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/frequencies.at:643: pspp median.sps -O format=csv"
at_fn_check_prepare_trace "frequencies.at:643"
( $at_check_trace; pspp median.sps -O format=csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: x
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
,10.00,1,33.33,33.33,33.33
,20.00,1,33.33,33.33,66.67
,3000000.00,1,33.33,33.33,100.00
Total,,3,100.0,100.0,
Table: x
N,Valid,3
,Missing,0
Mean,,1000010.00
Std Dev,,1732042.15
Minimum,,10.00
Maximum,,3000000.00
Table: x
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
,10.00,1,33.33,33.33,33.33
,20.00,1,33.33,33.33,66.67
,3000000.00,1,33.33,33.33,100.00
Total,,3,100.0,100.0,
Table: x
N,Valid,3
,Missing,0
Mean,,1000010.00
Std Dev,,1732042.15
Minimum,,10.00
Maximum,,3000000.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:643"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_511
#AT_START_512
at_fn_group_banner 512 'frequencies.at:678' \
"FREQUENCIES no valid data" " " 74
at_xfail=no
(
$as_echo "512. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >empty.sps <<'_ATEOF'
data list notable list /x *.
begin data.
.
.
.
end data.
FREQUENCIES
/VARIABLES = x
/STATISTICS = ALL
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/frequencies.at:693: pspp empty.sps -O format=csv"
at_fn_check_prepare_trace "frequencies.at:693"
( $at_check_trace; pspp empty.sps -O format=csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: x
Value Label,Value,Frequency,Percent,Valid Percent,Cum Percent
,. ,3,100.00,Missing,
Total,,3,100.0,100.0,
Table: x
N,Valid,0
,Missing,3
Mean,,.
S.E. Mean,,.
Mode,,.
Std Dev,,.
Variance,,.
Kurtosis,,.
S.E. Kurt,,.
Skewness,,.
S.E. Skew,,.
Range,,.
Minimum,,.
Maximum,,.
Sum,,.
Percentiles,,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/frequencies.at:693"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_512
#AT_START_513
at_fn_group_banner 513 'glm.at:3' \
"GLM latin square design" " " 75
at_xfail=no
(
$as_echo "513. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >latin.sps <<'_ATEOF'
set format = F20.3.
data list notable fixed /a 1 b 3 c 5 y 7-10(2).
begin data.
1 1 6 3.5
1 2 2 8.9
1 3 3 9.6
1 4 4 10.5
1 5 5 3.1
1 6 1 5.9
2 1 2 4.2
2 2 6 1.9
2 3 5 3.7
2 4 3 10.2
2 5 1 7.2
2 6 4 7.6
3 1 1 6.7
3 2 4 5.8
3 3 6 -2.7
3 4 2 4.6
3 5 3 4.0
3 6 5 -0.7
4 1 4 6.6
4 2 1 4.5
4 3 2 3.7
4 4 5 3.7
4 5 6 -3.3
4 6 3 3.0
5 1 3 4.1
5 2 5 2.4
5 3 4 6.0
5 4 1 5.1
5 5 2 3.5
5 6 6 4.0
6 1 5 3.8
6 2 3 5.8
6 3 1 7.0
6 4 6 3.8
6 5 4 5.0
6 6 2 8.6
end data.
variable labels a 'Factor A' b 'Factor B' c 'Factor C' y 'Criterion'.
glm y by b a c
/intercept=include
/criteria=alpha(.05)
/design = a b c
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/glm.at:58: pspp -O format=csv latin.sps | sed 's/329.62[678]/329.62/'"
at_fn_check_prepare_notrace 'a shell pipeline' "glm.at:58"
( $at_check_trace; pspp -O format=csv latin.sps | sed 's/329.62[678]/329.62/'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: GLM is experimental. Do not rely on these results.
Table: Tests of Between-Subjects Effects
Source,Type III Sum of Squares,df,Mean Square,F,Sig.
Corrected Model,263.064,15,17.538,5.269,.000
Intercept,815.103,1,815.103,244.910,.000
Factor A,78.869,5,15.774,4.739,.005
Factor B,28.599,5,5.720,1.719,.176
Factor C,155.596,5,31.119,9.350,.000
Error,66.563,20,3.328,,
Total,1144.730,36,,,
Corrected Total,329.62,35,,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/glm.at:58"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_513
#AT_START_514
at_fn_group_banner 514 'glm.at:76' \
"GLM 2 by 2 factorial design" " " 75
at_xfail=no
(
$as_echo "514. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >2by2.sps <<'_ATEOF'
set format = F20.3.
data list notable list /Factor0 * Factor1 * points (F10).
begin data.
1 4 332
1 4 380
1 4 371
1 4 366
1 4 354
1 0 259.5
1 0 302.5
1 0 296
1 0 349
1 0 309
2 4 354.67
2 4 353.5
2 4 304
2 4 365
2 4 339
2 0 306
2 0 339
2 0 353
2 0 351
2 0 333
end data.
glm points by Factor0 Factor1
/intercept=include
/criteria=alpha(.05)
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/glm.at:111: pspp -O format=csv 2by2.sps "
at_fn_check_prepare_trace "glm.at:111"
( $at_check_trace; pspp -O format=csv 2by2.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: GLM is experimental. Do not rely on these results.
Table: Tests of Between-Subjects Effects
Source,Type III Sum of Squares,df,Mean Square,F,Sig.
Corrected Model,8667.053,3,2889.018,5.043,.012
Intercept,2256018.640,1,2256018.640,3937.693,.000
Factor0,313.394,1,313.394,.547,.470
Factor1,5157.508,1,5157.508,9.002,.008
Factor0 * Factor1,3196.150,1,3196.150,5.579,.031
Error,9166.865,16,572.929,,
Total,2273852.559,20,,,
Corrected Total,17833.918,19,,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/glm.at:111"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_514
#AT_START_515
at_fn_group_banner 515 'glm.at:130' \
"GLM Type I and II Sums of Squares" " " 75
at_xfail=no
(
$as_echo "515. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data-inc.sps <<'_ATEOF'
set decimal = dot.
set format=F20.3.
data list notable list /dv * Agrp * B0 * B1 * B2 * i0 * i1 * i2 * sss *.
begin data.
5 1 1 0 0 1 0 0 1.00
7 1 1 0 0 1 0 0 1.00
9 1 1 0 0 1 0 0 1.00
8 1 1 0 0 1 0 0 1.00
2 1 0 1 0 0 1 0 1.00
5 1 0 1 0 0 1 0 1.00
7 1 0 1 0 0 1 0 1.00
3 1 0 1 0 0 1 0 1.00
9 1 0 1 0 0 1 0 1.00
8 1 0 0 1 0 0 1 1.00
11 1 0 0 1 0 0 1 1.00
12 1 0 0 1 0 0 1 1.00
14 1 0 0 1 0 0 1 1.00
11 1 -1 -1 -1 -1 -1 -1 1.00
15 1 -1 -1 -1 -1 -1 -1 1.00
16 1 -1 -1 -1 -1 -1 -1 1.00
10 1 -1 -1 -1 -1 -1 -1 1.00
9 1 -1 -1 -1 -1 -1 -1 1.00
7 -1 1 0 0 -1 0 0 2.00
9 -1 1 0 0 -1 0 0 2.00
10 -1 1 0 0 -1 0 0 2.00
9 -1 1 0 0 -1 0 0 2.00
3 -1 0 1 0 0 -1 0 2.00
8 -1 0 1 0 0 -1 0 2.00
9 -1 0 1 0 0 -1 0 2.00
11 -1 0 1 0 0 -1 0 2.00
9 -1 0 0 1 0 0 -1 2.00
12 -1 0 0 1 0 0 -1 2.00
14 -1 0 0 1 0 0 -1 2.00
8 -1 0 0 1 0 0 -1 2.00
7 -1 0 0 1 0 0 -1 2.00
11 -1 -1 -1 -1 1 1 1 2.00
14 -1 -1 -1 -1 1 1 1 2.00
10 -1 -1 -1 -1 1 1 1 2.00
12 -1 -1 -1 -1 1 1 1 2.00
13 -1 -1 -1 -1 1 1 1 2.00
11 -1 -1 -1 -1 1 1 1 2.00
12 -1 -1 -1 -1 1 1 1 2.00
end data.
do if B0 = -1 AND B1 = -1 AND B2 = -1.
compute Bgrp = 4.
end if.
do if B0 = 0 AND B1 = 0 AND B2 = 1.
compute Bgrp = 3.
end if.
do if B0 = 0 AND B1 = 1 AND B2 = 0.
compute Bgrp = 2.
end if.
do if B0 = 1 AND B1 = 0 AND B2 = 0.
compute Bgrp = 1.
end if.
_ATEOF
cat >type1.sps <<'_ATEOF'
include 'data-inc.sps'.
glm dv by Agrp Bgrp
/method = sstype (1)
.
glm dv by Agrp Bgrp
/method = sstype (1)
/design Bgrp Agrp Bgrp * Agrp
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/glm.at:210: pspp -O format=csv type1.sps"
at_fn_check_prepare_trace "glm.at:210"
( $at_check_trace; pspp -O format=csv type1.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: GLM is experimental. Do not rely on these results.
Table: Tests of Between-Subjects Effects
Source,Type I Sum of Squares,df,Mean Square,F,Sig.
Corrected Model,216.017,7,30.860,5.046,.001
Intercept,3410.526,1,3410.526,557.709,.000
Agrp,9.579,1,9.579,1.566,.220
Bgrp,186.225,3,62.075,10.151,.000
Agrp * Bgrp,20.212,3,6.737,1.102,.364
Error,183.457,30,6.115,,
Total,3810.000,38,,,
Corrected Total,399.474,37,,,
warning: GLM is experimental. Do not rely on these results.
Table: Tests of Between-Subjects Effects
Source,Type I Sum of Squares,df,Mean Square,F,Sig.
Corrected Model,216.017,7,30.860,5.046,.001
Intercept,3410.526,1,3410.526,557.709,.000
Bgrp,193.251,3,64.417,10.534,.000
Agrp,2.553,1,2.553,.418,.523
Bgrp * Agrp,20.212,3,6.737,1.102,.364
Error,183.457,30,6.115,,
Total,3810.000,38,,,
Corrected Total,399.474,37,,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/glm.at:210"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >type2.sps <<'_ATEOF'
include 'data-inc.sps'.
glm dv by Agrp Bgrp
/method = sstype (2)
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/glm.at:249: pspp -O format=csv type2.sps"
at_fn_check_prepare_trace "glm.at:249"
( $at_check_trace; pspp -O format=csv type2.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: GLM is experimental. Do not rely on these results.
Table: Tests of Between-Subjects Effects
Source,Type II Sum of Squares,df,Mean Square,F,Sig.
Corrected Model,216.017,7,30.860,5.046,.001
Intercept,3410.526,1,3410.526,557.709,.000
Agrp,2.553,1,2.553,.418,.523
Bgrp,186.225,3,62.075,10.151,.000
Agrp * Bgrp,20.212,3,6.737,1.102,.364
Error,183.457,30,6.115,,
Total,3810.000,38,,,
Corrected Total,399.474,37,,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/glm.at:249"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_515
#AT_START_516
at_fn_group_banner 516 'glm.at:269' \
"GLM excluded intercept" " " 75
at_xfail=no
(
$as_echo "516. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >intercept-exclude.sps <<'_ATEOF'
set format = F20.3.
data list notable list /depvar * A *.
begin data.
10 1
14 1
8 1
7 1
2 1
10 1
1 1
3 1
2 1
8.5 1
14.29 2
18.49 2
12.46 2
11.63 2
6.66 2
14.02 2
5.66 2
7.06 2
6.37 2
13.26 2
end data.
GLM depvar by A
/intercept = exclude
.
GLM depvar by A
/intercept = include
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/glm.at:318: pspp -O format=csv intercept-exclude.sps"
at_fn_check_prepare_trace "glm.at:318"
( $at_check_trace; pspp -O format=csv intercept-exclude.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: GLM is experimental. Do not rely on these results.
Table: Tests of Between-Subjects Effects
Source,Type III Sum of Squares,df,Mean Square,F,Sig.
Model,1636.826,2,818.413,43.556,.000
A,1636.826,2,818.413,43.556,.000
Error,338.216,18,18.790,,
Total,1975.042,20,,,
warning: GLM is experimental. Do not rely on these results.
Table: Tests of Between-Subjects Effects
Source,Type III Sum of Squares,df,Mean Square,F,Sig.
Corrected Model,98.568,1,98.568,5.246,.034
Intercept,1538.258,1,1538.258,81.867,.000
A,98.568,1,98.568,5.246,.034
Error,338.216,18,18.790,,
Total,1975.042,20,,,
Corrected Total,436.784,19,,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/glm.at:318"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_516
#AT_START_517
at_fn_group_banner 517 'logistic.at:81' \
"LOGISTIC REGRESSION basic test" " " 76
at_xfail=no
(
$as_echo "517. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >lr-data.txt <<'_ATEOF'
105.00 1.00 33.00 3.00 2.00 .35 17.00 20.00 .50110 -2.00440 1
106.00 1.00 50.00 2.00 3.00 .38 7.00 15.00 .20168 -1.25264 1
107.00 1.00 91.00 3.00 2.00 .28 15.00 7.00 .00897 -1.00905 1
108.00 1.00 90.00 3.00 2.00 .20 2.00 2.00 .00972 -1.00982 1
109.00 1.00 70.00 3.00 3.00 .38 23.00 27.00 .04745 -1.04981 1
111.00 2.00 31.00 2.00 2.00 .00 19.00 10.00 .54159 1.84640 1
112.00 1.00 91.00 2.00 3.00 .18 6.00 16.00 .00897 -1.00905 1
113.00 1.00 81.00 3.00 2.00 .00 3.00 9.00 .01998 -1.02039 1
114.00 2.00 15.00 1.00 2.00 .13 19.00 13.00 .81241 1.23090 1
116.00 2.00 1.00 1.00 2.00 .88 15.00 7.00 .93102 1.07410 1
117.00 1.00 93.00 3.00 2.00 .18 9.00 15.00 .00764 -1.00770 1
118.00 2.00 14.00 1.00 3.00 .15 23.00 18.00 .82447 1.21289 1
120.00 1.00 91.00 2.00 2.00 .43 17.00 14.00 .00897 -1.00905 1
121.00 1.00 55.00 3.00 2.00 .69 20.00 14.00 .14409 -1.16834 1
122.00 1.00 70.00 2.00 3.00 .03 .00 6.00 .04745 -1.04981 1
123.00 1.00 25.00 2.00 2.00 .45 4.00 10.00 .65789 -2.92301 1
125.00 1.00 91.00 2.00 2.00 .13 .00 3.00 .00897 -1.00905 1
126.00 1.00 91.00 3.00 3.00 .23 4.00 6.00 .00897 -1.00905 1
127.00 1.00 91.00 3.00 2.00 .00 8.00 8.00 .00897 -1.00905 1
128.00 2.00 13.00 2.00 2.00 .65 16.00 14.00 .83592 1.19629 1
129.00 1.00 50.00 2.00 2.00 .25 20.00 23.00 .20168 -1.25264 1
135.00 1.00 90.00 3.00 3.00 .03 5.00 12.00 .00972 -1.00982 1
138.00 1.00 70.00 3.00 3.00 .10 1.00 6.00 .04745 -1.04981 1
139.00 2.00 19.00 3.00 3.00 .10 11.00 12.00 .75787 1.31949 1
149.00 2.00 50.00 3.00 2.00 .03 .00 .00 .20168 4.95826 1
204.00 1.00 50.00 3.00 1.00 .13 .00 1.00 .20168 -1.25264 1
205.00 1.00 91.00 3.00 3.00 .72 16.00 18.00 .00897 -1.00905 1
206.00 2.00 24.00 1.00 1.00 .10 5.00 21.00 .67592 1.47947 1
207.00 1.00 80.00 3.00 3.00 .13 6.00 7.00 .02164 -1.02212 1
208.00 1.00 87.00 2.00 2.00 .18 9.00 20.00 .01237 -1.01253 1
209.00 1.00 70.00 2.00 2.00 .53 15.00 12.00 .04745 -1.04981 1
211.00 1.00 55.00 2.00 1.00 .33 8.00 5.00 .14409 -1.16834 1
212.00 1.00 56.00 3.00 1.00 .30 6.00 20.00 .13436 -1.15522 1
214.00 1.00 54.00 2.00 2.00 .15 .00 16.00 .15439 -1.18258 1
215.00 1.00 71.00 3.00 3.00 .35 12.00 12.00 .04391 -1.04592 1
217.00 2.00 36.00 1.00 1.00 .10 12.00 8.00 .44049 2.27020 1
218.00 1.00 91.00 2.00 2.00 .05 11.00 25.00 .00897 -1.00905 1
219.00 1.00 91.00 2.00 2.00 1.23 11.00 24.00 .00897 -1.00905 1
220.00 1.00 91.00 2.00 3.00 .08 8.00 11.00 .00897 -1.00905 1
221.00 1.00 91.00 2.00 2.00 .33 5.00 11.00 .00897 -1.00905 1
222.00 2.00 36.00 2.00 1.00 .18 5.00 3.00 .44049 2.27020 1
223.00 1.00 70.00 2.00 3.00 .18 14.00 3.00 .04745 -1.04981 1
224.00 1.00 91.00 2.00 2.00 .43 2.00 10.00 .00897 -1.00905 1
225.00 1.00 55.00 2.00 1.00 .18 6.00 11.00 .14409 -1.16834 1
229.00 2.00 75.00 2.00 2.00 .40 30.00 25.00 .03212 31.12941 1
232.00 1.00 91.00 3.00 2.00 .15 6.00 3.00 .00897 -1.00905 1
233.00 1.00 70.00 2.00 1.00 .00 11.00 8.00 .04745 -1.04981 1
234.00 1.00 54.00 3.00 2.00 .10 .00 .00 .15439 -1.18258 1
237.00 1.00 70.00 3.00 2.00 .18 5.00 25.00 .04745 -1.04981 1
241.00 1.00 19.00 2.00 3.00 .33 13.00 9.00 .75787 -4.12995 1
304.00 2.00 18.00 2.00 2.00 .26 25.00 6.00 .77245 1.29458 1
305.00 1.00 88.00 3.00 2.00 1.35 17.00 29.00 .01142 -1.01155 1
306.00 1.00 70.00 2.00 3.00 .63 14.00 33.00 .04745 -1.04981 1
307.00 1.00 85.00 2.00 2.00 2.65 18.00 14.00 .01452 -1.01474 1
308.00 1.00 13.00 2.00 2.00 .23 5.00 5.00 .83592 -6.09442 1
309.00 2.00 13.00 2.00 2.00 .23 7.00 17.00 .83592 1.19629 1
311.00 2.00 1.00 2.00 2.00 .50 20.00 14.00 .93102 1.07410 1
315.00 1.00 19.00 2.00 3.00 .18 1.00 11.00 .75787 -4.12995 1
316.00 1.00 88.00 2.00 2.00 .38 12.00 11.00 .01142 -1.01155 2
318.00 1.00 88.00 3.00 2.00 .03 5.00 5.00 .01142 -1.01155 3
319.00 2.00 18.00 2.00 3.00 .30 15.00 16.00 .77245 1.29458 1
321.00 2.00 15.00 2.00 2.00 .63 15.00 18.00 .81241 1.23090 1
322.00 1.00 88.00 3.00 2.00 .40 18.00 15.00 .01142 -1.01155 1
325.00 2.00 18.00 2.00 3.00 1.00 28.00 18.00 .77245 1.29458 1
329.00 1.00 88.00 3.00 2.00 .03 7.00 11.00 .01142 -1.01155 4
332.00 2.00 2.00 2.00 2.00 .05 8.00 9.00 .92562 1.08036 1
_ATEOF
cat >lr-data.sps <<'_ATEOF'
set format = F12.3.
set decimal dot.
data list notable file='lr-data.txt'
list /id outcome survrate prognos amttreat gsi avoid intrus pre_1 lre_1 w *.
logistic regression
variables = outcome with survrate
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/logistic.at:96: pspp -O format=csv lr-data.sps"
at_fn_check_prepare_trace "logistic.at:96"
( $at_check_trace; pspp -O format=csv lr-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Dependent Variable Encoding
Original Value,Internal Value
1.000,0
2.000,1
Table: Case Processing Summary
Unweighted Cases,N,Percent
Included in Analysis,66,100.000
Missing Cases,0,.000
Total,66,100.000
note: Estimation terminated at iteration number 6 because parameter estimates changed by less than 0.001
Table: Model Summary
Step 1,-2 Log likelihood,Cox & Snell R Square,Nagelkerke R Square
,37.323,.455,.659
Table: Classification Table
,,,Predicted,,
,,,outcome,,\"Percentage
Correct\"
,Observed,,1.000,2.000,
Step 1,outcome,1.000,43,5,89.583
,,2.000,4,14,77.778
,Overall Percentage,,,,86.364
Table: Variables in the Equation
,,B,S.E.,Wald,df,Sig.,Exp(B)
Step 1,survrate,-.081,.019,17.756,1,.000,.922
,Constant,2.684,.811,10.941,1,.001,14.639
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/logistic.at:96"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_517
#AT_START_518
at_fn_group_banner 518 'logistic.at:133' \
"LOGISTIC REGRESSION missing values" " " 76
at_xfail=no
(
$as_echo "518. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >lr-data.txt <<'_ATEOF'
105.00 1.00 33.00 3.00 2.00 .35 17.00 20.00 .50110 -2.00440 1
106.00 1.00 50.00 2.00 3.00 .38 7.00 15.00 .20168 -1.25264 1
107.00 1.00 91.00 3.00 2.00 .28 15.00 7.00 .00897 -1.00905 1
108.00 1.00 90.00 3.00 2.00 .20 2.00 2.00 .00972 -1.00982 1
109.00 1.00 70.00 3.00 3.00 .38 23.00 27.00 .04745 -1.04981 1
111.00 2.00 31.00 2.00 2.00 .00 19.00 10.00 .54159 1.84640 1
112.00 1.00 91.00 2.00 3.00 .18 6.00 16.00 .00897 -1.00905 1
113.00 1.00 81.00 3.00 2.00 .00 3.00 9.00 .01998 -1.02039 1
114.00 2.00 15.00 1.00 2.00 .13 19.00 13.00 .81241 1.23090 1
116.00 2.00 1.00 1.00 2.00 .88 15.00 7.00 .93102 1.07410 1
117.00 1.00 93.00 3.00 2.00 .18 9.00 15.00 .00764 -1.00770 1
118.00 2.00 14.00 1.00 3.00 .15 23.00 18.00 .82447 1.21289 1
120.00 1.00 91.00 2.00 2.00 .43 17.00 14.00 .00897 -1.00905 1
121.00 1.00 55.00 3.00 2.00 .69 20.00 14.00 .14409 -1.16834 1
122.00 1.00 70.00 2.00 3.00 .03 .00 6.00 .04745 -1.04981 1
123.00 1.00 25.00 2.00 2.00 .45 4.00 10.00 .65789 -2.92301 1
125.00 1.00 91.00 2.00 2.00 .13 .00 3.00 .00897 -1.00905 1
126.00 1.00 91.00 3.00 3.00 .23 4.00 6.00 .00897 -1.00905 1
127.00 1.00 91.00 3.00 2.00 .00 8.00 8.00 .00897 -1.00905 1
128.00 2.00 13.00 2.00 2.00 .65 16.00 14.00 .83592 1.19629 1
129.00 1.00 50.00 2.00 2.00 .25 20.00 23.00 .20168 -1.25264 1
135.00 1.00 90.00 3.00 3.00 .03 5.00 12.00 .00972 -1.00982 1
138.00 1.00 70.00 3.00 3.00 .10 1.00 6.00 .04745 -1.04981 1
139.00 2.00 19.00 3.00 3.00 .10 11.00 12.00 .75787 1.31949 1
149.00 2.00 50.00 3.00 2.00 .03 .00 .00 .20168 4.95826 1
204.00 1.00 50.00 3.00 1.00 .13 .00 1.00 .20168 -1.25264 1
205.00 1.00 91.00 3.00 3.00 .72 16.00 18.00 .00897 -1.00905 1
206.00 2.00 24.00 1.00 1.00 .10 5.00 21.00 .67592 1.47947 1
207.00 1.00 80.00 3.00 3.00 .13 6.00 7.00 .02164 -1.02212 1
208.00 1.00 87.00 2.00 2.00 .18 9.00 20.00 .01237 -1.01253 1
209.00 1.00 70.00 2.00 2.00 .53 15.00 12.00 .04745 -1.04981 1
211.00 1.00 55.00 2.00 1.00 .33 8.00 5.00 .14409 -1.16834 1
212.00 1.00 56.00 3.00 1.00 .30 6.00 20.00 .13436 -1.15522 1
214.00 1.00 54.00 2.00 2.00 .15 .00 16.00 .15439 -1.18258 1
215.00 1.00 71.00 3.00 3.00 .35 12.00 12.00 .04391 -1.04592 1
217.00 2.00 36.00 1.00 1.00 .10 12.00 8.00 .44049 2.27020 1
218.00 1.00 91.00 2.00 2.00 .05 11.00 25.00 .00897 -1.00905 1
219.00 1.00 91.00 2.00 2.00 1.23 11.00 24.00 .00897 -1.00905 1
220.00 1.00 91.00 2.00 3.00 .08 8.00 11.00 .00897 -1.00905 1
221.00 1.00 91.00 2.00 2.00 .33 5.00 11.00 .00897 -1.00905 1
222.00 2.00 36.00 2.00 1.00 .18 5.00 3.00 .44049 2.27020 1
223.00 1.00 70.00 2.00 3.00 .18 14.00 3.00 .04745 -1.04981 1
224.00 1.00 91.00 2.00 2.00 .43 2.00 10.00 .00897 -1.00905 1
225.00 1.00 55.00 2.00 1.00 .18 6.00 11.00 .14409 -1.16834 1
229.00 2.00 75.00 2.00 2.00 .40 30.00 25.00 .03212 31.12941 1
232.00 1.00 91.00 3.00 2.00 .15 6.00 3.00 .00897 -1.00905 1
233.00 1.00 70.00 2.00 1.00 .00 11.00 8.00 .04745 -1.04981 1
234.00 1.00 54.00 3.00 2.00 .10 .00 .00 .15439 -1.18258 1
237.00 1.00 70.00 3.00 2.00 .18 5.00 25.00 .04745 -1.04981 1
241.00 1.00 19.00 2.00 3.00 .33 13.00 9.00 .75787 -4.12995 1
304.00 2.00 18.00 2.00 2.00 .26 25.00 6.00 .77245 1.29458 1
305.00 1.00 88.00 3.00 2.00 1.35 17.00 29.00 .01142 -1.01155 1
306.00 1.00 70.00 2.00 3.00 .63 14.00 33.00 .04745 -1.04981 1
307.00 1.00 85.00 2.00 2.00 2.65 18.00 14.00 .01452 -1.01474 1
308.00 1.00 13.00 2.00 2.00 .23 5.00 5.00 .83592 -6.09442 1
309.00 2.00 13.00 2.00 2.00 .23 7.00 17.00 .83592 1.19629 1
311.00 2.00 1.00 2.00 2.00 .50 20.00 14.00 .93102 1.07410 1
315.00 1.00 19.00 2.00 3.00 .18 1.00 11.00 .75787 -4.12995 1
316.00 1.00 88.00 2.00 2.00 .38 12.00 11.00 .01142 -1.01155 2
318.00 1.00 88.00 3.00 2.00 .03 5.00 5.00 .01142 -1.01155 3
319.00 2.00 18.00 2.00 3.00 .30 15.00 16.00 .77245 1.29458 1
321.00 2.00 15.00 2.00 2.00 .63 15.00 18.00 .81241 1.23090 1
322.00 1.00 88.00 3.00 2.00 .40 18.00 15.00 .01142 -1.01155 1
325.00 2.00 18.00 2.00 3.00 1.00 28.00 18.00 .77245 1.29458 1
329.00 1.00 88.00 3.00 2.00 .03 7.00 11.00 .01142 -1.01155 4
332.00 2.00 2.00 2.00 2.00 .05 8.00 9.00 .92562 1.08036 1
_ATEOF
cat >lr-data.sps <<'_ATEOF'
set format = F12.3.
set decimal dot.
data list notable file='lr-data.txt'
list /id outcome survrate prognos amttreat gsi avoid intrus pre_1 lre_1 w *.
missing values survrate (999) avoid (44444) outcome (99).
logistic regression
variables = outcome with survrate avoid
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/logistic.at:150: pspp -O format=csv lr-data.sps > run0"
at_fn_check_prepare_trace "logistic.at:150"
( $at_check_trace; pspp -O format=csv lr-data.sps > run0
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/logistic.at:150"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >> lr-data.txt << HERE
105.00 1.00 999.00 3.00 2.00 .35 17.00 20.00 .50110 -2.00440 1
106.00 1.00 999.00 2.00 3.00 .38 7.00 15.00 .20168 -1.25264 1
107.00 1.00 5.00 3.00 2.00 .28 44444 34 .00897 -1.00905 1
108.00 99 5.00 3.00 2.00 .28 4 34 .00897 -1.00905 1
HERE
{ set +x
$as_echo "$at_srcdir/logistic.at:160: pspp -O format=csv lr-data.sps > run1"
at_fn_check_prepare_trace "logistic.at:160"
( $at_check_trace; pspp -O format=csv lr-data.sps > run1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/logistic.at:160"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/logistic.at:163: diff run0 run1"
at_fn_check_prepare_trace "logistic.at:163"
( $at_check_trace; diff run0 run1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "8,10c8,10
< Included in Analysis,66,100.000
< Missing Cases,0,.000
< Total,66,100.000
---
> Included in Analysis,66,94.286
> Missing Cases,4,5.714
> Total,70,100.000
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/logistic.at:163"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_518
#AT_START_519
at_fn_group_banner 519 'logistic.at:181' \
"LOGISTIC REGRESSION weights" " " 76
at_xfail=no
(
$as_echo "519. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >lr-data.txt <<'_ATEOF'
105.00 1.00 33.00 3.00 2.00 .35 17.00 20.00 .50110 -2.00440 1
106.00 1.00 50.00 2.00 3.00 .38 7.00 15.00 .20168 -1.25264 1
107.00 1.00 91.00 3.00 2.00 .28 15.00 7.00 .00897 -1.00905 1
108.00 1.00 90.00 3.00 2.00 .20 2.00 2.00 .00972 -1.00982 1
109.00 1.00 70.00 3.00 3.00 .38 23.00 27.00 .04745 -1.04981 1
111.00 2.00 31.00 2.00 2.00 .00 19.00 10.00 .54159 1.84640 1
112.00 1.00 91.00 2.00 3.00 .18 6.00 16.00 .00897 -1.00905 1
113.00 1.00 81.00 3.00 2.00 .00 3.00 9.00 .01998 -1.02039 1
114.00 2.00 15.00 1.00 2.00 .13 19.00 13.00 .81241 1.23090 1
116.00 2.00 1.00 1.00 2.00 .88 15.00 7.00 .93102 1.07410 1
117.00 1.00 93.00 3.00 2.00 .18 9.00 15.00 .00764 -1.00770 1
118.00 2.00 14.00 1.00 3.00 .15 23.00 18.00 .82447 1.21289 1
120.00 1.00 91.00 2.00 2.00 .43 17.00 14.00 .00897 -1.00905 1
121.00 1.00 55.00 3.00 2.00 .69 20.00 14.00 .14409 -1.16834 1
122.00 1.00 70.00 2.00 3.00 .03 .00 6.00 .04745 -1.04981 1
123.00 1.00 25.00 2.00 2.00 .45 4.00 10.00 .65789 -2.92301 1
125.00 1.00 91.00 2.00 2.00 .13 .00 3.00 .00897 -1.00905 1
126.00 1.00 91.00 3.00 3.00 .23 4.00 6.00 .00897 -1.00905 1
127.00 1.00 91.00 3.00 2.00 .00 8.00 8.00 .00897 -1.00905 1
128.00 2.00 13.00 2.00 2.00 .65 16.00 14.00 .83592 1.19629 1
129.00 1.00 50.00 2.00 2.00 .25 20.00 23.00 .20168 -1.25264 1
135.00 1.00 90.00 3.00 3.00 .03 5.00 12.00 .00972 -1.00982 1
138.00 1.00 70.00 3.00 3.00 .10 1.00 6.00 .04745 -1.04981 1
139.00 2.00 19.00 3.00 3.00 .10 11.00 12.00 .75787 1.31949 1
149.00 2.00 50.00 3.00 2.00 .03 .00 .00 .20168 4.95826 1
204.00 1.00 50.00 3.00 1.00 .13 .00 1.00 .20168 -1.25264 1
205.00 1.00 91.00 3.00 3.00 .72 16.00 18.00 .00897 -1.00905 1
206.00 2.00 24.00 1.00 1.00 .10 5.00 21.00 .67592 1.47947 1
207.00 1.00 80.00 3.00 3.00 .13 6.00 7.00 .02164 -1.02212 1
208.00 1.00 87.00 2.00 2.00 .18 9.00 20.00 .01237 -1.01253 1
209.00 1.00 70.00 2.00 2.00 .53 15.00 12.00 .04745 -1.04981 1
211.00 1.00 55.00 2.00 1.00 .33 8.00 5.00 .14409 -1.16834 1
212.00 1.00 56.00 3.00 1.00 .30 6.00 20.00 .13436 -1.15522 1
214.00 1.00 54.00 2.00 2.00 .15 .00 16.00 .15439 -1.18258 1
215.00 1.00 71.00 3.00 3.00 .35 12.00 12.00 .04391 -1.04592 1
217.00 2.00 36.00 1.00 1.00 .10 12.00 8.00 .44049 2.27020 1
218.00 1.00 91.00 2.00 2.00 .05 11.00 25.00 .00897 -1.00905 1
219.00 1.00 91.00 2.00 2.00 1.23 11.00 24.00 .00897 -1.00905 1
220.00 1.00 91.00 2.00 3.00 .08 8.00 11.00 .00897 -1.00905 1
221.00 1.00 91.00 2.00 2.00 .33 5.00 11.00 .00897 -1.00905 1
222.00 2.00 36.00 2.00 1.00 .18 5.00 3.00 .44049 2.27020 1
223.00 1.00 70.00 2.00 3.00 .18 14.00 3.00 .04745 -1.04981 1
224.00 1.00 91.00 2.00 2.00 .43 2.00 10.00 .00897 -1.00905 1
225.00 1.00 55.00 2.00 1.00 .18 6.00 11.00 .14409 -1.16834 1
229.00 2.00 75.00 2.00 2.00 .40 30.00 25.00 .03212 31.12941 1
232.00 1.00 91.00 3.00 2.00 .15 6.00 3.00 .00897 -1.00905 1
233.00 1.00 70.00 2.00 1.00 .00 11.00 8.00 .04745 -1.04981 1
234.00 1.00 54.00 3.00 2.00 .10 .00 .00 .15439 -1.18258 1
237.00 1.00 70.00 3.00 2.00 .18 5.00 25.00 .04745 -1.04981 1
241.00 1.00 19.00 2.00 3.00 .33 13.00 9.00 .75787 -4.12995 1
304.00 2.00 18.00 2.00 2.00 .26 25.00 6.00 .77245 1.29458 1
305.00 1.00 88.00 3.00 2.00 1.35 17.00 29.00 .01142 -1.01155 1
306.00 1.00 70.00 2.00 3.00 .63 14.00 33.00 .04745 -1.04981 1
307.00 1.00 85.00 2.00 2.00 2.65 18.00 14.00 .01452 -1.01474 1
308.00 1.00 13.00 2.00 2.00 .23 5.00 5.00 .83592 -6.09442 1
309.00 2.00 13.00 2.00 2.00 .23 7.00 17.00 .83592 1.19629 1
311.00 2.00 1.00 2.00 2.00 .50 20.00 14.00 .93102 1.07410 1
315.00 1.00 19.00 2.00 3.00 .18 1.00 11.00 .75787 -4.12995 1
316.00 1.00 88.00 2.00 2.00 .38 12.00 11.00 .01142 -1.01155 2
318.00 1.00 88.00 3.00 2.00 .03 5.00 5.00 .01142 -1.01155 3
319.00 2.00 18.00 2.00 3.00 .30 15.00 16.00 .77245 1.29458 1
321.00 2.00 15.00 2.00 2.00 .63 15.00 18.00 .81241 1.23090 1
322.00 1.00 88.00 3.00 2.00 .40 18.00 15.00 .01142 -1.01155 1
325.00 2.00 18.00 2.00 3.00 1.00 28.00 18.00 .77245 1.29458 1
329.00 1.00 88.00 3.00 2.00 .03 7.00 11.00 .01142 -1.01155 4
332.00 2.00 2.00 2.00 2.00 .05 8.00 9.00 .92562 1.08036 1
_ATEOF
cat >lr-data-unweighted.sps <<'_ATEOF'
set format = F12.3.
set decimal dot.
data list notable file='lr-data.txt'
list /id outcome survrate prognos amttreat gsi avoid intrus pre_1 lre_1 w *.
logistic regression
variables = outcome with survrate
.
_ATEOF
cat >lr-data-weighted.sps <<'_ATEOF'
set format = F12.3.
set decimal dot.
data list notable file='lr-data.txt'
list /id outcome survrate prognos amttreat gsi avoid intrus pre_1 lre_1 w *.
weight by w.
* Omit duplicate cases.
select if id <> 305 and id <> 316 and id <> 318.
logistic regression
variables = outcome with survrate
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/logistic.at:213: pspp -O format=csv lr-data-unweighted.sps > unweighted-result"
at_fn_check_prepare_trace "logistic.at:213"
( $at_check_trace; pspp -O format=csv lr-data-unweighted.sps > unweighted-result
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/logistic.at:213"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/logistic.at:214: pspp -O format=csv lr-data-weighted.sps > weighted-result"
at_fn_check_prepare_trace "logistic.at:214"
( $at_check_trace; pspp -O format=csv lr-data-weighted.sps > weighted-result
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/logistic.at:214"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/logistic.at:218: diff unweighted-result weighted-result"
at_fn_check_prepare_trace "logistic.at:218"
( $at_check_trace; diff unweighted-result weighted-result
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "8c8
< Included in Analysis,66,100.000
---
> Included in Analysis,63,100.000
10c10
< Total,66,100.000
---
> Total,63,100.000
23,24c23,24
< Step 1,outcome,1.000,43,5,89.583
< ,,2.000,4,14,77.778
---
> Step 1,outcome,1.000,43.000,5.000,89.583
> ,,2.000,4.000,14.000,77.778
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/logistic.at:218"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_519
#AT_START_520
at_fn_group_banner 520 'logistic.at:242' \
"LOGISTIC REGRESSION without constant" " " 76
at_xfail=no
(
$as_echo "520. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >non-const.sps <<'_ATEOF'
set format=F20.3.
input program.
loop #i = 1 to 200.
compute female = (#i > 91).
end case.
end loop.
end file.
end input program.
compute constant = 1.
logistic regression female with constant /noconst.
_ATEOF
{ set +x
$as_echo "$at_srcdir/logistic.at:260: pspp -O format=csv non-const.sps"
at_fn_check_prepare_trace "logistic.at:260"
( $at_check_trace; pspp -O format=csv non-const.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Dependent Variable Encoding
Original Value,Internal Value
.00,0
1.00,1
Table: Case Processing Summary
Unweighted Cases,N,Percent
Included in Analysis,200,100.000
Missing Cases,0,.000
Total,200,100.000
note: Estimation terminated at iteration number 2 because parameter estimates changed by less than 0.001
Table: Model Summary
Step 1,-2 Log likelihood,Cox & Snell R Square,Nagelkerke R Square
,275.637,.008,.011
Table: Classification Table
,,,Predicted,,
,,,female,,\"Percentage
Correct\"
,Observed,,.00,1.00,
Step 1,female,.00,0,91,.000
,,1.00,0,109,100.000
,Overall Percentage,,,,54.500
Table: Variables in the Equation
,,B,S.E.,Wald,df,Sig.,Exp(B)
Step 1,constant,.180,.142,1.616,1,.204,1.198
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/logistic.at:260"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_520
#AT_START_521
at_fn_group_banner 521 'logistic.at:299' \
"LOGISTIC REGRESSION non-dichotomous dep var" " " 76
at_xfail=no
(
$as_echo "521. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >non-dich.sps <<'_ATEOF'
data list notable list /y x1 x2 x3 x4.
begin data.
1 2 3 4 5
0 2 3 4 8
2 3 4 5 6
end data.
logistic regression y with x1 x2 x3 x4.
_ATEOF
{ set +x
$as_echo "$at_srcdir/logistic.at:312: pspp -O format=csv non-dich.sps"
at_fn_check_prepare_trace "logistic.at:312"
( $at_check_trace; pspp -O format=csv non-dich.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: Dependent variable's values are not dichotomous.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/logistic.at:312"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_521
#AT_START_522
at_fn_group_banner 522 'logistic.at:324' \
"LOGISTIC REGRESSION with categorical" " " 76
at_xfail=no
(
$as_echo "522. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >lr-cat.data <<'_ATEOF'
620 3.07 2 4
800 4.00 3 9
580 3.40 2 4
600 3.13 2 4
540 2.70 2 4
660 3.31 4 4
480 3.58 1 9
620 4.00 1 9
680 3.98 2 9
580 3.40 4 4
760 3.35 3 4
700 3.72 2 4
460 3.64 1 9
540 3.28 3 4
680 3.48 3 4
740 3.31 1 4
460 3.77 3 4
740 3.54 1 4
600 3.63 3 4
620 3.05 2 4
560 3.04 3 4
520 2.70 3 4
640 3.35 3 4
620 3.58 2 4
660 3.70 4 9
500 2.86 4 4
640 3.50 2 4
720 4.00 3 4
720 3.94 3 4
400 3.65 2 4
800 2.90 2 4
520 2.90 3 4
440 3.24 4 4
580 3.51 2 4
500 3.31 3 4
440 3.22 1 4
540 3.17 1 9
420 3.02 1 4
780 3.22 2 9
440 3.13 4 4
800 3.66 1 9
580 3.32 2 9
480 2.67 2 9
700 4.00 1 9
740 2.97 2 9
700 3.83 2 4
640 3.93 2 4
800 3.90 2 4
400 3.38 2 4
700 3.52 2 4
680 3.00 4 9
540 3.20 1 4
580 4.00 2 4
780 4.00 2 9
220 2.83 3 4
580 3.20 2 9
580 3.50 2 4
620 3.30 1 4
520 3.65 4 9
600 3.38 3 9
660 3.77 3 4
580 2.86 4 9
580 3.46 2 9
560 3.36 3 4
740 4.00 3 9
480 3.44 3 4
640 3.19 4 9
600 3.54 1 9
540 3.38 4 4
500 2.81 3 4
360 2.56 3 4
460 3.15 4 4
460 2.63 2 4
440 2.76 2 4
740 3.62 4 4
380 3.38 2 4
640 3.63 1 9
800 3.73 1 4
660 3.67 2 4
760 3.00 2 9
420 2.96 1 4
740 3.74 4 4
800 3.75 2 4
620 3.40 2 4
660 3.67 3 9
400 3.35 3 4
680 3.14 2 4
660 3.47 3 9
660 3.63 2 9
420 3.41 4 4
660 4.00 1 4
680 3.70 2 4
620 3.23 3 9
520 3.35 3 4
500 4.00 3 4
400 3.36 2 4
700 3.56 1 9
540 3.81 1 9
520 2.68 3 9
540 3.50 2 4
700 4.00 2 4
600 3.64 3 9
800 3.31 3 4
520 3.29 1 4
580 3.69 1 4
380 3.43 3 4
560 3.19 3 4
760 2.81 1 9
540 3.13 2 4
660 3.14 2 9
520 3.81 1 9
680 3.19 4 4
540 3.78 4 4
500 3.57 3 4
660 3.49 2 4
340 3.00 2 9
400 3.15 2 9
420 3.92 4 4
760 3.35 2 9
700 2.94 2 4
540 3.04 1 4
780 3.87 4 4
560 3.78 2 4
700 3.82 3 4
400 2.93 3 4
440 3.45 2 9
800 3.47 3 4
340 3.15 3 4
520 4.00 1 9
520 3.15 3 4
600 2.98 2 9
420 2.69 2 4
460 3.44 2 4
620 3.71 1 9
480 3.13 2 4
580 3.40 3 4
540 3.39 3 9
540 3.94 3 4
440 2.98 3 4
380 3.59 4 4
500 2.97 4 4
340 2.92 3 4
440 3.15 2 4
600 3.48 2 4
420 2.67 3 4
460 3.07 2 4
460 3.45 3 9
480 3.39 4 4
480 2.78 3 4
720 3.42 2 9
680 3.67 2 9
800 3.89 2 4
360 3.00 3 4
620 3.17 2 9
700 3.52 4 9
540 3.19 2 4
580 3.30 2 4
800 4.00 3 9
660 3.33 2 4
380 3.34 3 4
720 3.84 3 4
600 3.59 2 4
500 3.03 3 4
640 3.81 2 4
540 3.49 1 9
680 3.85 3 9
540 3.84 2 9
460 2.93 3 4
380 2.94 3 4
620 3.22 2 4
740 3.37 4 4
620 4.00 2 4
800 3.74 1 9
400 3.31 3 4
540 3.46 4 4
620 3.18 2 9
480 2.91 1 9
300 2.84 2 9
440 2.48 4 4
640 2.79 2 4
400 3.23 4 9
680 3.46 2 9
620 3.37 1 9
700 3.92 2 4
620 3.37 2 9
620 3.63 2 4
620 3.95 3 9
560 2.52 2 4
520 2.62 2 4
600 3.35 2 4
700 4.00 1 4
640 3.67 3 4
640 4.00 3 4
520 2.93 4 4
620 3.21 4 4
680 3.99 3 4
660 3.34 3 4
700 3.45 3 4
560 3.36 1 9
800 2.78 2 4
500 3.88 4 4
700 3.65 2 4
680 3.76 3 9
660 3.07 3 4
580 3.46 4 4
460 2.87 2 4
600 3.31 4 4
620 3.94 4 4
400 3.05 2 4
800 3.43 2 9
600 3.58 1 9
580 3.36 2 4
540 3.16 3 4
500 2.71 2 4
600 3.28 3 4
600 2.82 4 4
460 3.58 2 4
520 2.85 3 4
740 3.52 4 9
500 3.95 4 4
560 3.61 3 4
620 3.45 2 9
640 3.51 2 4
660 3.44 2 9
660 2.91 3 9
540 3.28 1 4
560 2.98 1 9
800 3.97 1 4
720 3.77 3 4
720 3.64 1 9
480 3.71 4 9
680 3.34 2 4
680 3.11 2 4
540 2.81 3 4
620 3.75 2 9
540 3.12 1 4
560 3.48 2 9
720 3.40 3 4
680 3.90 1 4
640 3.76 3 4
560 3.16 1 4
520 3.30 2 9
640 3.12 3 4
580 3.57 3 4
540 3.55 4 9
780 3.63 4 9
600 3.89 1 9
800 4.00 1 9
580 3.29 4 4
360 3.27 3 4
800 4.00 2 9
640 3.52 4 4
720 3.45 4 4
580 3.06 2 4
580 3.02 2 4
500 3.60 3 9
580 3.12 3 9
600 2.82 4 4
620 3.99 3 4
700 4.00 3 4
480 4.00 2 4
560 2.95 2 4
560 4.00 3 4
560 2.65 3 9
400 3.08 2 4
480 2.62 2 9
640 3.86 3 4
480 3.57 2 4
540 3.51 2 4
380 3.33 4 4
680 3.64 3 4
400 3.51 3 4
340 2.90 1 4
700 3.08 2 4
480 3.02 1 9
600 3.15 2 9
780 3.80 3 9
520 3.74 2 9
520 3.51 2 4
640 3.73 3 4
560 3.32 4 4
620 2.85 2 4
700 3.28 1 4
760 4.00 1 9
800 3.60 2 4
580 3.34 2 4
540 3.77 2 9
640 3.17 2 4
540 3.02 4 4
680 3.08 4 4
680 3.31 2 4
680 2.96 3 9
700 2.88 2 4
580 3.77 4 4
540 3.49 2 9
700 3.56 2 9
600 3.56 2 9
560 3.59 2 4
640 2.94 2 9
560 3.33 4 4
620 3.69 3 4
680 3.27 2 9
460 3.14 3 4
500 3.53 4 4
620 3.33 3 4
600 3.62 3 4
500 3.01 4 4
740 3.34 4 4
560 3.69 3 9
620 3.95 3 9
740 3.86 2 9
800 3.53 1 9
620 3.78 3 4
700 3.27 2 4
540 3.78 2 9
700 3.65 2 4
800 3.22 1 9
560 3.59 2 9
800 3.15 4 4
520 3.90 3 9
520 3.74 4 9
480 2.55 1 4
800 4.00 4 4
620 3.09 4 4
560 3.49 4 4
500 3.17 3 4
480 3.40 2 4
460 2.98 1 4
580 3.58 1 9
640 3.30 2 4
480 3.45 2 4
440 3.17 2 4
660 3.32 1 4
500 3.08 3 4
660 3.94 2 4
720 3.31 1 4
460 3.64 3 9
500 2.93 4 4
800 3.54 3 4
580 2.93 2 4
620 3.61 1 9
500 2.98 3 4
660 4.00 2 9
560 3.24 4 4
560 2.42 2 4
580 3.80 2 4
500 3.23 4 4
680 2.42 1 9
580 3.46 3 4
800 3.91 3 4
700 2.90 4 4
520 3.12 2 4
300 2.92 4 4
560 3.43 3 4
620 3.63 3 4
500 2.79 4 4
360 3.14 1 4
640 3.94 2 9
460 3.99 3 9
300 3.01 3 4
520 2.73 2 4
600 3.47 2 9
580 3.25 1 4
520 3.10 4 4
620 3.43 3 4
380 2.91 4 4
660 3.59 3 4
660 3.95 2 9
540 3.33 3 4
740 4.00 3 4
640 3.38 3 4
600 3.89 3 4
720 3.88 3 4
580 4.00 3 4
420 2.26 4 4
520 4.00 2 9
800 3.70 1 9
700 4.00 1 9
480 3.43 2 4
660 3.45 4 4
520 3.25 3 4
560 2.71 3 4
600 3.32 2 4
580 2.88 2 4
660 3.88 2 9
600 3.22 1 4
580 4.00 1 4
660 3.60 3 9
500 3.35 2 4
520 2.98 2 4
660 3.49 2 9
560 3.07 2 4
500 3.13 2 9
720 3.50 3 9
440 3.39 2 9
640 3.95 2 9
380 3.61 3 4
800 3.05 2 9
520 3.19 3 9
600 3.40 3 4
_ATEOF
cat >lr-cat.sps <<'_ATEOF'
set format=F20.3.
data list notable list file='lr-cat.data' /b1 b2 bcat y.
logistic regression
y with b1 b2 bcat
/categorical = bcat
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/logistic.at:740: pspp -O format=csv lr-cat.sps"
at_fn_check_prepare_trace "logistic.at:740"
( $at_check_trace; pspp -O format=csv lr-cat.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Dependent Variable Encoding
Original Value,Internal Value
4.000,0
9.000,1
Table: Case Processing Summary
Unweighted Cases,N,Percent
Included in Analysis,400,100.000
Missing Cases,0,.000
Total,400,100.000
note: Estimation terminated at iteration number 4 because parameter estimates changed by less than 0.001
Table: Model Summary
Step 1,-2 Log likelihood,Cox & Snell R Square,Nagelkerke R Square
,458.517,.098,.138
Table: Categorical Variables' Codings
,,,Parameter coding,,
,,Frequency,(1),(2),(3)
bcat,1.000,61,1,0,0
,2.000,151,0,1,0
,3.000,121,0,0,1
,4.000,67,0,0,0
Table: Classification Table
,,,Predicted,,
,,,y,,\"Percentage
Correct\"
,Observed,,4.000,9.000,
Step 1,y,4.000,254,19,93.040
,,9.000,97,30,23.622
,Overall Percentage,,,,71.000
Table: Variables in the Equation
,,B,S.E.,Wald,df,Sig.,Exp(B)
Step 1,b1,.002,.001,4.284,1,.038,1.002
,b2,.804,.332,5.872,1,.015,2.235
,bcat,,,20.895,3,.000,
,bcat(1),1.551,.418,13.788,1,.000,4.718
,bcat(2),.876,.367,5.706,1,.017,2.401
,bcat(3),.211,.393,.289,1,.591,1.235
,Constant,-5.541,1.138,23.709,1,.000,.004
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/logistic.at:740"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_522
#AT_START_523
at_fn_group_banner 523 'logistic.at:792' \
"LOGISTIC REGRESSION with cat var 2" " " 76
at_xfail=no
(
$as_echo "523. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >lr-cat2.data <<'_ATEOF'
60.00 1.00 8.00 50.00
47.00 .00 9.00 42.00
57.00 1.00 7.00 53.00
60.00 .00 8.00 53.00
68.00 .00 8.00 66.00
63.00 .00 8.00 55.00
65.00 .00 8.00 63.00
52.00 .00 8.00 61.00
34.00 .00 9.00 42.00
37.00 .00 8.00 39.00
68.00 1.00 9.00 69.00
60.00 .00 9.00 61.00
44.00 .00 9.00 58.00
42.00 .00 8.00 47.00
57.00 1.00 7.00 61.00
55.00 1.00 8.00 50.00
55.00 .00 9.00 58.00
44.00 .00 8.00 63.00
50.00 1.00 9.00 66.00
44.00 .00 8.00 39.00
55.00 .00 8.00 58.00
44.00 .00 8.00 50.00
47.00 1.00 7.00 34.00
48.00 .00 8.00 44.00
45.00 .00 7.00 31.00
43.00 .00 8.00 50.00
39.00 .00 8.00 42.00
63.00 .00 9.00 50.00
47.00 .00 8.00 58.00
42.00 .00 7.00 50.00
50.00 .00 9.00 36.00
47.00 .00 7.00 33.00
60.00 .00 9.00 61.00
47.00 .00 7.00 42.00
68.00 1.00 9.00 69.00
52.00 .00 8.00 54.00
63.00 1.00 9.00 61.00
65.00 1.00 9.00 61.00
63.00 1.00 9.00 53.00
57.00 .00 8.00 51.00
34.00 .00 8.00 36.00
50.00 .00 8.00 39.00
52.00 1.00 7.00 56.00
45.00 .00 7.00 34.00
47.00 1.00 7.00 53.00
34.00 .00 7.00 39.00
50.00 1.00 8.00 55.00
60.00 .00 9.00 58.00
63.00 .00 8.00 58.00
35.00 .00 7.00 51.00
50.00 .00 8.00 58.00
68.00 .00 8.00 63.00
41.00 .00 9.00 34.00
47.00 .00 8.00 47.00
76.00 .00 9.00 64.00
44.00 .00 8.00 44.00
36.00 .00 9.00 50.00
68.00 1.00 9.00 55.00
47.00 1.00 8.00 50.00
50.00 .00 7.00 53.00
68.00 .00 8.00 74.00
39.00 .00 7.00 44.00
50.00 .00 8.00 55.00
52.00 .00 9.00 61.00
47.00 .00 8.00 53.00
39.00 .00 7.00 47.00
55.00 1.00 9.00 49.00
68.00 1.00 8.00 50.00
52.00 1.00 9.00 63.00
55.00 .00 8.00 58.00
57.00 .00 8.00 55.00
66.00 1.00 9.00 61.00
65.00 1.00 7.00 58.00
42.00 .00 7.00 42.00
68.00 1.00 7.00 59.00
60.00 1.00 9.00 61.00
52.00 .00 8.00 55.00
57.00 1.00 7.00 54.00
42.00 .00 9.00 50.00
42.00 .00 8.00 47.00
57.00 .00 8.00 50.00
47.00 .00 7.00 45.00
44.00 .00 7.00 40.00
43.00 .00 9.00 55.00
31.00 .00 8.00 39.00
37.00 .00 7.00 33.00
63.00 1.00 7.00 63.00
47.00 .00 8.00 39.00
57.00 1.00 8.00 63.00
52.00 .00 8.00 44.00
44.00 .00 7.00 35.00
52.00 .00 7.00 55.00
55.00 .00 7.00 69.00
52.00 .00 8.00 53.00
55.00 .00 9.00 61.00
65.00 1.00 9.00 63.00
55.00 .00 8.00 44.00
63.00 .00 7.00 65.00
44.00 .00 7.00 39.00
47.00 .00 7.00 36.00
63.00 1.00 9.00 55.00
68.00 .00 8.00 66.00
34.00 .00 8.00 39.00
47.00 .00 9.00 50.00
50.00 .00 9.00 58.00
63.00 .00 8.00 66.00
44.00 .00 7.00 34.00
44.00 .00 8.00 50.00
50.00 .00 8.00 53.00
47.00 1.00 9.00 69.00
65.00 .00 9.00 58.00
57.00 .00 8.00 47.00
39.00 .00 8.00 39.00
47.00 .00 8.00 53.00
50.00 1.00 7.00 63.00
50.00 .00 8.00 50.00
63.00 .00 9.00 53.00
73.00 1.00 9.00 61.00
44.00 .00 7.00 47.00
47.00 .00 8.00 42.00
47.00 .00 8.00 58.00
36.00 .00 7.00 61.00
57.00 1.00 8.00 55.00
53.00 1.00 8.00 57.00
63.00 .00 7.00 66.00
50.00 .00 8.00 34.00
47.00 .00 9.00 48.00
57.00 1.00 8.00 58.00
39.00 .00 8.00 53.00
42.00 .00 8.00 42.00
42.00 .00 9.00 31.00
42.00 .00 8.00 72.00
46.00 .00 8.00 44.00
55.00 .00 8.00 42.00
42.00 .00 8.00 47.00
50.00 .00 8.00 44.00
44.00 .00 9.00 39.00
73.00 1.00 8.00 69.00
71.00 1.00 9.00 58.00
50.00 .00 9.00 49.00
63.00 1.00 7.00 54.00
42.00 .00 8.00 36.00
47.00 .00 7.00 42.00
39.00 .00 9.00 26.00
63.00 .00 8.00 58.00
50.00 .00 8.00 55.00
65.00 1.00 8.00 55.00
76.00 1.00 9.00 67.00
71.00 1.00 8.00 66.00
39.00 .00 9.00 47.00
47.00 1.00 9.00 63.00
60.00 .00 7.00 50.00
63.00 .00 9.00 55.00
54.00 1.00 9.00 55.00
55.00 1.00 8.00 58.00
57.00 .00 8.00 61.00
55.00 1.00 9.00 63.00
42.00 .00 7.00 50.00
50.00 .00 8.00 44.00
55.00 .00 8.00 42.00
42.00 .00 7.00 50.00
34.00 .00 8.00 39.00
65.00 .00 9.00 46.00
52.00 .00 7.00 58.00
44.00 .00 8.00 39.00
65.00 1.00 9.00 66.00
47.00 .00 8.00 42.00
41.00 .00 7.00 39.00
68.00 .00 9.00 63.00
63.00 1.00 8.00 72.00
52.00 .00 8.00 53.00
57.00 .00 8.00 50.00
68.00 .00 8.00 55.00
42.00 .00 8.00 56.00
47.00 .00 8.00 48.00
73.00 1.00 9.00 58.00
39.00 .00 8.00 50.00
63.00 1.00 9.00 69.00
60.00 .00 8.00 55.00
65.00 1.00 9.00 66.00
73.00 1.00 8.00 63.00
52.00 .00 8.00 55.00
36.00 .00 8.00 42.00
28.00 .00 7.00 44.00
47.00 .00 8.00 44.00
57.00 .00 7.00 47.00
34.00 .00 7.00 29.00
47.00 .00 9.00 66.00
57.00 .00 8.00 58.00
60.00 1.00 9.00 50.00
50.00 .00 9.00 47.00
73.00 1.00 9.00 55.00
52.00 1.00 8.00 47.00
55.00 .00 8.00 53.00
47.00 .00 8.00 53.00
50.00 .00 8.00 61.00
61.00 .00 7.00 44.00
52.00 .00 9.00 53.00
47.00 .00 7.00 40.00
47.00 .00 7.00 50.00
_ATEOF
cat >stringcat.sps <<'_ATEOF'
set format=F20.3.
data list notable file='lr-cat2.data' list /read honcomp wiz science *.
string ses(a1).
recode wiz (7 = "a") (8 = "b") (9 = "c") into ses.
logistic regression honcomp with read science ses
/categorical = ses.
_ATEOF
{ set +x
$as_echo "$at_srcdir/logistic.at:1009: pspp -O format=csv stringcat.sps"
at_fn_check_prepare_trace "logistic.at:1009"
( $at_check_trace; pspp -O format=csv stringcat.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Dependent Variable Encoding
Original Value,Internal Value
.000,0
1.000,1
Table: Case Processing Summary
Unweighted Cases,N,Percent
Included in Analysis,200,100.000
Missing Cases,0,.000
Total,200,100.000
note: Estimation terminated at iteration number 5 because parameter estimates changed by less than 0.001
Table: Model Summary
Step 1,-2 Log likelihood,Cox & Snell R Square,Nagelkerke R Square
,165.701,.280,.408
Table: Categorical Variables' Codings
,,,Parameter coding,
,,Frequency,(1),(2)
ses,a,47,1,0
,b,95,0,1
,c,58,0,0
Table: Classification Table
,,,Predicted,,
,,,honcomp,,\"Percentage
Correct\"
,Observed,,.000,1.000,
Step 1,honcomp,.000,132,15,89.796
,,1.000,26,27,50.943
,Overall Percentage,,,,79.500
Table: Variables in the Equation
,,B,S.E.,Wald,df,Sig.,Exp(B)
Step 1,read,.098,.025,15.199,1,.000,1.103
,science,.066,.027,5.867,1,.015,1.068
,ses,,,6.690,2,.035,
,ses(1),.058,.532,.012,1,.913,1.060
,ses(2),-1.013,.444,5.212,1,.022,.363
,Constant,-9.561,1.662,33.113,1,.000,.000
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/logistic.at:1009"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_523
#AT_START_524
at_fn_group_banner 524 'logistic.at:1059' \
"LOGISTIC REGRESSION identical categories" " " 76
at_xfail=no
(
$as_echo "524. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >crash.sps <<'_ATEOF'
data list notable list /y x1 x2*.
begin data
0 1 1
1 2 1
end data.
logistic regression y with x1 x2
/categorical = x2.
_ATEOF
{ set +x
$as_echo "$at_srcdir/logistic.at:1072: pspp -O format=csv crash.sps"
at_fn_check_prepare_trace "logistic.at:1072"
( $at_check_trace; pspp -O format=csv crash.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/logistic.at:1072"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_524
#AT_START_525
at_fn_group_banner 525 'logistic.at:1079' \
"LOGISTIC REGRESSION missing categoricals" " " 76
at_xfail=no
(
$as_echo "525. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >data.txt <<'_ATEOF'
.00 3.69 .00
.00 1.16 1.00
1.00 -12.99 .00
.00 2.97 1.00
.00 20.48 .00
.00 4.90 .00
1.00 -4.38 .00
.00 -1.69 1.00
1.00 -5.71 .00
1.00 -14.28 .00
.00 9.00 .00
.00 2.89 1.00
.00 13.51 1.00
.00 23.32 1.00
.00 2.31 1.00
.00 -2.07 1.00
1.00 -4.52 1.00
1.00 -5.83 .00
1.00 -1.91 .00
1.00 -11.12 1.00
.00 -1.51 .00
.00 6.59 1.00
.00 19.28 1.00
.00 5.94 .00
.00 8.21 1.00
.00 8.11 1.00
.00 2.49 .00
.00 9.62 .00
1.00 -20.74 1.00
.00 -1.41 1.00
.00 15.15 1.00
.00 9.39 .00
1.00 -15.14 1.00
1.00 -5.86 .00
1.00 -11.64 1.00
1.00 -14.36 .00
1.00 -8.95 1.00
1.00 -16.42 1.00
1.00 -1.04 1.00
.00 12.89 1.00
.00 -7.08 1.00
.00 4.87 1.00
.00 11.53 1.00
1.00 -6.24 1.00
.00 1.25 1.00
.00 4.39 1.00
.00 3.17 .00
.00 19.39 1.00
.00 13.03 1.00
.00 2.43 .00
1.00 -14.73 1.00
.00 8.25 1.00
1.00 -13.28 1.00
.00 5.27 1.00
1.00 -3.46 1.00
.00 13.81 1.00
.00 1.35 1.00
1.00 -3.94 1.00
.00 20.73 1.00
1.00 -15.40 .00
1.00 -11.01 1.00
.00 4.56 .00
1.00 -15.35 1.00
.00 15.21 .00
.00 5.34 1.00
1.00 -21.55 1.00
.00 10.12 1.00
.00 -.73 1.00
.00 15.28 1.00
.00 11.08 1.00
1.00 -8.24 .00
.00 2.46 .00
.00 9.60 .00
.00 11.24 .00
.00 14.13 1.00
.00 19.72 1.00
.00 5.58 .00
.00 26.23 1.00
.00 7.25 .00
1.00 -.79 .00
.00 6.24 .00
1.00 1.16 .00
1.00 -7.89 1.00
1.00 -1.86 1.00
1.00 -10.80 1.00
1.00 -5.51 .00
.00 7.51 .00
.00 11.18 .00
.00 8.73 .00
1.00 -11.21 1.00
1.00 -13.24 .00
.00 19.34 .00
.00 9.32 1.00
.00 17.97 1.00
1.00 -1.56 1.00
1.00 -3.13 .00
.00 3.98 .00
.00 -1.21 1.00
.00 2.37 .00
1.00 -18.03 1.00
_ATEOF
cat >miss.sps <<'_ATEOF'
data list notable file='data.txt' list /y x1 cat0*.
logistic regression y with x1 cat0
/categorical = cat0.
_ATEOF
{ set +x
$as_echo "$at_srcdir/logistic.at:1191: pspp -O format=csv miss.sps > file1"
at_fn_check_prepare_trace "logistic.at:1191"
( $at_check_trace; pspp -O format=csv miss.sps > file1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/logistic.at:1191"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/logistic.at:1194: echo '1 34 .' >> data.txt"
at_fn_check_prepare_trace "logistic.at:1194"
( $at_check_trace; echo '1 34 .' >> data.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/logistic.at:1194"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/logistic.at:1196: pspp -O format=csv miss.sps > file2"
at_fn_check_prepare_trace "logistic.at:1196"
( $at_check_trace; pspp -O format=csv miss.sps > file2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/logistic.at:1196"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/logistic.at:1198: diff file1 file2"
at_fn_check_prepare_trace "logistic.at:1198"
( $at_check_trace; diff file1 file2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "8,10c8,10
< Included in Analysis,100,100.00
< Missing Cases,0,.00
< Total,100,100.00
---
> Included in Analysis,100,99.01
> Missing Cases,1,.99
> Total,101,100.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/logistic.at:1198"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_525
#AT_START_526
at_fn_group_banner 526 'logistic.at:1216' \
"LOGISTIC REGRESSION confidence interval" " " 76
at_xfail=no
(
$as_echo "526. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >ci.sps <<'_ATEOF'
set FORMAT=F20.3
data list notable list /disease age sciostat sector savings *.
begin data.
0 33 1 1 1
0 35 1 1 1
0 6 1 1 0
0 60 1 1 1
1 18 3 1 0
0 26 3 1 0
0 6 3 1 0
1 31 2 1 1
1 26 2 1 0
0 37 2 1 0
0 23 1 1 0
0 23 1 1 0
0 27 1 1 1
1 9 1 1 1
1 37 1 2 1
1 22 1 2 1
1 67 1 2 1
0 8 1 2 1
1 6 1 2 1
1 15 1 2 1
1 21 2 2 1
1 32 2 2 1
1 16 1 2 1
0 11 2 2 0
0 14 3 2 0
0 9 2 2 0
0 18 2 2 0
0 2 3 1 0
0 61 3 1 1
0 20 3 1 0
0 16 3 1 0
0 9 2 1 0
0 35 2 1 1
0 4 1 1 1
0 44 3 2 0
1 11 3 2 0
0 3 2 2 1
0 6 3 2 0
1 17 2 2 0
0 1 3 2 1
1 53 2 2 1
1 13 1 2 0
0 24 1 2 0
1 70 1 2 1
1 16 3 2 1
0 12 2 2 1
1 20 3 2 1
0 65 3 2 1
1 40 2 2 0
1 38 2 2 1
1 68 2 2 1
1 74 1 2 1
1 14 1 2 1
1 27 1 2 1
0 31 1 2 1
0 18 1 2 1
0 39 1 2 0
0 50 1 2 1
0 31 1 2 1
0 61 1 2 1
0 18 3 1 0
0 5 3 1 0
0 2 3 1 1
0 16 3 1 0
1 59 3 1 1
0 22 3 1 0
0 24 1 1 1
0 30 1 1 1
0 46 1 1 1
0 28 1 1 0
0 27 1 1 1
1 27 1 1 0
0 28 1 1 1
1 52 1 1 1
0 11 3 1 1
0 6 2 1 1
0 46 3 1 0
1 20 2 1 1
0 3 1 1 1
0 18 2 1 0
0 25 2 1 0
0 6 3 1 1
1 65 3 1 1
0 51 3 1 1
0 39 2 1 1
0 8 1 1 1
0 8 2 1 0
0 14 3 1 0
0 6 3 1 0
0 6 3 1 1
0 7 3 1 0
0 4 3 1 0
0 8 3 1 0
0 9 2 1 0
1 32 3 1 0
0 19 3 1 0
0 11 3 1 0
0 35 3 1 0
0 16 1 1 0
0 1 1 1 1
0 6 1 1 1
0 27 1 1 1
0 25 1 1 1
0 18 1 1 0
0 37 3 1 0
1 33 3 1 0
0 27 2 1 0
0 2 1 1 0
0 8 2 1 0
0 5 1 1 0
0 1 1 1 1
0 32 1 1 0
1 25 1 1 1
0 15 1 2 0
0 15 1 2 1
0 26 1 2 1
1 42 1 2 1
0 7 1 2 1
0 2 1 2 0
1 65 1 2 1
0 33 2 2 1
1 8 2 2 0
0 30 2 2 0
0 5 3 2 0
0 15 3 2 0
1 60 3 2 1
1 13 3 2 1
0 70 3 1 1
0 5 3 1 0
0 3 3 1 1
0 50 2 1 1
0 6 2 1 0
0 12 2 1 1
1 39 3 2 0
0 15 2 2 1
1 35 2 2 0
0 2 2 2 1
0 17 3 2 0
1 43 3 2 1
0 30 2 2 1
0 11 1 2 1
1 39 1 2 1
0 32 1 2 1
0 17 1 2 1
0 3 3 2 1
0 7 3 2 0
0 2 2 2 0
1 64 2 2 1
1 13 1 2 2
1 15 2 2 1
0 48 2 2 1
0 23 1 2 1
1 48 1 2 0
0 25 1 2 1
0 12 1 2 1
1 46 1 2 1
0 79 1 2 1
0 56 1 2 1
0 8 1 2 1
1 29 3 1 0
1 35 3 1 0
1 11 3 1 0
0 69 3 1 1
1 21 3 1 0
0 13 3 1 0
0 21 1 1 1
1 32 1 1 1
1 24 1 1 0
0 24 1 1 1
0 73 1 1 1
0 42 1 1 1
1 34 1 1 1
0 30 2 1 0
0 7 2 1 0
1 29 3 1 0
1 22 3 1 0
0 38 2 1 1
0 13 2 1 1
0 12 2 1 1
0 42 3 1 0
1 17 3 1 0
0 21 3 1 1
0 34 1 1 1
0 1 3 1 0
0 14 2 1 0
0 16 2 1 0
0 9 3 1 0
0 53 3 1 0
0 27 3 1 0
0 15 3 1 0
0 9 3 1 0
0 4 2 1 1
0 10 3 1 1
0 31 3 1 0
0 85 3 1 1
0 24 2 1 0
end data.
logistic regression
disease WITH age sciostat sector savings
/categorical = sciostat sector
/print = ci(95).
_ATEOF
{ set +x
$as_echo "$at_srcdir/logistic.at:1426: pspp -O format=csv ci.sps"
at_fn_check_prepare_trace "logistic.at:1426"
( $at_check_trace; pspp -O format=csv ci.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Dependent Variable Encoding
Original Value,Internal Value
.000,0
1.000,1
Table: Case Processing Summary
Unweighted Cases,N,Percent
Included in Analysis,196,100.000
Missing Cases,0,.000
Total,196,100.000
note: Estimation terminated at iteration number 4 because parameter estimates changed by less than 0.001
Table: Model Summary
Step 1,-2 Log likelihood,Cox & Snell R Square,Nagelkerke R Square
,211.195,.120,.172
Table: Categorical Variables' Codings
,,,Parameter coding,
,,Frequency,(1),(2)
sciostat,1.000,77,1,0
,2.000,49,0,1
,3.000,70,0,0
sector,1.000,117,1,
,2.000,79,0,
Table: Classification Table
,,,Predicted,,
,,,disease,,\"Percentage
Correct\"
,Observed,,.000,1.000,
Step 1,disease,.000,131,8,94.245
,,1.000,41,16,28.070
,Overall Percentage,,,,75.000
Table: Variables in the Equation
,,,,,,,,95% CI for Exp(B),
,,B,S.E.,Wald,df,Sig.,Exp(B),Lower,Upper
Step 1,age,.027,.009,8.647,1,.003,1.027,1.009,1.045
,savings,.061,.386,.025,1,.874,1.063,.499,2.264
,sciostat,,,.440,2,.803,,,
,sciostat(1),-.278,.434,.409,1,.522,.757,.323,1.775
,sciostat(2),-.219,.459,.227,1,.634,.803,.327,1.976
,sector,,,11.974,1,.001,,,
,sector(1),-1.235,.357,11.974,1,.001,.291,.145,.586
,Constant,-.814,.452,3.246,1,.072,.443,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/logistic.at:1426"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_526
#AT_START_527
at_fn_group_banner 527 'means.at:3' \
"MEANS simple example" " " 77
at_xfail=no
(
$as_echo "527. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >means-simple.sps <<'_ATEOF'
SET FORMAT=F12.5.
data list notable list /score * factor *.
BEGIN DATA.
22 01
22 01
29 01
16 01
24 02
21 02
22 01
24 01
19 01
17 01
22 01
17 02
23 02
25 02
20 01
15 01
18 01
26 01
23 02
35 02
20 01
16 01
19 01
14 01
14 01
21 01
END DATA.
MEANS TABLES = score BY factor.
_ATEOF
{ set +x
$as_echo "$at_srcdir/means.at:41: pspp -O format=csv means-simple.sps"
at_fn_check_prepare_trace "means.at:41"
( $at_check_trace; pspp -O format=csv means-simple.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Case Processing Summary
,Cases,,,,,
,Included,,Excluded,,Total,
,N,Percent,N,Percent,N,Percent
score: factor,26,100%,0,0%,26,100%
score: ,26,100%,0,0%,26,100%
Table: Report
,factor,Mean,N,Std. Deviation
score,1.00000,19.78947,19.00000,4.03566
,2.00000,24.00000,7.00000,5.50757
Table: Report
,Mean,N,Std. Deviation
score,20.92308,26.00000,4.75750
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/means.at:41"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_527
#AT_START_528
at_fn_group_banner 528 'means.at:64' \
"MEANS very simple example" " " 77
at_xfail=no
(
$as_echo "528. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >means-vsimple.sps <<'_ATEOF'
SET FORMAT=F12.5.
data list notable list /score.
begin data.
1
1
2
2
end data.
means tables = score.
_ATEOF
{ set +x
$as_echo "$at_srcdir/means.at:80: pspp -O format=csv means-vsimple.sps"
at_fn_check_prepare_trace "means.at:80"
( $at_check_trace; pspp -O format=csv means-vsimple.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Case Processing Summary
,Cases,,,,,
,Included,,Excluded,,Total,
,N,Percent,N,Percent,N,Percent
score: ,4,100%,0,0%,4,100%
Table: Report
,Mean,N,Std. Deviation
score,1.50000,4.00000,.57735
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/means.at:80"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_528
#AT_START_529
at_fn_group_banner 529 'means.at:98' \
"MEANS default missing" " " 77
at_xfail=no
(
$as_echo "529. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >means-dmiss.sps <<'_ATEOF'
SET FORMAT=F12.2.
data list notable list /a * g1 * g2 *.
begin data.
3 1 .
4 1 11
3 1 21
6 2 21
2 2 31
. 2 31
8 2 31
7 2 31
end data.
MEANS TABLES =
a BY g1 g2
BY g2
/cells = MEAN COUNT
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/means.at:121: pspp -O format=csv means-dmiss.sps"
at_fn_check_prepare_trace "means.at:121"
( $at_check_trace; pspp -O format=csv means-dmiss.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Case Processing Summary
,Cases,,,,,
,Included,,Excluded,,Total,
,N,Percent,N,Percent,N,Percent
a: g1 * g2,6,75%,2,25%,8,100%
a: g2,6,75%,2,25%,8,100%
a: ,7,87.5%,1,12.5%,8,100%
Table: Report
,g1,g2,Mean,N
a,1.00,11.00,4.00,1.00
,1.00,21.00,3.00,1.00
,2.00,21.00,6.00,1.00
,2.00,31.00,5.67,3.00
Table: Report
,g2,Mean,N
a,11.00,4.00,1.00
,21.00,4.50,2.00
,31.00,5.67,3.00
Table: Report
,Mean,N
a,5.00,6.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/means.at:121"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_529
#AT_START_530
at_fn_group_banner 530 'means.at:152' \
"MEANS linear stats" " " 77
at_xfail=no
(
$as_echo "530. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >means-linear.sps <<'_ATEOF'
set format F12.4.
data list notable list /id * group * test1 *
begin data.
1 1 85
2 1 90
3 1 82
4 1 75
5 1 99
6 2 70
7 2 66
8 2 52
9 2 71
10 2 50
end data.
add value labels /group 1 "experimental group" 2 "control group".
means test1 by group
/cells = mean count stddev sum min max range variance kurt skew
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/means.at:179: pspp -O format=csv means-linear.sps"
at_fn_check_prepare_trace "means.at:179"
( $at_check_trace; pspp -O format=csv means-linear.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Case Processing Summary
,Cases,,,,,
,Included,,Excluded,,Total,
,N,Percent,N,Percent,N,Percent
test1: group,10,100%,0,0%,10,100%
test1: ,10,100%,0,0%,10,100%
Table: Report
,group,Mean,N,Std. Deviation,Sum,Min,Max,Range,Variance,Kurtosis,Skewness
test1,experimental group,86.2000,5.0000,8.9833,431.0000,75.0000,99.0000,24.0000,80.7000,.2727,.3858
,control group,61.8000,5.0000,10.0598,309.0000,50.0000,71.0000,21.0000,101.2000,-3.0437,-.4830
Table: Report
,Mean,N,Std. Deviation,Sum,Min,Max,Range,Variance,Kurtosis,Skewness
test1,74.0000,10.0000,15.6915,740.0000,50.0000,99.0000,49.0000,246.2222,-.5759,-.1262
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/means.at:179"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_530
#AT_START_531
at_fn_group_banner 531 'means.at:201' \
"MEANS standard errors" " " 77
at_xfail=no
(
$as_echo "531. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >means-stderr.sps <<'_ATEOF'
set format F12.4.
data list notable list /id * group * test1 *
begin data.
1 1 85
2 1 90
3 1 82
4 1 75
5 1 99
6 1 70
7 2 66
8 2 52
9 2 71
10 2 50
end data.
means test1 by group
/cells = mean count semean seskew sekurt.
_ATEOF
{ set +x
$as_echo "$at_srcdir/means.at:224: pspp -O format=csv means-stderr.sps"
at_fn_check_prepare_trace "means.at:224"
( $at_check_trace; pspp -O format=csv means-stderr.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Case Processing Summary
,Cases,,,,,
,Included,,Excluded,,Total,
,N,Percent,N,Percent,N,Percent
test1: group,10,100%,0,0%,10,100%
test1: ,10,100%,0,0%,10,100%
Table: Report
,group,Mean,N,S.E. Mean,S.E. Skew,S.E. Kurt
test1,1.0000,83.5000,6.0000,4.2485,.8452,1.7408
,2.0000,59.7500,4.0000,5.1700,1.0142,2.6186
Table: Report
,Mean,N,S.E. Mean,S.E. Skew,S.E. Kurt
test1,74.0000,10.0000,4.9621,.6870,1.3342
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/means.at:224"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_531
#AT_START_532
at_fn_group_banner 532 'means.at:247' \
"MEANS harmonic and geometric means" " " 77
at_xfail=no
(
$as_echo "532. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >means-hg.sps <<'_ATEOF'
set format F12.4.
data list notable list /x * y *.
begin data.
1 3
2 3
3 3
4 3
5 3
end data.
means x y
/cells = mean harmonic geometric
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/means.at:267: pspp -O format=csv means-hg.sps"
at_fn_check_prepare_trace "means.at:267"
( $at_check_trace; pspp -O format=csv means-hg.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Case Processing Summary
,Cases,,,,,
,Included,,Excluded,,Total,
,N,Percent,N,Percent,N,Percent
x: ,5,100%,0,0%,5,100%
y: ,5,100%,0,0%,5,100%
Table: Report
,Mean,Harmonic Mean,Geom. Mean
x,3.0000,2.1898,2.6052
y,3.0000,3.0000,3.0000
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/means.at:267"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_532
#AT_START_533
at_fn_group_banner 533 'means.at:289' \
"MEANS all/none/default" " " 77
at_xfail=no
(
$as_echo "533. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >means-stat-keywords.sps <<'_ATEOF'
SET FORMAT=F12.2.
SET DECIMAL=DOT.
DATA LIST NOTABLE LIST /score *.
BEGIN DATA.
22
22
29
16
23
END DATA.
MEANS score /CELLS = ALL.
MEANS score /CELLS = DEFAULT.
MEANS score /CELLS = NONE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/means.at:311: pspp -O format=csv means-stat-keywords.sps"
at_fn_check_prepare_trace "means.at:311"
( $at_check_trace; pspp -O format=csv means-stat-keywords.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Case Processing Summary
,Cases,,,,,
,Included,,Excluded,,Total,
,N,Percent,N,Percent,N,Percent
score: ,5,100%,0,0%,5,100%
Table: Report
,Mean,N,Std. Deviation,S.E. Mean,Sum,Min,Max,Range,Variance,Kurtosis,S.E. Kurt,Skewness,S.E. Skew,First,Last,Harmonic Mean,Geom. Mean
score,22.40,5.00,4.62,2.06,112.00,16.00,29.00,13.00,21.30,1.85,2.00,.11,.91,22.00,23.00,21.61,22.01
Table: Case Processing Summary
,Cases,,,,,
,Included,,Excluded,,Total,
,N,Percent,N,Percent,N,Percent
score: ,5,100%,0,0%,5,100%
Table: Report
,Mean,N,Std. Deviation
score,22.40,5.00,4.62
Table: Case Processing Summary
,Cases,,,,,
,Included,,Excluded,,Total,
,N,Percent,N,Percent,N,Percent
score: ,5,100%,0,0%,5,100%
Table: Report
score
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/means.at:311"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_533
#AT_START_534
at_fn_group_banner 534 'means.at:349' \
"MEANS missing=table " " " 77
at_xfail=no
(
$as_echo "534. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >means-miss-table.sps <<'_ATEOF'
data list notable list /a * b * g1.
begin data.
1 9 1
2 9 1
3 9 1
4 9 2
5 9 2
6 9 2
7 . 2
end data.
MEANS a b BY g1
/a BY g1
/cells = COUNT
/missing = TABLE
.
MEANS a b BY g1
/a BY g1
/cells = COUNT
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/means.at:376: pspp -O format=csv means-miss-table.sps"
at_fn_check_prepare_trace "means.at:376"
( $at_check_trace; pspp -O format=csv means-miss-table.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Case Processing Summary
,Cases,,,,,
,Included,,Excluded,,Total,
,N,Percent,N,Percent,N,Percent
a: g1,7,100%,0,0%,7,100%
a: ,7,100%,0,0%,7,100%
b: g1,6,85.7143%,1,14.2857%,7,100%
b: ,6,85.7143%,1,14.2857%,7,100%
Table: Report
,g1,N
a,1.00,3.00
,2.00,3.00
b,1.00,3.00
,2.00,3.00
Table: Report
,N
a,6.00
b,6.00
Table: Case Processing Summary
,Cases,,,,,
,Included,,Excluded,,Total,
,N,Percent,N,Percent,N,Percent
a: g1,7,100%,0,0%,7,100%
a: ,7,100%,0,0%,7,100%
Table: Report
,g1,N
a,1.00,3.00
,2.00,4.00
Table: Report
,N
a,7.00
Table: Case Processing Summary
,Cases,,,,,
,Included,,Excluded,,Total,
,N,Percent,N,Percent,N,Percent
a: g1,7,100%,0,0%,7,100%
a: ,7,100%,0,0%,7,100%
b: g1,6,85.7143%,1,14.2857%,7,100%
b: ,6,85.7143%,1,14.2857%,7,100%
Table: Report
,g1,N
a,1.00,3.00
,2.00,4.00
b,1.00,3.00
,2.00,3.00
Table: Report
,N
a,7.00
b,6.00
Table: Case Processing Summary
,Cases,,,,,
,Included,,Excluded,,Total,
,N,Percent,N,Percent,N,Percent
a: g1,7,100%,0,0%,7,100%
a: ,7,100%,0,0%,7,100%
Table: Report
,g1,N
a,1.00,3.00
,2.00,4.00
Table: Report
,N
a,7.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/means.at:376"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_534
#AT_START_535
at_fn_group_banner 535 'means.at:459' \
"MEANS user missing values" " " 77
at_xfail=no
(
$as_echo "535. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >means-missing.sps <<'_ATEOF'
data list notable list /a * b * g1.
begin data.
1 2 9
2 2 1
3 2 1
4 2 2
5 2 2
6 2 2
7 9 2
end data.
MISSING VALUES a b g1 (9).
MEANS a b BY g1 /cells = COUNT .
MEANS a b BY g1 /cells = COUNT /missing = include .
MEANS a b BY g1 /cells = COUNT /missing = dependent .
_ATEOF
{ set +x
$as_echo "$at_srcdir/means.at:483: pspp -O format=csv means-missing.sps"
at_fn_check_prepare_trace "means.at:483"
( $at_check_trace; pspp -O format=csv means-missing.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Case Processing Summary
,Cases,,,,,
,Included,,Excluded,,Total,
,N,Percent,N,Percent,N,Percent
a: g1,6,85.7143%,1,14.2857%,7,100%
a: ,7,100%,0,0%,7,100%
b: g1,5,71.4286%,2,28.5714%,7,100%
b: ,6,85.7143%,1,14.2857%,7,100%
Table: Report
,g1,N
a,1.00,2.00
,2.00,4.00
b,1.00,2.00
,2.00,3.00
Table: Report
,N
a,6.00
b,5.00
Table: Case Processing Summary
,Cases,,,,,
,Included,,Excluded,,Total,
,N,Percent,N,Percent,N,Percent
a: g1,7,100%,0,0%,7,100%
a: ,7,100%,0,0%,7,100%
b: g1,7,100%,0,0%,7,100%
b: ,7,100%,0,0%,7,100%
Table: Report
,g1,N
a,1.00,2.00
,2.00,4.00
,9.00,1.00
b,1.00,2.00
,2.00,4.00
,9.00,1.00
Table: Report
,N
a,7.00
b,7.00
Table: Case Processing Summary
,Cases,,,,,
,Included,,Excluded,,Total,
,N,Percent,N,Percent,N,Percent
a: g1,7,100%,0,0%,7,100%
a: ,7,100%,0,0%,7,100%
b: g1,6,85.7143%,1,14.2857%,7,100%
b: ,6,85.7143%,1,14.2857%,7,100%
Table: Report
,g1,N
a,1.00,2.00
,2.00,4.00
,9.00,1.00
b,1.00,2.00
,2.00,3.00
,9.00,1.00
Table: Report
,N
a,7.00
b,6.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/means.at:483"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_535
#AT_START_536
at_fn_group_banner 536 'means.at:557' \
"MEANS empty factor spec" " " 77
at_xfail=no
(
$as_echo "536. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >means-bad.sps <<'_ATEOF'
data list list /outcome *.
begin data.
1
2
3
end data.
MEANS TABLES = outcome
BY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/means.at:571: pspp -O format=csv means-bad.sps"
at_fn_check_prepare_trace "means.at:571"
( $at_check_trace; pspp -O format=csv means-bad.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/means.at:571"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_536
#AT_START_537
at_fn_group_banner 537 'npar.at:3' \
"NPAR TESTS BINOMIAL, P < 0.5; N1/N2 < 1" " " 78
at_xfail=no
(
$as_echo "537. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
SET FORMAT F8.3.
DATA LIST LIST NOTABLE /x * w *.
BEGIN DATA.
1 6
2 15
END DATA.
WEIGHT BY w.
NPAR TESTS
/BINOMIAL(0.3) = x
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:19: pspp -O format=csv npar.sps"
at_fn_check_prepare_trace "npar.at:19"
( $at_check_trace; pspp -O format=csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Binomial Test
,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (1-tailed)
x,Group1,1.000,6.000,.286,.300,.551
,Group2,2.000,15.000,.714,,
,Total,,21.000,1.000,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:19"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_537
#AT_START_538
at_fn_group_banner 538 'npar.at:28' \
"NPAR TESTS BINOMIAL, P < 0.5; N1/N2 > 1" " " 78
at_xfail=no
(
$as_echo "538. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
SET FORMAT F8.3.
DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
BEGIN DATA.
1 7
2 6
END DATA.
WEIGHT BY w.
NPAR TESTS
/BINOMIAL(0.4) = x
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:44: pspp -O format=csv npar.sps"
at_fn_check_prepare_trace "npar.at:44"
( $at_check_trace; pspp -O format=csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Binomial Test
,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (1-tailed)
x,Group1,1,7,.538,.400,.229
,Group2,2,6,.462,,
,Total,,13,1.000,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:44"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_538
#AT_START_539
at_fn_group_banner 539 'npar.at:53' \
"NPAR TESTS BINOMIAL, P < 0.5; N1/N2 = 1" " " 78
at_xfail=no
(
$as_echo "539. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
SET FORMAT F8.3.
DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
BEGIN DATA.
1 8
2 8
END DATA.
WEIGHT BY w.
NPAR TESTS
/BINOMIAL(0.4) = x
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:69: pspp -O format=csv npar.sps"
at_fn_check_prepare_trace "npar.at:69"
( $at_check_trace; pspp -O format=csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Binomial Test
,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (1-tailed)
x,Group1,1,8,.500,.400,.284
,Group2,2,8,.500,,
,Total,,16,1.000,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:69"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_539
#AT_START_540
at_fn_group_banner 540 'npar.at:78' \
"NPAR TESTS BINOMIAL, P > 0.5; N1/N2 < 1" " " 78
at_xfail=no
(
$as_echo "540. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
SET FORMAT F8.3.
DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
BEGIN DATA.
1 11
2 12
END DATA.
WEIGHT BY w.
NPAR TESTS
/BINOMIAL(0.6) = x
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:94: pspp -O format=csv npar.sps"
at_fn_check_prepare_trace "npar.at:94"
( $at_check_trace; pspp -O format=csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Binomial Test
,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (1-tailed)
x,Group1,1,11,.478,.600,.164
,Group2,2,12,.522,,
,Total,,23,1.000,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:94"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_540
#AT_START_541
at_fn_group_banner 541 'npar.at:103' \
"NPAR TESTS BINOMIAL, P > 0.5; N1/N2 > 1" " " 78
at_xfail=no
(
$as_echo "541. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
SET FORMAT F8.3.
DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
BEGIN DATA.
1 11
2 9
END DATA.
WEIGHT BY w.
NPAR TESTS
/BINOMIAL(0.6) = x.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:118: pspp -O format=csv npar.sps"
at_fn_check_prepare_trace "npar.at:118"
( $at_check_trace; pspp -O format=csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Binomial Test
,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (1-tailed)
x,Group1,1,11,.550,.600,.404
,Group2,2,9,.450,,
,Total,,20,1.000,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:118"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_541
#AT_START_542
at_fn_group_banner 542 'npar.at:127' \
"NPAR TESTS BINOMIAL, P > 0.5; N1/N2 = 1" " " 78
at_xfail=no
(
$as_echo "542. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
SET FORMAT F8.3.
DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
BEGIN DATA.
1 11
2 11
END DATA.
WEIGHT BY w.
NPAR TESTS
/BINOMIAL(0.6) = x.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:142: pspp -O format=csv npar.sps"
at_fn_check_prepare_trace "npar.at:142"
( $at_check_trace; pspp -O format=csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Binomial Test
,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (1-tailed)
x,Group1,1,11,.500,.600,.228
,Group2,2,11,.500,,
,Total,,22,1.000,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:142"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_542
#AT_START_543
at_fn_group_banner 543 'npar.at:151' \
"NPAR TESTS BINOMIAL, P = 0.5; N1/N2 < 1" " " 78
at_xfail=no
(
$as_echo "543. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
SET FORMAT F8.3.
DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
BEGIN DATA.
1 8
2 15
END DATA.
WEIGHT BY w.
NPAR TESTS
/BINOMIAL = x
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:167: pspp -O format=csv npar.sps"
at_fn_check_prepare_trace "npar.at:167"
( $at_check_trace; pspp -O format=csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Binomial Test
,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (2-tailed)
x,Group1,1,8,.348,.500,.210
,Group2,2,15,.652,,
,Total,,23,1.000,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:167"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_543
#AT_START_544
at_fn_group_banner 544 'npar.at:176' \
"NPAR TESTS BINOMIAL, P = 0.5; N1/N2 > 1" " " 78
at_xfail=no
(
$as_echo "544. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
SET FORMAT F8.3.
DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
BEGIN DATA.
1 12
2 6
END DATA.
WEIGHT BY w.
NPAR TESTS
/BINOMIAL(0.5) = x.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:191: pspp -O format=csv npar.sps"
at_fn_check_prepare_trace "npar.at:191"
( $at_check_trace; pspp -O format=csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Binomial Test
,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (2-tailed)
x,Group1,1,12,.667,.500,.238
,Group2,2,6,.333,,
,Total,,18,1.000,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:191"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_544
#AT_START_545
at_fn_group_banner 545 'npar.at:200' \
"NPAR TESTS BINOMIAL, P = 0.5; N1/N2 = 1" " " 78
at_xfail=no
(
$as_echo "545. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
SET FORMAT F8.3.
DATA LIST LIST NOTABLE /x (F8.0) w (F8.0).
BEGIN DATA.
1 10
2 10
END DATA.
WEIGHT BY w.
NPAR TESTS
/BINOMIAL(0.5) = x
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:216: pspp -O format=csv npar.sps"
at_fn_check_prepare_trace "npar.at:216"
( $at_check_trace; pspp -O format=csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Binomial Test
,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (2-tailed)
x,Group1,1,10,.500,.500,1.000
,Group2,2,10,.500,,
,Total,,20,1.000,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:216"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_545
#AT_START_546
at_fn_group_banner 546 'npar.at:225' \
"NPAR TESTS BINOMIAL, P = 0.5; N1/N2 = 1 Cutpoint" "" 78
at_xfail=no
(
$as_echo "546. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
SET FORMAT F8.3.
DATA LIST LIST NOTABLE /x * w *.
BEGIN DATA.
9 3
10 7
11 16
END DATA.
WEIGHT BY w.
NPAR TESTS
/BINOMIAL(0.5) = x (10)
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:242: pspp -O format=csv npar.sps"
at_fn_check_prepare_trace "npar.at:242"
( $at_check_trace; pspp -O format=csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Binomial Test
,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (2-tailed)
x,Group1,<= 10,10.000,.385,.500,.327
,Group2,,16.000,.615,,
,Total,,26.000,1.000,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:242"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_546
#AT_START_547
at_fn_group_banner 547 'npar.at:251' \
"NPAR TESTS BINOMIAL, P = 0.5; N1/N2 = 1 Named values" "" 78
at_xfail=no
(
$as_echo "547. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
SET FORMAT F8.3.
DATA LIST LIST NOTABLE /x * w *.
BEGIN DATA.
10 10
15 45
20 13
END DATA.
WEIGHT BY w.
NPAR TESTS
/BINOMIAL(0.5) = x (10, 20)
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:268: pspp -O format=csv npar.sps"
at_fn_check_prepare_trace "npar.at:268"
( $at_check_trace; pspp -O format=csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Binomial Test
,,Category,N,Observed Prop.,Test Prop.,Exact Sig. (2-tailed)
x,Group1,10.000,10.000,.435,.500,.678
,Group2,20.000,13.000,.565,,
,Total,,23.000,1.000,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:268"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_547
#AT_START_548
at_fn_group_banner 548 'npar.at:280' \
"NPAR TESTS BINOMIAL - crash" " " 78
at_xfail=no
(
$as_echo "548. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >nparX.sps <<'_ATEOF'
data list list /range *.
begin data.
0
1
end data.
* This is invalid syntax
NPAR TEST
/BINOMIAL(0.5) = Range().
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:293: pspp -O format=csv nparX.sps"
at_fn_check_prepare_trace "npar.at:293"
( $at_check_trace; pspp -O format=csv nparX.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/npar.at:293"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_548
#AT_START_549
at_fn_group_banner 549 'npar.at:299' \
"NPAR TESTS CHISQUARE" " " 78
at_xfail=no
(
$as_echo "549. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
DATA LIST NOTABLE LIST /x * y * w *.
BEGIN DATA.
1 2 1
2 1 3
3.1 1 4
3.2 2 1
4 2 2
5 3 1
1 4 2
END DATA.
WEIGHT BY w.
NPAR TESTS
CHISQUARE=x y
.
NPAR TESTS
CHISQUARE=y
/EXPECTED=3 4 5 4
.
NPAR TESTS
CHISQUARE=x y(2, 4)
/EXPECTED = 6 10 3
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:329: pspp -O format=csv npar.sps"
at_fn_check_prepare_trace "npar.at:329"
( $at_check_trace; pspp -O format=csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: x
,Observed N,Expected N,Residual
1.00,3.00,2.33,.67
2.00,3.00,2.33,.67
3.10,4.00,2.33,1.67
3.20,1.00,2.33,-1.33
4.00,2.00,2.33,-.33
5.00,1.00,2.33,-1.33
Total,14.00,,
Table: y
,Observed N,Expected N,Residual
1.00,7.00,3.50,3.50
2.00,4.00,3.50,.50
3.00,1.00,3.50,-2.50
4.00,2.00,3.50,-1.50
Total,14.00,,
Table: Test Statistics
,x,y
Chi-Square,3.14,6.00
df,5,3
Asymp. Sig.,.678,.112
Table: y
,Observed N,Expected N,Residual
1.00,7.00,2.63,4.38
2.00,4.00,3.50,.50
3.00,1.00,4.38,-3.38
4.00,2.00,3.50,-1.50
Total,14.00,,
Table: Test Statistics
,y
Chi-Square,10.61
df,3
Asymp. Sig.,.014
Table: Frequencies
,x,,,,y,,,
,Category,Observed N,Expected N,Residual,Category,Observed N,Expected N,Residual
1,2.00,3.00,3.16,-.16,2.00,4.00,2.21,1.79
2,3.00,5.00,5.26,-.26,3.00,1.00,3.68,-2.68
3,4.00,2.00,1.58,.42,4.00,2.00,1.11,.89
Total,,10.00,,,,7.00,,
Table: Test Statistics
,x,y
Chi-Square,.13,4.13
df,2,2
Asymp. Sig.,.936,.127
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:329"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_549
#AT_START_550
at_fn_group_banner 550 'npar.at:385' \
"NPAR TESTS CHISQUARE expected values missing" " " 78
at_xfail=no
(
$as_echo "550. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
DATA LIST NOTABLE LIST /x * y * w *.
BEGIN DATA.
1 2 1
2 1 3
3.1 1 4
3.2 2 1
4 2 2
5 3 1
1 4 2
END DATA.
WEIGHT BY w.
NPAR TESTS
CHISQUARE=y
/EXPECTED = 3 4 5 4 3 1
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:406: pspp -O format=csv npar.sps"
at_fn_check_prepare_trace "npar.at:406"
( $at_check_trace; pspp -O format=csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"error: CHISQUARE test specified 6 expected values, but 4 distinct values were encountered in variable y.\"
Table: Test Statistics
,y
Chi-Square,.00
df,0
Asymp. Sig.,1.000
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/npar.at:406"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_550
#AT_START_551
at_fn_group_banner 551 'npar.at:418' \
"NPAR TESTS CHISQUARE with DESCRIPTIVES" " " 78
at_xfail=no
(
$as_echo "551. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
DATA LIST NOTABLE LIST /x * y * w * .
BEGIN DATA.
1 2 1
2 1 3
3.1 1 4
3.2 2 1
4 2 2
5 3 1
1 4 2
. 5 1
END DATA.
WEIGHT BY w.
MISSING VALUES x (4).
NPAR TESTS
CHISQUARE=x y(-2,5)
/MISSING=ANALYSIS
/STATISTICS=DESCRIPTIVES
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:443: pspp -O format=csv npar.sps"
at_fn_check_prepare_trace "npar.at:443"
( $at_check_trace; pspp -O format=csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Frequencies
,x,,,,y,,,
,Category,Observed N,Expected N,Residual,Category,Observed N,Expected N,Residual
1,-2.00,.00,1.50,-1.50,-2.00,.00,1.88,-1.88
2,-1.00,.00,1.50,-1.50,-1.00,.00,1.88,-1.88
3,.00,.00,1.50,-1.50,.00,.00,1.88,-1.88
4,1.00,3.00,1.50,1.50,1.00,7.00,1.88,5.13
5,2.00,3.00,1.50,1.50,2.00,4.00,1.88,2.13
6,3.00,5.00,1.50,3.50,3.00,1.00,1.88,-.88
7,4.00,.00,1.50,-1.50,4.00,2.00,1.88,.13
8,5.00,1.00,1.50,-.50,5.00,1.00,1.88,-.88
Total,,12.00,,,,15.00,,
Table: Test Statistics
,x,y
Chi-Square,17.33,22.87
df,7,7
Asymp. Sig.,.015,.002
Table: Descriptive Statistics
,N,Mean,Std. Deviation,Minimum,Maximum
,,,,,
x,12.00,2.47,1.19,1.00,5.00
y,15.00,2.07,1.33,1.00,5.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:443"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_551
#AT_START_552
at_fn_group_banner 552 'npar.at:471' \
"NPAR TESTS CHISQUARE, listwise missing" " " 78
at_xfail=no
(
$as_echo "552. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
DATA LIST NOTABLE LIST /x * y * w * .
BEGIN DATA.
1 2 1
2 1 3
3.1 1 4
3.2 2 1
4 2 2
5 3 1
1 4 2
. 5 1
END DATA.
WEIGHT BY w.
* MISSING VALUES x (4).
NPAR TESTS
CHISQUARE=x y(-2,5)
/MISSING=LISTWISE
/STATISTICS=DESCRIPTIVES
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:496: pspp -O format=csv npar.sps"
at_fn_check_prepare_trace "npar.at:496"
( $at_check_trace; pspp -O format=csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Frequencies
,x,,,,y,,,
,Category,Observed N,Expected N,Residual,Category,Observed N,Expected N,Residual
1,-2.00,.00,1.75,-1.75,-2.00,.00,1.75,-1.75
2,-1.00,.00,1.75,-1.75,-1.00,.00,1.75,-1.75
3,.00,.00,1.75,-1.75,.00,.00,1.75,-1.75
4,1.00,3.00,1.75,1.25,1.00,7.00,1.75,5.25
5,2.00,3.00,1.75,1.25,2.00,4.00,1.75,2.25
6,3.00,5.00,1.75,3.25,3.00,1.00,1.75,-.75
7,4.00,2.00,1.75,.25,4.00,2.00,1.75,.25
8,5.00,1.00,1.75,-.75,5.00,.00,1.75,-1.75
Total,,14.00,,,,14.00,,
Table: Test Statistics
,x,y
Chi-Square,13.43,26.00
df,7,7
Asymp. Sig.,.062,.001
Table: Descriptive Statistics
,N,Mean,Std. Deviation,Minimum,Maximum
,,,,,
x,14.00,2.69,1.23,1.00,5.00
y,14.00,1.86,1.10,1.00,4.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:496"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_552
#AT_START_553
at_fn_group_banner 553 'npar.at:524' \
"NPAR TESTS WILCOXON" " " 78
at_xfail=no
(
$as_echo "553. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
data list notable list /foo * bar * w (f8.0).
begin data.
1.00 1.00 1
1.00 2.00 1
2.00 1.00 1
1.00 4.00 1
2.00 5.00 1
1.00 19.00 1
2.00 7.00 1
4.00 5.00 1
1.00 12.00 1
2.00 13.00 1
2.00 2.00 1
12.00 .00 2
12.00 1.00 1
13.00 1.00 1
end data
variable labels foo "first" bar "second".
weight by w.
npar test
/wilcoxon=foo with bar (paired)
/missing analysis
/method=exact.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:554: pspp -O format=csv npar.sps"
at_fn_check_prepare_trace "npar.at:554"
( $at_check_trace; pspp -O format=csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Ranks
,,N,Mean Rank,Sum of Ranks
first - second,Negative Ranks,8,6.00,48.00
,Positive Ranks,5,8.60,43.00
,Ties,2,,
,Total,15,,
Table: Test Statistics
,first - second
Z,-.18
Asymp. Sig. (2-tailed),.861
Exact Sig. (2-tailed),.893
Exact Sig. (1-tailed),.446
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:554"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_553
#AT_START_554
at_fn_group_banner 554 'npar.at:572' \
"NPAR TESTS WILCOXON with missing values" " " 78
at_xfail=no
(
$as_echo "554. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
data list notable list /foo * bar * dummy *.
begin data.
1.00 1.00 1
1.00 2.00 1
2.00 1.00 1
1.00 4.00 .
2.00 5.00 .
1.00 19.00 .
2.00 7.00 1
4.00 5.00 1
1.00 12.00 1
2.00 13.00 1
2.00 2.00 1
12.00 .00 1
12.00 .00 1
34.2 . 1
12.00 1.00 1
13.00 1.00 1
end data
variable labels foo "first" bar "second".
npar test
/wilcoxon=foo with bar (paired)
/missing analysis
/method=exact.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:603: pspp -O format=csv npar.sps"
at_fn_check_prepare_trace "npar.at:603"
( $at_check_trace; pspp -O format=csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Ranks
,,N,Mean Rank,Sum of Ranks
first - second,Negative Ranks,8,6.00,48.00
,Positive Ranks,5,8.60,43.00
,Ties,2,,
,Total,15,,
Table: Test Statistics
,first - second
Z,-.18
Asymp. Sig. (2-tailed),.861
Exact Sig. (2-tailed),.893
Exact Sig. (1-tailed),.446
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:603"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_554
#AT_START_555
at_fn_group_banner 555 'npar.at:620' \
"NPAR TESTS SIGN" " " 78
at_xfail=no
(
$as_echo "555. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
set format = F9.3.
data list notable list /age * height rank *.
begin data.
10 12 11
12 13 13
13 14 12
12 12 10
9 9 10
10.3 10.2 12
end data.
npar tests
/sign=age height WITH height rank (PAIRED)
/MISSING ANALYSIS
/METHOD=EXACT
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:640: pspp -o pspp.csv npar.sps"
at_fn_check_prepare_trace "npar.at:640"
( $at_check_trace; pspp -o pspp.csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:640"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/npar.at:643: sed -e 's/\\.313\$/.312/' -e 's/^Exact Sig\\. (1-tailed),\\.313/Exact Sig. (1-tailed),.312/' pspp.csv"
at_fn_check_prepare_dynamic "sed -e 's/\\.313$/.312/' -e 's/^Exact Sig\\. (1-tailed),\\.313/Exact Sig. (1-tailed),.312/' pspp.csv" "npar.at:643"
( $at_check_trace; sed -e 's/\.313$/.312/' -e 's/^Exact Sig\. (1-tailed),\.313/Exact Sig. (1-tailed),.312/' pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Frequencies
,,N
age - height,Negative Differences,3
,Positive Differences,1
,Ties,2
,Total,6
height - rank,Negative Differences,2
,Positive Differences,3
,Ties,1
,Total,6
Table: Test Statistics
,age - height,height - rank
Exact Sig. (2-tailed),.625,1.000
Exact Sig. (1-tailed),.312,.500
Point Probability,.250,.312
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:643"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_555
#AT_START_556
at_fn_group_banner 556 'npar.at:664' \
"NPAR Kruskal-Wallis test" " " 78
at_xfail=no
(
$as_echo "556. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >kw-simple.sps <<'_ATEOF'
set format = F9.3.
data list notable list /gv * xscore *.
begin data
1 96
1 128
1 83
2 132
2 135
2 109
3 115
1 61
1 101
2 82
2 124
3 149
3 166
3 147
end data.
value label /gv
1 "timed out"
2 "hit wicket"
3 "handled the ball".
npar tests
/kruskal-wallis xscore by gv (1, 3)
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:698: pspp -o pspp.csv kw-simple.sps"
at_fn_check_prepare_trace "npar.at:698"
( $at_check_trace; pspp -o pspp.csv kw-simple.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:698"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/npar.at:699: cat pspp.csv"
at_fn_check_prepare_trace "npar.at:699"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Ranks
,gv,N,Mean Rank
xscore,timed out,5,4.400
,hit wicket,5,7.400
,handled the ball,4,11.500
,Total,14,
Table: Test Statistics
,,xscore
Chi-Square,,6.406
df,,2
Asymp. Sig.,,.041
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:699"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >kw-missing-group.sps <<'_ATEOF'
set format = F9.3.
data list notable list /gv * xscore *.
begin data
1 96
1 128
1 83
1 61
1 101
2 82
2 124
2 132
2 135
2 109
3 115
3 149
3 166
3 147
2.5 344
end data.
missing values gv (2.5).
value label /gv
1 "timed out"
2 "hit wicket"
3 "handled the ball".
npar tests
/kruskal-wallis xscore by gv (1, 3)
/missing=exclude
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:751: pspp -o pspp2.csv kw-missing-group.sps"
at_fn_check_prepare_trace "npar.at:751"
( $at_check_trace; pspp -o pspp2.csv kw-missing-group.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:751"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/npar.at:754: diff pspp.csv pspp2.csv"
at_fn_check_prepare_trace "npar.at:754"
( $at_check_trace; diff pspp.csv pspp2.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:754"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_556
#AT_START_557
at_fn_group_banner 557 'npar.at:759' \
"NPAR Kruskal-Wallis multiple-variables" " " 78
at_xfail=no
(
$as_echo "557. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >kw-multi.sps <<'_ATEOF'
set format = F9.3.
data list notable list /gv * xscore * yscore.
begin data
1 96 .
1 128 .
1 83 .
2 132 132
2 135 135
2 109 109
3 115 115
1 61 .
1 101 .
2 82 82
2 124 124
3 149 149
3 166 166
3 147 147
4 . 96
4 . 128
4 . 83
4 . 61
4 . 101
end data.
value label /gv
1 "timed out"
2 "hit wicket"
3 "handled the ball"
4 "bowled"
5 "lbw"
.
npar tests
/k-w xscore yscore by gv (1, 5)
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:802: pspp -o pspp.csv kw-multi.sps"
at_fn_check_prepare_trace "npar.at:802"
( $at_check_trace; pspp -o pspp.csv kw-multi.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:802"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/npar.at:803: cat pspp.csv"
at_fn_check_prepare_trace "npar.at:803"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Ranks
,gv,N,Mean Rank
xscore,timed out,5,4.400
,hit wicket,5,7.400
,handled the ball,4,11.500
,Total,14,
yscore,hit wicket,5,7.400
,handled the ball,4,11.500
,bowled,5,4.400
,Total,14,
Table: Test Statistics
,,xscore,yscore,
Chi-Square,,6.406,6.406,
df,,2,2,
Asymp. Sig.,,.041,.041,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:803"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_557
#AT_START_558
at_fn_group_banner 558 'npar.at:826' \
"NPAR TESTS Runs" " " 78
at_xfail=no
(
$as_echo "558. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar-runs.sps <<'_ATEOF'
set format F11.4.
data list notable list /score * w *.
begin data
4 6
. 4
4 3
3 20
2 29
1 42
6 18
5 7
6 78
5 10
6 46
5 5
6 17
5 1
6 11
4 2
3 7
2 6
1 10
4 13
3 22
3 11
2 24
1 18
4 4
3 12
2 10
1 25
4 4
3 7
2 3
1 4
4 2
3 3
2 2
1 4
end data.
weight by w.
npar tests
/runs (MEDIAN) = score
/runs (MEAN) = score
/runs (MODE) = score
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:878: pspp -O format=csv npar-runs.sps"
at_fn_check_prepare_trace "npar.at:878"
( $at_check_trace; pspp -O format=csv npar-runs.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Runs Test
,score
Test Value (median),3.0000
Cases < Test Value,177.0000
Cases ≥ Test Value,309.0000
Total Cases,486.0000
Number of Runs,12
Z,-20.9931
Asymp. Sig. (2-tailed),2.000
Table: Runs Test
,score
Test Value (mean),3.6379
Cases < Test Value,259.0000
Cases ≥ Test Value,227.0000
Total Cases,486.0000
Number of Runs,12
Z,-21.0650
Asymp. Sig. (2-tailed),2.000
Table: Runs Test
,score
Test Value (mode),6.0000
Cases < Test Value,316.0000
Cases ≥ Test Value,170.0000
Total Cases,486.0000
Number of Runs,11
Z,-21.0742
Asymp. Sig. (2-tailed),2.000
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:878"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_558
#AT_START_559
at_fn_group_banner 559 'npar.at:914' \
"NPAR TESTS Runs (2)" " " 78
at_xfail=no
(
$as_echo "559. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar-runs.sps <<'_ATEOF'
data list notable free /y.
begin data
1 1 2 1 2 1 1 2 1 1 1 2 1 2
end data.
NPAR TEST /RUNS(1.5) = y.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:923: pspp -O format=csv npar-runs.sps"
at_fn_check_prepare_trace "npar.at:923"
( $at_check_trace; pspp -O format=csv npar-runs.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Runs Test
,y
Test Value,1.50
Cases < Test Value,9
Cases ≥ Test Value,5
Total Cases,14
Number of Runs,10
Z,1.26
Asymp. Sig. (2-tailed),.206
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:923"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_559
#AT_START_560
at_fn_group_banner 560 'npar.at:937' \
"NPAR TESTS Friedman" " " 78
at_xfail=no
(
$as_echo "560. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar-friedman.sps <<'_ATEOF'
set format F15.4.
data list notable list /x * y * z.
begin data
9.5 6.5 8.1
8.0 6.0 6.0
7.0 6.5 4.2
9.5 5.0 7.3
9.0 7.0 6.2
8.5 6.9 6.5
7.5 8.0 6.5
6.0 8.0 3.1
5.0 6.0 4.9
7.5 7.5 6.2
end data.
npar tests
/friedman = x y z.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:958: pspp -O format=csv npar-friedman.sps"
at_fn_check_prepare_trace "npar.at:958"
( $at_check_trace; pspp -O format=csv npar-friedman.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Ranks
,Mean Rank
x,2.6500
y,2.1000
z,1.2500
Table: Test Statistics
N,10
Chi-Square,10.4737
df,2
Asymp. Sig.,.005
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:958"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_560
#AT_START_561
at_fn_group_banner 561 'npar.at:976' \
"NPAR TESTS Mann-Whitney" " " 78
at_xfail=no
(
$as_echo "561. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar-mann-whitney.sps <<'_ATEOF'
SET FORMAT = F11.4
data list notable list /height * sex (f1.0).
begin data.
201 1
84 1
83 1
94 1
88 0
99 0
55 0
69 0
86 1
79 1
91 0
201 0
88 1
85 1
82 1
88 0
75 0
99 0
81 0
72 1
89 1
92 1
80 0
82 0
76 0
65 0
85 0
76 1
145 1
24 1
end data.
NPAR TESTS
/M-W = height BY sex (0,1).
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:1018: pspp -O format=csv npar-mann-whitney.sps"
at_fn_check_prepare_trace "npar.at:1018"
( $at_check_trace; pspp -O format=csv npar-mann-whitney.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Ranks
,N,,,Mean Rank,,Sum of Ranks,
,0,1,Total,0,1,0,1
height,15.0000,15.0000,30.0000,14.5333,16.4667,218.0000,247.0000
Table: Test Statistics
,Mann-Whitney U,Wilcoxon W,Z,Asymp. Sig. (2-tailed)
height,98.0000,218.0000,-.6020,.547
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:1018"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_561
#AT_START_562
at_fn_group_banner 562 'npar.at:1033' \
"NPAR TESTS Cochran" " " 78
at_xfail=no
(
$as_echo "562. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar-cochran.sps <<'_ATEOF'
set format f11.3.
data list notable list /v1 * v2 * v3 * v4 * v5 * v6 * v7 *.
begin data.
2 1 1 2 1 1 2
2 2 2 2 1 1 1
1 1 2 2 1 1 2
2 2 2 2 1 1 2
2 1 2 1 1 2 1
1 2 2 1 1 1 1
1 2 2 2 2 2 2
2 2 1 2 1 1 1
1 2 1 2 1 1 2
end data.
npar tests
/cochran = v1 to v7 .
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:1055: pspp -o pspp.csv npar-cochran.sps"
at_fn_check_prepare_trace "npar.at:1055"
( $at_check_trace; pspp -o pspp.csv npar-cochran.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:1055"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/npar.at:1057: cat pspp.csv"
at_fn_check_prepare_trace "npar.at:1057"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Frequencies
,Value,
,Success (2),Failure (1)
v1,5,4
v2,6,3
v3,6,3
v4,7,2
v5,1,8
v6,2,7
v7,5,4
Table: Test Statistics
N,9
Cochran's Q,12.735
df,6
Asymp. Sig.,.047
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:1057"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_562
#AT_START_563
at_fn_group_banner 563 'npar.at:1080' \
"NPAR TESTS Kendall" " " 78
at_xfail=no
(
$as_echo "563. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar-kendall.sps <<'_ATEOF'
SET FORMAT F14.3.
data list notable list /v1 * v2 * v3
begin data.
7 7 2
5 6 5
8 6 4
5 7 4
5 4 4
8 6 5
6 3 5
7 6 5
8 5 5
. 2 2
5 4 5
3 4 4
5 1 2
5 2 1
7 6 5
6 3 4
6 6 6
5 4 5
4 3 4
9 1 1
6 2 1
3 7 8
6 3 4
4 4 4
5 4 3
6 5 2
4 4 8
4 6 4
6 5 5
7 8 6
5 3 5
end data.
npar tests
/kendall = all
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:1124: pspp -o pspp.csv npar-kendall.sps"
at_fn_check_prepare_trace "npar.at:1124"
( $at_check_trace; pspp -o pspp.csv npar-kendall.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:1124"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/npar.at:1126: cat pspp.csv"
at_fn_check_prepare_trace "npar.at:1126"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Ranks
,Mean Rank
v1,2.500
v2,1.817
v3,1.683
Table: Test Statistics
N,30
Kendall's W,.233
Chi-Square,13.960
df,2
Asymp. Sig.,.001
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:1126"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_563
#AT_START_564
at_fn_group_banner 564 'npar.at:1145' \
"NPAR TESTS McNemar" " " 78
at_xfail=no
(
$as_echo "564. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >mcnemar.sps <<'_ATEOF'
set format = F12.3.
data list notable list /v1 * v2 * junk *.
begin data.
0 0 0
0 0 0
0 0 0
0 0 0
0 1 0
0 1 0
0 1 0
0 1 0
0 1 1
0 1 1
0 1 1
0 1 1
0 1 1
1 0 1
1 0 1
1 1 1
1 1 1
1 1 0
1 1 0
1 1 1
end data.
npar tests
/mcnemar = v1 WITH v2 junk.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:1177: pspp -O format=csv mcnemar.sps"
at_fn_check_prepare_trace "npar.at:1177"
( $at_check_trace; pspp -O format=csv mcnemar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: v1 & v2
v1,v2,
,.000,1.000
.000,4,9
1.000,2,5
Table: v1 & junk
v1,junk,
,.000,1.000
.000,8,5
1.000,2,5
Table: Test Statistics
,N,Exact Sig. (2-tailed),Exact Sig. (1-tailed),Point Probability
v1 & v2,20,.065,.033,.027
v1 & junk,20,.453,.227,.164
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:1177"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_564
#AT_START_565
at_fn_group_banner 565 'npar.at:1199' \
"NPAR TESTS Kolmogorov-Smirnov Uniform parameters given" "" 78
at_xfail=no
(
$as_echo "565. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >ks-uniform.sps <<'_ATEOF'
set format F12.3.
data list notable list /x *.
begin data
.554
.382
.329
.480
.711
.503
.203
.477
.621
.581
end data.
npar tests k-s (uniform 0 1) = x.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:1220: pspp -O format=csv ks-uniform.sps"
at_fn_check_prepare_trace "npar.at:1220"
( $at_check_trace; pspp -O format=csv ks-uniform.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: One-Sample Kolmogorov-Smirnov Test
,,x
N,,10
Uniform Parameters,Minimum,.000
,Maximum,1.000
Most Extreme Differences,Absolute,.289
,Positive,.289
,Negative,-.229
Kolmogorov-Smirnov Z,,.914
Asymp. Sig. (2-tailed),,.374
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:1220"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_565
#AT_START_566
at_fn_group_banner 566 'npar.at:1236' \
"NPAR TESTS Kolmogorov-Smirnov Normal parameters imputed" "" 78
at_xfail=no
(
$as_echo "566. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >ks-normal.sps <<'_ATEOF'
set format = F12.3.
data list notable list /foo * bar *.
begin data.
65 12.5
59 14.2
43 12.6
57
68
79
51
62
57
73
58
58
68
75
47
70
59
71
52
48 13.0
58 14.1
37 15.0
39 13.1
58 13.2
43 14.5
58 13.5
86 14.0
63 12.5
80 12.8
70
63
53
53
48
49
51
47
81
66
78
65
69
70 12.1
63 12.5
64 12.4
39 13.8
51 13.2
68 14.0
76 12.6
53 12.1
71 13.5
47 13.8
87 14.1
72 12.9
48 12.1
75 12.8
51 13.4
63 13.9
61 12.5
61 12.4
66 12.8
82 12.9
81 13.6
46
52
71
73
58
57
46
58
52 13.5
71 13.2
57 12.8
78 14.1
73 12.1
50 12.6
71
51
51
68
84
64
66
65
52
56
70
68
66
78
65
71
53
81
53
57
64
61
43
56
37
74
66
81
67
80
68
76
70
80
42
74
80
70
60
39
72
69
63
72
63
49
53 13.2
43 13.8
51 12.5
63 12.6
64 12.9
65 13.0
64 12.5
66 12.0
55
62
58
48
67
46
36
61
55
77
74
60
70
69
57
49
63
69
63
76
53
54
42
64
66
61
62
73
73
60
79
40
48
76
60
76
54
69
65
69
51
54
82
end data.
npar tests
/k-s (normal) = foo bar.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:1423: pspp -O format=csv ks-normal.sps"
at_fn_check_prepare_trace "npar.at:1423"
( $at_check_trace; pspp -O format=csv ks-normal.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: One-Sample Kolmogorov-Smirnov Test
,,foo,bar
N,,174,48
Normal Parameters,Mean,62.109,13.108
,Std. Deviation,11.548,.718
Most Extreme Differences,Absolute,.059,.115
,Positive,.055,.115
,Negative,-.059,-.082
Kolmogorov-Smirnov Z,,.785,.795
Asymp. Sig. (2-tailed),,.569,.552
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:1423"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_566
#AT_START_567
at_fn_group_banner 567 'npar.at:1440' \
"NPAR TESTS Median Test (median imputed)" " " 78
at_xfail=no
(
$as_echo "567. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >median1.sps <<'_ATEOF'
set format F12.3.
data list notable list /ignore * animal * years * w *.
begin data
99 1 10 1
99 4 1 1
99 5 11 1
99 5 10 1
99 3 7 1
99 6 10 1
99 0 7 1
99 3 14 1
99 2 3 1
99 1 1 1
99 4 7 1
99 5 12 1
99 3 6 1
99 4 1 1
99 3 5 1
99 5 7 1
99 4 6 1
99 3 14 1
99 4 8 1
99 5 13 1
99 2 0 1
99 4 7 1
99 4 7 1
99 1 0 1
99 2 8 1
99 4 10 1
99 2 3 1
99 2 0 1
99 4 8 1
99 1 8 1
end data.
variable label years 'Years expected'.
variable label animal 'Animal Genus'.
add value labels animal 1 'Animal 1' 2 'Animal 2' 3 'Animal 3' 4 'Animal 4' 5 'Animal 5'.
npar tests
/median = years by animal (1, 5)
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:1490: pspp -O format=csv median1.sps"
at_fn_check_prepare_trace "npar.at:1490"
( $at_check_trace; pspp -O format=csv median1.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Frequencies
,,Animal Genus,,,,
,,Animal 1,Animal 2,Animal 3,Animal 4,Animal 5
Years expected,> Median,2,1,2,3,4
,≤ Median,2,4,3,6,1
Table: Test Statistics
,N,Median,Chi-Square,df,Asymp. Sig.
Years expected,28,7.000,4.317,4,.365
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:1490"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_567
#AT_START_568
at_fn_group_banner 568 'npar.at:1505' \
"NPAR TESTS Median Test (median given)" " " 78
at_xfail=no
(
$as_echo "568. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >median2.sps <<'_ATEOF'
set format F12.3.
data list notable list /ignore * animal * years * w *.
begin data
99 1 10 1
99 4 1 1
99 5 11 1
99 5 10 1
99 3 7 1
99 3 14 1
99 2 3 1
99 1 1 1
99 4 7 1
99 5 12 1
99 3 6 1
99 4 1 1
99 3 5 1
99 5 7 1
99 4 6 1
99 3 14 1
99 4 8 1
99 5 13 1
99 2 0 1
99 4 7 1
99 4 7 1
99 1 0 1
99 2 8 1
99 4 10 1
99 2 3 1
99 2 0 1
99 4 8 1
99 1 8 1
end data.
variable label years 'Years expected'.
variable label animal 'Animal Genus'.
add value labels animal 1 'Animal 1' 2 'Animal 2' 3 'Animal 3' 4 'Animal 4' 5 'Animal 5'.
npar tests
/median (7) = years by animal (1, 5)
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:1553: pspp -O format=csv median2.sps"
at_fn_check_prepare_trace "npar.at:1553"
( $at_check_trace; pspp -O format=csv median2.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Frequencies
,,Animal Genus,,,,
,,Animal 1,Animal 2,Animal 3,Animal 4,Animal 5
Years expected,> Median,2,1,2,3,4
,≤ Median,2,4,3,6,1
Table: Test Statistics
,N,Median,Chi-Square,df,Asymp. Sig.
Years expected,28,7.000,4.317,4,.365
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:1553"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_568
#AT_START_569
at_fn_group_banner 569 'npar.at:1568' \
"NPAR TESTS Median Test (two sample)" " " 78
at_xfail=no
(
$as_echo "569. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >median3.sps <<'_ATEOF'
set format F12.3.
data list notable list /xx * animal * years * w *.
begin data
99 1 10 1
99 4 1 1
99 5 11 1
99 5 10 1
99 3 7 1
99 3 14 1
99 2 3 1
99 1 1 1
99 4 7 1
99 5 12 1
99 3 6 1
99 4 1 1
99 3 5 1
99 5 7 1
99 4 6 1
99 3 14 1
99 4 8 1
99 5 13 1
99 2 0 1
99 4 7 1
99 4 7 1
99 1 0 1
99 2 8 1
99 4 10 1
99 2 3 1
99 2 0 1
99 4 8 1
99 1 8 1
end data.
variable label years 'Years expected'.
variable label animal 'Animal Genus'.
add value labels animal 1 'Animal 1' 2 'Animal 2' 3 'Animal 3' 4 'Animal 4' 5 'Animal 5'.
npar tests
/median (7) = xx years by animal (5, 1)
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:1616: pspp -O format=csv median3.sps"
at_fn_check_prepare_trace "npar.at:1616"
( $at_check_trace; pspp -O format=csv median3.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Frequencies
,,Animal Genus,
,,Animal 1,Animal 5
xx,> Median,4,5
,≤ Median,0,0
Years expected,> Median,2,4
,≤ Median,2,1
Table: Test Statistics
,N,Median,Chi-Square,df,Asymp. Sig.
xx,9,7.000,NaN,1,NaN
Years expected,9,7.000,.900,1,.343
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:1616"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_569
#AT_START_570
at_fn_group_banner 570 'npar.at:1634' \
"NPAR TESTS Jonckheere-Terpstra" " " 78
at_xfail=no
(
$as_echo "570. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >jt.sps <<'_ATEOF'
set format = F12.3.
data list notable list /x * g * w *.
begin data.
52 2 2
58 2 1
60 2 1
62 2 1
58 0 1
44 2 1
46 2 1
14 3 1
32 2 1
16 3 1
56 2 1
26 3 1
40 3 2
50 4 1
6 5 1
34 2 3
36 2 2
40 2 2
50 2 1
end data.
weight by w.
npar test /jonckheere-terpstra = x by g (5, 2).
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:1667: pspp -O format=csv jt.sps"
at_fn_check_prepare_trace "npar.at:1667"
( $at_check_trace; pspp -O format=csv jt.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Jonckheere-Terpstra Test
,Number of levels in g,N,Observed J-T Statistic,Mean J-T Statistic,Std. Deviation of J-T Statistic,Std. J-T Statistic,Asymp. Sig. (2-tailed)
x,4,24.000,29.500,65.000,15.902,-2.232,.026
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:1667"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_570
#AT_START_571
at_fn_group_banner 571 'npar.at:1677' \
"NPAR TESTS (PAIRED)" " " 78
at_xfail=no
(
$as_echo "571. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
set format = F12.3.
data list notable list /a * b * c *.
begin data.
1 2 4
4 5 3
1 2 2
4 5 1
end data.
npar tests /wilcoxon a b with c c (paired).
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:1691: pspp -O format=csv npar.sps"
at_fn_check_prepare_trace "npar.at:1691"
( $at_check_trace; pspp -O format=csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Ranks
,,N,Mean Rank,Sum of Ranks
a - c,Negative Ranks,2,2.500,5.000
,Positive Ranks,2,2.500,5.000
,Ties,0,,
,Total,4,,
b - c,Negative Ranks,1,1.500,1.500
,Positive Ranks,2,2.250,4.500
,Ties,1,,
,Total,4,,
Table: Test Statistics
,a - c,b - c
Z,.000,-.816
Asymp. Sig. (2-tailed),1.000,.414
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/npar.at:1691"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_571
#AT_START_572
at_fn_group_banner 572 'npar.at:1714' \
"NPAR TESTS CHISQUARE crash" " " 78
at_xfail=no
(
$as_echo "572. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >npar.sps <<'_ATEOF'
data list list /x *.
begin data.
1
2
3
4
5
6
7
8
9
10
end data.
* This happens to be invalid syntax. But should not crash.
NPAR TEST
/CHISQUARE= x(0.098, 99.098)
/EXPECTED = 1.2.
_ATEOF
{ set +x
$as_echo "$at_srcdir/npar.at:1738: pspp -O format=csv npar.sps"
at_fn_check_prepare_trace "npar.at:1738"
( $at_check_trace; pspp -O format=csv npar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/npar.at:1738"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_572
#AT_START_573
at_fn_group_banner 573 'oneway.at:3' \
"ONEWAY basic operation" " " 79
at_xfail=no
(
$as_echo "573. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >oneway.sps <<'_ATEOF'
DATA LIST NOTABLE LIST /QUALITY * BRAND * .
BEGIN DATA
7 3
4 3
3 1
2 1
1 1
4 2
2 2
3 2
5 3
1 1
4 1
5 2
2 2
3 3
6 3
END DATA
VARIABLE LABELS brand 'Manufacturer'.
VARIABLE LABELS quality 'Breaking Strain'.
VALUE LABELS /brand 1 'Aspeger' 2 'Bloggs' 3 'Charlies'.
ONEWAY
quality BY brand
/STATISTICS descriptives homogeneity
/CONTRAST = -2 1 1
/CONTRAST = 0 -1 1
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/oneway.at:37: pspp -O format=csv oneway.sps"
at_fn_check_prepare_trace "oneway.at:37"
( $at_check_trace; pspp -O format=csv oneway.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Descriptives
,,,,,,95% Confidence Interval for Mean,,,
,,N,Mean,Std. Deviation,Std. Error,Lower Bound,Upper Bound,Minimum,Maximum
Breaking Strain,Aspeger,5,2.20,1.30,.58,.58,3.82,1.00,4.00
,Bloggs,5,3.20,1.30,.58,1.58,4.82,2.00,5.00
,Charlies,5,5.00,1.58,.71,3.04,6.96,3.00,7.00
,Total,15,3.47,1.77,.46,2.49,4.45,1.00,7.00
Table: Test of Homogeneity of Variances
,Levene Statistic,df1,df2,Sig.
Breaking Strain,.09,2,12,.913
Table: ANOVA
,,Sum of Squares,df,Mean Square,F,Sig.
Breaking Strain,Between Groups,20.13,2,10.07,5.12,.025
,Within Groups,23.60,12,1.97,,
,Total,43.73,14,,,
Table: Contrast Coefficients
,,Manufacturer,,
,,Aspeger,Bloggs,Charlies
Contrast,1,-2,1,1
,2,0,-1,1
Table: Contrast Tests
,,Contrast,Value of Contrast,Std. Error,t,df,Sig. (2-tailed)
Breaking Strain,Assume equal variances,1,3.80,1.54,2.47,12,.029
,,2,1.80,.89,2.03,12,.065
,Does not assume equal,1,3.80,1.48,2.56,8.74,.031
,,2,1.80,.92,1.96,7.72,.086
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:37"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_573
#AT_START_574
at_fn_group_banner 574 'oneway.at:72' \
"ONEWAY with splits" " " 79
at_xfail=no
(
$as_echo "574. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >oneway-splits.sps <<'_ATEOF'
DATA LIST NOTABLE LIST /QUALITY * BRAND * S *.
BEGIN DATA
3 1 1
2 1 1
1 1 1
1 1 1
4 1 1
5 2 1
2 2 1
4 2 2
2 2 2
3 2 2
7 3 2
4 3 2
5 3 2
3 3 2
6 3 2
END DATA
VARIABLE LABELS brand 'Manufacturer'.
VARIABLE LABELS quality 'Breaking Strain'.
VALUE LABELS /brand 1 'Aspeger' 2 'Bloggs' 3 'Charlies'.
SPLIT FILE by s.
ONEWAY
quality BY brand
/STATISTICS descriptives homogeneity
/CONTRAST = -2 2
/CONTRAST = -1 1
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/oneway.at:108: pspp -O format=csv oneway-splits.sps"
at_fn_check_prepare_trace "oneway.at:108"
( $at_check_trace; pspp -O format=csv oneway-splits.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Value,Label
S,1.00,
Table: Descriptives
,,,,,,95% Confidence Interval for Mean,,,
,,N,Mean,Std. Deviation,Std. Error,Lower Bound,Upper Bound,Minimum,Maximum
Breaking Strain,Aspeger,5,2.20,1.30,.58,.58,3.82,1.00,4.00
,Bloggs,2,3.50,2.12,1.50,-15.56,22.56,2.00,5.00
,Total,7,2.57,1.51,.57,1.17,3.97,1.00,5.00
Table: Test of Homogeneity of Variances
,Levene Statistic,df1,df2,Sig.
Breaking Strain,1.09,1,5,.345
Table: ANOVA
,,Sum of Squares,df,Mean Square,F,Sig.
Breaking Strain,Between Groups,2.41,1,2.41,1.07,.349
,Within Groups,11.30,5,2.26,,
,Total,13.71,6,,,
Table: Contrast Coefficients
,,Manufacturer,
,,Aspeger,Bloggs
Contrast,1,-2,2
,2,-1,1
Table: Contrast Tests
,,Contrast,Value of Contrast,Std. Error,t,df,Sig. (2-tailed)
Breaking Strain,Assume equal variances,1,2.60,2.52,1.03,5,.349
,,2,1.30,1.26,1.03,5,.349
,Does not assume equal,1,2.60,3.22,.81,1.32,.539
,,2,1.30,1.61,.81,1.32,.539
Variable,Value,Label
S,2.00,
Table: Descriptives
,,,,,,95% Confidence Interval for Mean,,,
,,N,Mean,Std. Deviation,Std. Error,Lower Bound,Upper Bound,Minimum,Maximum
Breaking Strain,Bloggs,3,3.00,1.00,.58,.52,5.48,2.00,4.00
,Charlies,5,5.00,1.58,.71,3.04,6.96,3.00,7.00
,Total,8,4.25,1.67,.59,2.85,5.65,2.00,7.00
Table: Test of Homogeneity of Variances
,Levene Statistic,df1,df2,Sig.
Breaking Strain,.92,1,6,.374
Table: ANOVA
,,Sum of Squares,df,Mean Square,F,Sig.
Breaking Strain,Between Groups,7.50,1,7.50,3.75,.101
,Within Groups,12.00,6,2.00,,
,Total,19.50,7,,,
Table: Contrast Coefficients
,,Manufacturer,
,,Bloggs,Charlies
Contrast,1,-2,2
,2,-1,1
Table: Contrast Tests
,,Contrast,Value of Contrast,Std. Error,t,df,Sig. (2-tailed)
Breaking Strain,Assume equal variances,1,4.00,2.07,1.94,6,.101
,,2,2.00,1.03,1.94,6,.101
,Does not assume equal,1,4.00,1.83,2.19,5.88,.072
,,2,2.00,.91,2.19,5.88,.072
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:108"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_574
#AT_START_575
at_fn_group_banner 575 'oneway.at:179' \
"ONEWAY with missing values" " " 79
at_xfail=no
(
$as_echo "575. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >oneway-missing1.sps <<'_ATEOF'
DATA LIST NOTABLE LIST /v1 * v2 * dep * vn *.
BEGIN DATA
. . 1 4
3 3 1 2
2 2 1 2
1 1 1 2
1 1 1 2
4 4 1 2
5 5 2 2
2 2 2 2
4 4 2 2
2 2 2 2
3 3 2 2
7 7 3 2
4 4 3 2
5 5 3 2
3 3 3 2
6 6 3 2
END DATA
ONEWAY
v1 v2 BY dep
/STATISTICS descriptives homogeneity
/MISSING ANALYSIS
.
_ATEOF
cat >oneway-missing2.sps <<'_ATEOF'
DATA LIST NOTABLE LIST /v1 * v2 * dep * vn * .
BEGIN DATA
4 . 1 2
3 3 1 2
2 2 1 2
1 1 1 2
1 1 1 2
4 4 1 2
5 5 2 2
2 2 2 2
4 4 2 2
2 2 2 2
3 3 2 2
7 7 3 2
4 4 3 2
5 5 3 2
3 3 3 2
6 6 3 2
END DATA
ONEWAY
v1 v2 BY dep
/STATISTICS descriptives homogeneity
/MISSING LISTWISE
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/oneway.at:239: pspp -O format=csv oneway-missing1.sps > first.out"
at_fn_check_prepare_trace "oneway.at:239"
( $at_check_trace; pspp -O format=csv oneway-missing1.sps > first.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:239"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/oneway.at:241: pspp -O format=csv oneway-missing2.sps > second.out"
at_fn_check_prepare_trace "oneway.at:241"
( $at_check_trace; pspp -O format=csv oneway-missing2.sps > second.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:241"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/oneway.at:243: diff first.out second.out"
at_fn_check_prepare_trace "oneway.at:243"
( $at_check_trace; diff first.out second.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:243"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >oneway-missing3.sps <<'_ATEOF'
DATA LIST NOTABLE LIST /v1 * v2 * dep * vn * .
BEGIN DATA
4 2 . 2
3 3 1 2
2 2 1 2
1 1 1 2
1 1 1 2
4 4 1 2
5 5 2 2
2 2 2 2
4 4 2 2
2 2 2 2
3 3 2 2
7 7 3 2
4 4 3 2
5 5 3 4
3 3 3 2
6 6 3 2
END DATA
ONEWAY
v1 v2 BY dep
/STATISTICS descriptives homogeneity
/MISSING ANALYSIS
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/oneway.at:274: pspp -O format=csv oneway-missing3.sps > third.out"
at_fn_check_prepare_trace "oneway.at:274"
( $at_check_trace; pspp -O format=csv oneway-missing3.sps > third.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:274"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/oneway.at:276: diff first.out third.out"
at_fn_check_prepare_trace "oneway.at:276"
( $at_check_trace; diff first.out third.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:276"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_575
#AT_START_576
at_fn_group_banner 576 'oneway.at:284' \
"ONEWAY descriptives subcommand" " " 79
at_xfail=no
(
$as_echo "576. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >oneway-descriptives.sps <<'_ATEOF'
DATA LIST NOTABLE LIST /QUALITY * BRAND * .
BEGIN DATA
13 11
12 11
11 11
11 11
14 11
15 25
12 25
14 25
12 25
13 25
17 301
14 301
15 301
13 301
16 301
END DATA
ONEWAY
quality BY brand
/STATISTICS descriptives
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/oneway.at:313: pspp -O format=csv oneway-descriptives.sps"
at_fn_check_prepare_trace "oneway.at:313"
( $at_check_trace; pspp -O format=csv oneway-descriptives.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Descriptives
,,,,,,95% Confidence Interval for Mean,,,
,,N,Mean,Std. Deviation,Std. Error,Lower Bound,Upper Bound,Minimum,Maximum
QUALITY,11.00,5,12.20,1.30,.58,10.58,13.82,11.00,14.00
,25.00,5,13.20,1.30,.58,11.58,14.82,12.00,15.00
,301.00,5,15.00,1.58,.71,13.04,16.96,13.00,17.00
,Total,15,13.47,1.77,.46,12.49,14.45,11.00,17.00
Table: ANOVA
,,Sum of Squares,df,Mean Square,F,Sig.
QUALITY,Between Groups,20.13,2,10.07,5.12,.025
,Within Groups,23.60,12,1.97,,
,Total,43.73,14,,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:313"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_576
#AT_START_577
at_fn_group_banner 577 'oneway.at:333' \
"ONEWAY homogeneity subcommand" " " 79
at_xfail=no
(
$as_echo "577. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >oneway-homogeneity.sps <<'_ATEOF'
DATA LIST NOTABLE LIST /QUALITY * BRAND * .
BEGIN DATA
13 11
12 11
11 11
11 11
14 11
15 25
12 25
14 25
12 25
13 25
17 301
14 301
15 301
13 301
16 301
END DATA
ONEWAY
quality BY brand
/STATISTICS homogeneity
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/oneway.at:362: pspp -O format=csv oneway-homogeneity.sps"
at_fn_check_prepare_trace "oneway.at:362"
( $at_check_trace; pspp -O format=csv oneway-homogeneity.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Test of Homogeneity of Variances
,Levene Statistic,df1,df2,Sig.
QUALITY,.09,2,12,.913
Table: ANOVA
,,Sum of Squares,df,Mean Square,F,Sig.
QUALITY,Between Groups,20.13,2,10.07,5.12,.025
,Within Groups,23.60,12,1.97,,
,Total,43.73,14,,,
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:362"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_577
#AT_START_578
at_fn_group_banner 578 'oneway.at:378' \
"ONEWAY multiple variables" " " 79
at_xfail=no
(
$as_echo "578. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >multivar.sps <<'_ATEOF'
DATA LIST notable LIST /x * y * z * g *.
begin data.
1 1 0 10
1 1 9 10
9 1 2 10
1 1 3 20
1 1 8 20
1 1 1 20
1 1 2 20
0 1 3 20
1 1 4 30
0 1 5 30
1 1 6 30
0 1 7 30
1 2 8 30
2 2 9 30
1 2 1 30
1 2 0 30
1 2 2 40
8 2 3 40
1 2 4 40
1 2 9 40
9 2 8 40
7 3 7 40
2 3 6 40
3 3 5 40
end data.
ONEWAY x y z by g
/STATISTICS = DESCRIPTIVES HOMOGENEITY
/CONTRAST 3 2 0 -5
/CONTRAST 2 -9 7 0
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/oneway.at:418: pspp -o pspp.csv multivar.sps"
at_fn_check_prepare_trace "oneway.at:418"
( $at_check_trace; pspp -o pspp.csv multivar.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:418"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/oneway.at:421: sed 's/^,Within Groups,3.88/,Within Groups,3.87/' pspp.csv"
at_fn_check_prepare_trace "oneway.at:421"
( $at_check_trace; sed 's/^,Within Groups,3.88/,Within Groups,3.87/' pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Descriptives
,,,,,,95% Confidence Interval for Mean,,,
,,N,Mean,Std. Deviation,Std. Error,Lower Bound,Upper Bound,Minimum,Maximum
x,10.00,3,3.67,4.62,2.67,-7.81,15.14,1.00,9.00
,20.00,5,.80,.45,.20,.24,1.36,.00,1.00
,30.00,8,.88,.64,.23,.34,1.41,.00,2.00
,40.00,8,4.00,3.42,1.21,1.14,6.86,1.00,9.00
,Total,24,2.25,2.83,.58,1.05,3.45,.00,9.00
y,10.00,3,1.00,.00,.00,1.00,1.00,1.00,1.00
,20.00,5,1.00,.00,.00,1.00,1.00,1.00,1.00
,30.00,8,1.50,.53,.19,1.05,1.95,1.00,2.00
,40.00,8,2.38,.52,.18,1.94,2.81,2.00,3.00
,Total,24,1.63,.71,.15,1.32,1.93,1.00,3.00
z,10.00,3,3.67,4.73,2.73,-8.07,15.41,.00,9.00
,20.00,5,3.40,2.70,1.21,.05,6.75,1.00,8.00
,30.00,8,5.00,3.21,1.13,2.32,7.68,.00,9.00
,40.00,8,5.50,2.45,.87,3.45,7.55,2.00,9.00
,Total,24,4.67,2.99,.61,3.40,5.93,.00,9.00
Table: Test of Homogeneity of Variances
,Levene Statistic,df1,df2,Sig.
x,18.76,3,20,.000
y,71.41,3,20,.000
z,.89,3,20,.463
Table: ANOVA
,,Sum of Squares,df,Mean Square,F,Sig.
x,Between Groups,56.16,3,18.72,2.92,.059
,Within Groups,128.34,20,6.42,,
,Total,184.50,23,,,
y,Between Groups,7.75,3,2.58,13.33,.000
,Within Groups,3.87,20,.19,,
,Total,11.63,23,,,
z,Between Groups,17.47,3,5.82,.62,.610
,Within Groups,187.87,20,9.39,,
,Total,205.33,23,,,
Table: Contrast Coefficients
,,g,,,
,,10.00,20.00,30.00,40.00
Contrast,1,3,2,0,-5
,2,2,-9,7,0
Table: Contrast Tests
,,Contrast,Value of Contrast,Std. Error,t,df,Sig. (2-tailed)
x,Assume equal variances,1,-7.40,6.67,1.11,20,.280
,,2,6.26,12.32,.51,20,.617
,Does not assume equal,1,-7.40,10.04,-.74,4.53,.497
,,2,6.26,5.85,1.07,2.87,.366
y,Assume equal variances,1,-6.88,1.16,5.94,20,.000
,,2,3.50,2.14,1.63,20,.118
,Does not assume equal,1,-6.88,.91,-7.51,7.00,.000
,,2,3.50,1.32,2.65,7.00,.033
z,Assume equal variances,1,-9.70,8.07,1.20,20,.243
,,2,11.73,14.91,.79,20,.440
,Does not assume equal,1,-9.70,9.57,-1.01,3.64,.373
,,2,11.73,14.53,.81,9.88,.438
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:421"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_578
#AT_START_579
at_fn_group_banner 579 'oneway.at:486' \
"ONEWAY vs. weights" " " 79
at_xfail=no
(
$as_echo "579. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >oneway-unweighted.sps <<'_ATEOF'
DATA LIST NOTABLE LIST /QUALITY * BRAND * W *.
BEGIN DATA
3 1 1
2 1 1
1 1 1
1 1 1
4 1 1
5 2 1
2 2 1
4 2 1
4 2 1
4 2 1
2 2 1
2 2 1
3 2 1
7 3 1
4 3 1
5 3 1
5 3 1
3 3 1
6 3 1
END DATA.
WEIGHT BY W.
ONEWAY
quality BY brand
/STATISTICS descriptives homogeneity
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/oneway.at:520: pspp -o pspp-unweighted.csv oneway-unweighted.sps"
at_fn_check_prepare_trace "oneway.at:520"
( $at_check_trace; pspp -o pspp-unweighted.csv oneway-unweighted.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:520"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >oneway-weighted.sps <<'_ATEOF'
DATA LIST NOTABLE LIST /QUALITY * BRAND * W *.
BEGIN DATA
3 1 1
2 1 1
1 1 2
4 1 1
5 2 1
2 2 1
4 2 3
2 2 2
3 2 1
7 3 1
4 3 1
5 3 2
3 3 1
6 3 1
END DATA.
WEIGHT BY W.
ONEWAY
quality BY brand
/STATISTICS descriptives homogeneity
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/oneway.at:549: pspp -o pspp-weighted.csv oneway-weighted.sps"
at_fn_check_prepare_trace "oneway.at:549"
( $at_check_trace; pspp -o pspp-weighted.csv oneway-weighted.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:549"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/oneway.at:551: diff pspp-weighted.csv pspp-unweighted.csv"
at_fn_check_prepare_trace "oneway.at:551"
( $at_check_trace; diff pspp-weighted.csv pspp-unweighted.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:551"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_579
#AT_START_580
at_fn_group_banner 580 'oneway.at:557' \
"ONEWAY posthoc LSD and BONFERRONI" " " 79
at_xfail=no
(
$as_echo "580. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >oneway-pig.sps <<'_ATEOF'
SET FORMAT F12.3.
data list notable list /pigmentation * family *.
begin data.
36 1
39 1
43 1
38 1
37 1
46 2
47 2
47 2
47 2
43 2
40 3
50 3
44 3
48 3
50 3
45 4
53 4
56 4
52 4
56 4
end data.
oneway pigmentation by family
/statistics = descriptives
/posthoc = lsd bonferroni alpha (0.05)
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/oneway.at:591: pspp -O format=csv oneway-pig.sps"
at_fn_check_prepare_trace "oneway.at:591"
( $at_check_trace; pspp -O format=csv oneway-pig.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Descriptives
,,,,,,95% Confidence Interval for Mean,,,
,,N,Mean,Std. Deviation,Std. Error,Lower Bound,Upper Bound,Minimum,Maximum
pigmentation,1.000,5,38.600,2.702,1.208,35.245,41.955,36.000,43.000
,2.000,5,46.000,1.732,.775,43.849,48.151,43.000,47.000
,3.000,5,46.400,4.336,1.939,41.016,51.784,40.000,50.000
,4.000,5,52.400,4.506,2.015,46.806,57.994,45.000,56.000
,Total,20,45.850,5.967,1.334,43.057,48.643,36.000,56.000
Table: ANOVA
,,Sum of Squares,df,Mean Square,F,Sig.
pigmentation,Between Groups,478.950,3,159.650,12.927,.000
,Within Groups,197.600,16,12.350,,
,Total,676.550,19,,,
Table: Multiple Comparisons (pigmentation)
,,,Mean Difference,,,95% Confidence Interval,
,(I) family,(J) family,(I - J),Std. Error,Sig.,Lower Bound,Upper Bound
LSD,1.000,2.000,-7.400,2.223,.004,-12.112,-2.688
,,3.000,-7.800,2.223,.003,-12.512,-3.088
,,4.000,-13.800,2.223,.000,-18.512,-9.088
,2.000,1.000,7.400,2.223,.004,2.688,12.112
,,3.000,-.400,2.223,.859,-5.112,4.312
,,4.000,-6.400,2.223,.011,-11.112,-1.688
,3.000,1.000,7.800,2.223,.003,3.088,12.512
,,2.000,.400,2.223,.859,-4.312,5.112
,,4.000,-6.000,2.223,.016,-10.712,-1.288
,4.000,1.000,13.800,2.223,.000,9.088,18.512
,,2.000,6.400,2.223,.011,1.688,11.112
,,3.000,6.000,2.223,.016,1.288,10.712
Bonferroni,1.000,2.000,-7.400,2.223,.025,-14.086,-.714
,,3.000,-7.800,2.223,.017,-14.486,-1.114
,,4.000,-13.800,2.223,.000,-20.486,-7.114
,2.000,1.000,7.400,2.223,.025,.714,14.086
,,3.000,-.400,2.223,1.000,-7.086,6.286
,,4.000,-6.400,2.223,.065,-13.086,.286
,3.000,1.000,7.800,2.223,.017,1.114,14.486
,,2.000,.400,2.223,1.000,-6.286,7.086
,,4.000,-6.000,2.223,.095,-12.686,.686
,4.000,1.000,13.800,2.223,.000,7.114,20.486
,,2.000,6.400,2.223,.065,-.286,13.086
,,3.000,6.000,2.223,.095,-.686,12.686
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:591"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_580
#AT_START_581
at_fn_group_banner 581 'oneway.at:639' \
"ONEWAY posthoc Tukey HSD and Games-Howell" " " 79
at_xfail=no
(
$as_echo "581. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >oneway-tukey.sps <<'_ATEOF'
set format = f11.3.
data list notable list /libido * dose *.
begin data.
3 0
2 0
1 0
1 0
4 0
5 1
2 1
4 1
2 1
3 1
7 2
4 2
5 2
3 2
6 2
end data.
variable label dose 'Dose of Viagra'.
add value labels dose 0 'Placebo' 1 '1 Dose' 2 '2 Doses'.
oneway libido by dose
/posthoc tukey gh.
_ATEOF
{ set +x
$as_echo "$at_srcdir/oneway.at:669: pspp -O format=csv oneway-tukey.sps"
at_fn_check_prepare_trace "oneway.at:669"
( $at_check_trace; pspp -O format=csv oneway-tukey.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: ANOVA
,,Sum of Squares,df,Mean Square,F,Sig.
libido,Between Groups,20.133,2,10.067,5.119,.025
,Within Groups,23.600,12,1.967,,
,Total,43.733,14,,,
Table: Multiple Comparisons (libido)
,,,Mean Difference,,,95% Confidence Interval,
,(I) Dose of Viagra,(J) Dose of Viagra,(I - J),Std. Error,Sig.,Lower Bound,Upper Bound
Tukey HSD,Placebo,1 Dose,-1.000,.887,.516,-3.366,1.366
,,2 Doses,-2.800,.887,.021,-5.166,-.434
,1 Dose,Placebo,1.000,.887,.516,-1.366,3.366
,,2 Doses,-1.800,.887,.147,-4.166,.566
,2 Doses,Placebo,2.800,.887,.021,.434,5.166
,,1 Dose,1.800,.887,.147,-.566,4.166
Games-Howell,Placebo,1 Dose,-1.000,.887,.479,-3.356,1.356
,,2 Doses,-2.800,.887,.039,-5.439,-.161
,1 Dose,Placebo,1.000,.887,.479,-1.356,3.356
,,2 Doses,-1.800,.887,.185,-4.439,.839
,2 Doses,Placebo,2.800,.887,.039,.161,5.439
,,1 Dose,1.800,.887,.185,-.839,4.439
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:669"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_581
#AT_START_582
at_fn_group_banner 582 'oneway.at:695' \
"ONEWAY posthoc Sidak" " " 79
at_xfail=no
(
$as_echo "582. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >oneway-sidak.sps <<'_ATEOF'
SET FORMAT F20.4.
DATA LIST notable LIST /program score.
BEGIN DATA.
1 9
1 12
1 14
1 11
1 13
2 10
2 6
2 9
2 9
2 10
3 12
3 14
3 11
3 13
3 11
4 9
4 8
4 11
4 7
4 8
END DATA.
ONEWAY
score BY program
/MISSING ANALYSIS
/POSTHOC = SIDAK.
_ATEOF
{ set +x
$as_echo "$at_srcdir/oneway.at:729: pspp -O format=csv oneway-sidak.sps"
at_fn_check_prepare_trace "oneway.at:729"
( $at_check_trace; pspp -O format=csv oneway-sidak.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: ANOVA
,,Sum of Squares,df,Mean Square,F,Sig.
score,Between Groups,54.9500,3,18.3167,7.0449,.003
,Within Groups,41.6000,16,2.6000,,
,Total,96.5500,19,,,
Table: Multiple Comparisons (score)
,,,Mean Difference,,,95% Confidence Interval,
,(I) program,(J) program,(I - J),Std. Error,Sig.,Lower Bound,Upper Bound
Šidák,1.0000,2.0000,3.0000,1.0198,.056,-.0575,6.0575
,,3.0000,-.4000,1.0198,.999,-3.4575,2.6575
,,4.0000,3.2000,1.0198,.038,.1425,6.2575
,2.0000,1.0000,-3.0000,1.0198,.056,-6.0575,.0575
,,3.0000,-3.4000,1.0198,.025,-6.4575,-.3425
,,4.0000,.2000,1.0198,1.000,-2.8575,3.2575
,3.0000,1.0000,.4000,1.0198,.999,-2.6575,3.4575
,,2.0000,3.4000,1.0198,.025,.3425,6.4575
,,4.0000,3.6000,1.0198,.017,.5425,6.6575
,4.0000,1.0000,-3.2000,1.0198,.038,-6.2575,-.1425
,,2.0000,-.2000,1.0198,1.000,-3.2575,2.8575
,,3.0000,-3.6000,1.0198,.017,-6.6575,-.5425
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:729"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_582
#AT_START_583
at_fn_group_banner 583 'oneway.at:755' \
"ONEWAY posthoc Scheffe" " " 79
at_xfail=no
(
$as_echo "583. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >oneway-scheffe.sps <<'_ATEOF'
set format = f11.3.
data list notable list /usage * group *.
begin data.
21.00 1
19.00 1
18.00 1
25.00 1
14.00 1
13.00 1
24.00 1
19.00 1
20.00 1
21.00 1
15.00 2
10.00 2
13.00 2
16.00 2
14.00 2
24.00 2
16.00 2
14.00 2
18.00 2
16.00 2
10.00 3
7.00 3
13.00 3
20.00 3
.00 3
8.00 3
6.00 3
1.00 3
12.00 3
14.00 3
18.00 4
15.00 4
3.00 4
27.00 4
6.00 4
14.00 4
13.00 4
11.00 4
9.00 4
18.00 4
end data.
variable label usage 'Days of Use'.
add value labels group 0 'none' 1 'one' 2 'two' 3 'three' 4 'four'.
oneway usage by group
/posthoc scheffe.
_ATEOF
{ set +x
$as_echo "$at_srcdir/oneway.at:810: pspp -O format=csv oneway-scheffe.sps"
at_fn_check_prepare_trace "oneway.at:810"
( $at_check_trace; pspp -O format=csv oneway-scheffe.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: ANOVA
,,Sum of Squares,df,Mean Square,F,Sig.
Days of Use,Between Groups,555.275,3,185.092,6.663,.001
,Within Groups,1000.100,36,27.781,,
,Total,1555.375,39,,,
Table: Multiple Comparisons (Days of Use)
,,,Mean Difference,,,95% Confidence Interval,
,(I) group,(J) group,(I - J),Std. Error,Sig.,Lower Bound,Upper Bound
Scheffé,one,two,3.800,2.357,.467,-3.112,10.712
,,three,10.300,2.357,.001,3.388,17.212
,,four,6.000,2.357,.110,-.912,12.912
,two,one,-3.800,2.357,.467,-10.712,3.112
,,three,6.500,2.357,.072,-.412,13.412
,,four,2.200,2.357,.832,-4.712,9.112
,three,one,-10.300,2.357,.001,-17.212,-3.388
,,two,-6.500,2.357,.072,-13.412,.412
,,four,-4.300,2.357,.358,-11.212,2.612
,four,one,-6.000,2.357,.110,-12.912,.912
,,two,-2.200,2.357,.832,-9.112,4.712
,,three,4.300,2.357,.358,-2.612,11.212
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:810"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_583
#AT_START_584
at_fn_group_banner 584 'oneway.at:837' \
"ONEWAY bad contrast count" " " 79
at_xfail=no
(
$as_echo "584. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >oneway-bad-contrast.sps <<'_ATEOF'
DATA LIST NOTABLE LIST /height * weight * temperature * sex *.
BEGIN DATA.
1884 88.6 39.97 0
1801 90.9 39.03 0
1801 91.7 38.98 0
1607 56.3 36.26 1
1608 46.3 46.26 1
1607 55.9 37.84 1
1604 56.6 36.81 1
1606 56.1 34.56 1
END DATA.
ONEWAY /VARIABLES= height weight temperature BY sex
/CONTRAST = -1 1
/CONTRAST = -3 3
/CONTRAST = 2 -2 1
/CONTRAST = -9 9
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/oneway.at:861: pspp -O format=csv oneway-bad-contrast.sps"
at_fn_check_prepare_trace "oneway.at:861"
( $at_check_trace; pspp -O format=csv oneway-bad-contrast.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"oneway-bad-contrast.sps:18: warning: ONEWAY: In contrast list 3, the number of coefficients (3) does not equal the number of groups (2). This contrast list will be ignored.\"
Table: ANOVA
,,Sum of Squares,df,Mean Square,F,Sig.
height,Between Groups,92629.63,1,92629.63,120.77,.000
,Within Groups,4601.87,6,766.98,,
,Total,97231.50,7,,,
weight,Between Groups,2451.65,1,2451.65,174.59,.000
,Within Groups,84.25,6,14.04,,
,Total,2535.90,7,,,
temperature,Between Groups,1.80,1,1.80,.13,.733
,Within Groups,84.55,6,14.09,,
,Total,86.36,7,,,
Table: Contrast Coefficients
,,sex,
,,.00,1.00
Contrast,1,-1,1
,2,-3,3
,3,-9,9
Table: Contrast Tests
,,Contrast,Value of Contrast,Std. Error,t,df,Sig. (2-tailed)
height,Assume equal variances,1,-222.27,20.23,10.99,6,.000
,,2,-666.80,60.68,10.99,6,.000
,,3,-2000.40,182.03,10.99,6,.000
,Does not assume equal,1,-222.27,27.67,-8.03,2.00,.015
,,2,-666.80,83.02,-8.03,2.00,.015
,,3,-2000.40,249.07,-8.03,2.00,.015
weight,Assume equal variances,1,-36.16,2.74,13.21,6,.000
,,2,-108.48,8.21,13.21,6,.000
,,3,-325.44,24.63,13.21,6,.000
,Does not assume equal,1,-36.16,2.19,-16.48,5.42,.000
,,2,-108.48,6.58,-16.48,5.42,.000
,,3,-325.44,19.75,-16.48,5.42,.000
temperature,Assume equal variances,1,-.98,2.74,.36,6,.733
,,2,-2.94,8.22,.36,6,.733
,,3,-8.83,24.67,.36,6,.733
,Does not assume equal,1,-.98,2.07,-.47,4.19,.660
,,2,-2.94,6.22,-.47,4.19,.660
,,3,-8.83,18.66,-.47,4.19,.660
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:861"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_584
#AT_START_585
at_fn_group_banner 585 'oneway.at:908' \
"ONEWAY crash on single category independent variable" "" 79
at_xfail=no
(
$as_echo "585. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >crash.sps <<'_ATEOF'
input program.
loop #i = 1 to 10.
compute test = #i.
end case.
end loop.
end file.
end input program.
compute x = 1.
oneway test by x.
_ATEOF
{ set +x
$as_echo "$at_srcdir/oneway.at:923: pspp -O format=csv crash.sps"
at_fn_check_prepare_trace "oneway.at:923"
( $at_check_trace; pspp -O format=csv crash.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:923"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_585
#AT_START_586
at_fn_group_banner 586 'oneway.at:929' \
"ONEWAY crash on missing dependent variable" " " 79
at_xfail=no
(
$as_echo "586. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >crash2.sps <<'_ATEOF'
data list notable list /dv1 * dv2 * y * .
begin data.
2 . 2
1 . 2
1 . 1
2 . 4
3 . 4
4 . 4
5 . 4
end data.
ONEWAY
/VARIABLES= dv1 dv2 BY y
/STATISTICS = DESCRIPTIVES
/POSTHOC = BONFERRONI LSD SCHEFFE SIDAK TUKEY
/MISSING = ANALYSIS
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/oneway.at:950: pspp -O format=csv crash2.sps"
at_fn_check_prepare_trace "oneway.at:950"
( $at_check_trace; pspp -O format=csv crash2.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:950"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_586
#AT_START_587
at_fn_group_banner 587 'oneway.at:957' \
"ONEWAY Games-Howell test with few cases" " " 79
at_xfail=no
(
$as_echo "587. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >crash3.sps <<'_ATEOF'
data list notable list /dv * y * .
begin data.
2 2
1 2
1 1
2 4
3 4
end data.
ONEWAY
/VARIABLES= dv BY y
/POSTHOC = GH
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/oneway.at:974: pspp -O format=csv crash3.sps"
at_fn_check_prepare_trace "oneway.at:974"
( $at_check_trace; pspp -O format=csv crash3.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/oneway.at:974"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_587
#AT_START_588
at_fn_group_banner 588 'quick-cluster.at:3' \
"QUICK CLUSTER with small data set" " " 80
at_xfail=no
(
$as_echo "588. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >quick-cluster.sps <<'_ATEOF'
DATA LIST LIST /x y z.
BEGIN DATA.
22,2930,4099
17,3350,4749
22,2640,3799
20, 3250,4816
15,4080,7827
4,5,4
5,6,5
6,7,6
7,8,7
8,9,8
9,10,9
END DATA.
QUICK CLUSTER x y z
/CRITERIA=CLUSTER(2) MXITER(20).
_ATEOF
{ set +x
$as_echo "$at_srcdir/quick-cluster.at:22: pspp -o pspp.csv quick-cluster.sps"
at_fn_check_prepare_trace "quick-cluster.at:22"
( $at_check_trace; pspp -o pspp.csv quick-cluster.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/quick-cluster.at:22"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/quick-cluster.at:23: cat pspp.csv"
at_fn_check_prepare_trace "quick-cluster.at:23"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
x,F8.0
y,F8.0
z,F8.0
Table: Final Cluster Centers
,Cluster,
,,
,1,2
,,
x,6.50,19.20
y,7.50,3250.00
z,6.50,5058.00
Table: Number of Cases in each Cluster
Cluster,1,6
,2,5
Valid,,11
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/quick-cluster.at:23"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_588
#AT_START_589
at_fn_group_banner 589 'quick-cluster.at:46' \
"QUICK CLUSTER with large data set" " " 80
at_xfail=no
(
$as_echo "589. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >quick-cluster.sps <<'_ATEOF'
input program.
loop #i = 1 to 500000.
compute x = 3.
end case.
end loop.
end file.
end input program.
QUICK CLUSTER x /CRITERIA = CLUSTER(4) MXITER (100).
_ATEOF
{ set +x
$as_echo "$at_srcdir/quick-cluster.at:57: pspp -o pspp.csv quick-cluster.sps"
at_fn_check_prepare_trace "quick-cluster.at:57"
( $at_check_trace; pspp -o pspp.csv quick-cluster.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/quick-cluster.at:57"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/quick-cluster.at:58: cat pspp.csv"
at_fn_check_prepare_trace "quick-cluster.at:58"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Final Cluster Centers
,Cluster,,,
,,,,
,1,2,3,4
,,,,
x,.00,.00,.00,3.00
Table: Number of Cases in each Cluster
Cluster,1,0
,2,0
,3,0
,4,500000
Valid,,500000
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/quick-cluster.at:58"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_589
#AT_START_590
at_fn_group_banner 590 'quick-cluster.at:76' \
"QUICK CLUSTER with weights" " " 80
at_xfail=no
(
$as_echo "590. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >qc-weighted.sps <<'_ATEOF'
input program.
loop #i = 1 to 400.
compute x = mod (#i, 4).
compute w = 5.
end case.
end loop.
loop #i = 1 to 400.
compute x = mod (#i, 4).
compute w = 3.
end case.
end loop.
end file.
end input program.
weight by w.
QUICK CLUSTER x /CRITERIA = CLUSTER(4) MXITER (100).
_ATEOF
{ set +x
$as_echo "$at_srcdir/quick-cluster.at:97: pspp -o pspp-w.csv qc-weighted.sps"
at_fn_check_prepare_trace "quick-cluster.at:97"
( $at_check_trace; pspp -o pspp-w.csv qc-weighted.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/quick-cluster.at:97"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >qc-unweighted.sps <<'_ATEOF'
input program.
loop #i = 1 to 3200.
compute x = mod (#i, 4).
end case.
end loop.
end file.
end input program.
QUICK CLUSTER x /CRITERIA = CLUSTER(4) MXITER (100).
_ATEOF
{ set +x
$as_echo "$at_srcdir/quick-cluster.at:112: pspp -o pspp-unw.csv qc-unweighted.sps"
at_fn_check_prepare_trace "quick-cluster.at:112"
( $at_check_trace; pspp -o pspp-unw.csv qc-unweighted.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/quick-cluster.at:112"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/quick-cluster.at:114: diff pspp-w.csv pspp-unw.csv"
at_fn_check_prepare_trace "quick-cluster.at:114"
( $at_check_trace; diff pspp-w.csv pspp-unw.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/quick-cluster.at:114"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_590
#AT_START_591
at_fn_group_banner 591 'quick-cluster.at:118' \
"QUICK CLUSTER with listwise missing" " " 80
at_xfail=no
(
$as_echo "591. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >quick-miss.sps <<'_ATEOF'
data list notable list /x *.
begin data.
1
1
2
3
4
.
2
end data.
QUICK CLUSTER x /CRITERIA = CLUSTER(4) MXITER (100).
_ATEOF
{ set +x
$as_echo "$at_srcdir/quick-cluster.at:134: pspp -o pspp-m.csv quick-miss.sps"
at_fn_check_prepare_trace "quick-cluster.at:134"
( $at_check_trace; pspp -o pspp-m.csv quick-miss.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/quick-cluster.at:134"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >quick-nmiss.sps <<'_ATEOF'
data list notable list /x *.
begin data.
1
1
2
3
4
2
end data.
QUICK CLUSTER x /CRITERIA = CLUSTER(4) MXITER (100).
_ATEOF
{ set +x
$as_echo "$at_srcdir/quick-cluster.at:150: pspp -o pspp-nm.csv quick-nmiss.sps"
at_fn_check_prepare_trace "quick-cluster.at:150"
( $at_check_trace; pspp -o pspp-nm.csv quick-nmiss.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/quick-cluster.at:150"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/quick-cluster.at:152: diff pspp-m.csv pspp-nm.csv"
at_fn_check_prepare_trace "quick-cluster.at:152"
( $at_check_trace; diff pspp-m.csv pspp-nm.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/quick-cluster.at:152"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_591
#AT_START_592
at_fn_group_banner 592 'quick-cluster.at:157' \
"QUICK CLUSTER with pairwise missing" " " 80
at_xfail=no
(
$as_echo "592. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >quick-s.sps <<'_ATEOF'
data list notable list /x * y *.
begin data.
1 2
1 2.2
1.1 1.9
1 9
1 10
1.3 9.5
0.9 8.9
3.5 2
3.4 3
3.5 2.5
3.1 2.0
3.9 2.5
3.8 2.0
end data.
QUICK CLUSTER x y
/CRITERIA = CLUSTER(3) MXITER (100)
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/quick-cluster.at:181: pspp -O format=csv quick-s.sps | tail -5 > pspp-s.csv"
at_fn_check_prepare_notrace 'a shell pipeline' "quick-cluster.at:181"
( $at_check_trace; pspp -O format=csv quick-s.sps | tail -5 > pspp-s.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/quick-cluster.at:181"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >quick-pw.sps <<'_ATEOF'
data list notable list /x * y *.
begin data.
1 2
1 2.2
1.1 1.9
1 9
1 10
1.3 9.5
0.9 8.9
3.5 2
3.4 3
3.5 2.5
3.1 2.0
3.9 .
3.8 .
end data.
QUICK CLUSTER x y
/CRITERIA = CLUSTER(3) MXITER (100)
/MISSING = PAIRWISE
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/quick-cluster.at:207: pspp -O format=csv quick-pw.sps | tail -5 > pspp-pw.csv"
at_fn_check_prepare_notrace 'a shell pipeline' "quick-cluster.at:207"
( $at_check_trace; pspp -O format=csv quick-pw.sps | tail -5 > pspp-pw.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/quick-cluster.at:207"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/quick-cluster.at:209: diff pspp-s.csv pspp-pw.csv"
at_fn_check_prepare_trace "quick-cluster.at:209"
( $at_check_trace; diff pspp-s.csv pspp-pw.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/quick-cluster.at:209"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_592
#AT_START_593
at_fn_group_banner 593 'quick-cluster.at:216' \
"QUICK CLUSTER crash on bad cluster quantity" " " 80
at_xfail=no
(
$as_echo "593. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >badn.sps <<'_ATEOF'
data list notable list /x * y *.
begin data.
1 2
1 2.2
end data.
QUICK CLUSTER x y
/CRITERIA = CLUSTER(0)
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/quick-cluster.at:229: pspp -O format=csv badn.sps"
at_fn_check_prepare_trace "quick-cluster.at:229"
( $at_check_trace; pspp -O format=csv badn.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/quick-cluster.at:229"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_593
#AT_START_594
at_fn_group_banner 594 'quick-cluster.at:233' \
"QUICK CLUSTER infinite loop on bad command name" "" 80
at_xfail=no
(
$as_echo "594. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >quick-cluster.sps <<'_ATEOF'
data list notable list /x y.
begin data.
1 2
1 2.2
end data.
QUICK CLUSTER x y /UNSUPPORTED.
_ATEOF
{ set +x
$as_echo "$at_srcdir/quick-cluster.at:243: pspp -O format=csv quick-cluster.sps"
at_fn_check_prepare_trace "quick-cluster.at:243"
( $at_check_trace; pspp -O format=csv quick-cluster.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "quick-cluster.sps:7.20-7.30: error: QUICK CLUSTER: Syntax error at \`UNSUPPORTED'.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/quick-cluster.at:243"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_594
#AT_START_595
at_fn_group_banner 595 'rank.at:3' \
"RANK simple case with defaults" " " 81
at_xfail=no
(
$as_echo "595. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >rank.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /x (f8).
BEGIN DATA.
-1
0
1
2
2
4
5
END DATA.
RANK x.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/rank.at:20: pspp -o pspp.csv rank.sps"
at_fn_check_prepare_trace "rank.at:20"
( $at_check_trace; pspp -o pspp.csv rank.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rank.at:20"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/rank.at:21: cat pspp.csv"
at_fn_check_prepare_trace "rank.at:21"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variables Created By RANK
x into Rx(RANK of x)
Table: Data List
x,Rx
-1,1.000
0,2.000
1,3.000
2,4.500
2,4.500
4,6.000
5,7.000
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rank.at:21"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_595
#AT_START_596
at_fn_group_banner 596 'rank.at:43' \
"RANK multiple variables with defaults" " " 81
at_xfail=no
(
$as_echo "596. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >rank.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /x * y * z *.
BEGIN DATA.
1.00 2.00 3.00
4.00 5.00 6.00
END DATA.
RANK ALL.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/rank.at:55: pspp -o pspp.csv rank.sps"
at_fn_check_prepare_trace "rank.at:55"
( $at_check_trace; pspp -o pspp.csv rank.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rank.at:55"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/rank.at:56: cat pspp.csv"
at_fn_check_prepare_trace "rank.at:56"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variables Created By RANK
x into Rx(RANK of x)
y into Ry(RANK of y)
z into Rz(RANK of z)
Table: Data List
x,y,z,Rx,Ry,Rz
1.00,2.00,3.00,1.000,1.000,1.000
4.00,5.00,6.00,2.000,2.000,2.000
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rank.at:56"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_596
#AT_START_597
at_fn_group_banner 597 'rank.at:74' \
"RANK with RANK, RFRACTION, N" " " 81
at_xfail=no
(
$as_echo "597. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >rank.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /a * b *.
BEGIN DATA.
0 24
1 32
2 31
2 32
4 30
5 29
6 1
7 43
8 .
9 45
END DATA.
RANK a b (D)
/PRINT=YES
/RANK
/TIES=HIGH
/RFRACTION
/N INTO count
.
DISPLAY DICTIONARY.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/rank.at:102: pspp -o pspp.csv rank.sps"
at_fn_check_prepare_trace "rank.at:102"
( $at_check_trace; pspp -o pspp.csv rank.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rank.at:102"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/rank.at:103: cat pspp.csv"
at_fn_check_prepare_trace "rank.at:103"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variables Created By RANK
a into Ra(RANK of a)
b into Rb(RANK of b)
a into RFR001(RFRACTION of a)
b into RFR002(RFRACTION of b)
a into count(N of a)
b into Nb(N of b)
Variable,Description,Position
a,Format: F8.2,1
b,Format: F8.2,2
Ra,\"Label: RANK of a
Format: F9.3\",3
RFR001,\"Label: RFRACTION of a
Format: F6.4\",4
count,\"Label: N of a
Format: F6.0\",5
Rb,\"Label: RANK of b
Format: F9.3\",6
RFR002,\"Label: RFRACTION of b
Format: F6.4\",7
Nb,\"Label: N of b
Format: F6.0\",8
Table: Data List
a,b,Ra,RFR001,count,Rb,RFR002,Nb
.00,24.00,10.000,1.0000,10,8.000,.8889,9
1.00,32.00,9.000,.9000,10,4.000,.4444,9
2.00,31.00,8.000,.8000,10,5.000,.5556,9
2.00,32.00,8.000,.8000,10,4.000,.4444,9
4.00,30.00,6.000,.6000,10,6.000,.6667,9
5.00,29.00,5.000,.5000,10,7.000,.7778,9
6.00,1.00,4.000,.4000,10,9.000,1.0000,9
7.00,43.00,3.000,.3000,10,2.000,.2222,9
8.00,. ,2.000,.2000,10,. ,. ,.
9.00,45.00,1.000,.1000,10,1.000,.1111,9
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rank.at:103"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_597
#AT_START_598
at_fn_group_banner 598 'rank.at:151' \
"RANK with SAVAGE, PERCENT, PROPORTION, NTILES" " " 81
at_xfail=no
(
$as_echo "598. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >rank.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /a * b *.
BEGIN DATA.
0 24
1 32
2 31
2 32
4 30
5 29
6 1
7 43
8 8
9 45
END DATA.
RANK a
/PRINT=YES
/TIES=CONDENSE
/SAVAGE
/PERCENT
/PROPORTION
/NTILES(4)
/NORMAL
.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/rank.at:179: pspp -o pspp.csv rank.sps"
at_fn_check_prepare_trace "rank.at:179"
( $at_check_trace; pspp -o pspp.csv rank.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rank.at:179"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/rank.at:180: cat pspp.csv"
at_fn_check_prepare_trace "rank.at:180"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variables Created By RANK
a into Sa(SAVAGE of a)
a into Pa(PERCENT of a)
a into PRO001(PROPORTION of a using BLOM)
a into Na(NTILES of a)
a into NOR001(NORMAL of a using BLOM)
Table: Data List
a,b,Sa,Pa,PRO001,Na,NOR001
.00,24.00,-.9000,10.00,.0610,1,-1.547
1.00,32.00,-.7889,20.00,.1585,1,-1.000
2.00,31.00,-.5925,30.00,.2561,2,-.6554
2.00,32.00,-.5925,30.00,.2561,2,-.6554
4.00,30.00,-.3544,40.00,.3537,2,-.3755
5.00,29.00,-.1544,50.00,.4512,2,-.1226
6.00,1.00,.0956,60.00,.5488,3,.1226
7.00,43.00,.4290,70.00,.6463,3,.3755
8.00,8.00,.9290,80.00,.7439,3,.6554
9.00,45.00,1.9290,90.00,.8415,4,1.0005
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rank.at:180"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_598
#AT_START_599
at_fn_group_banner 599 'rank.at:210' \
"RANK with SPLIT FILE" " " 81
at_xfail=no
(
$as_echo "599. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >rank.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /a * g1 g2 *.
BEGIN DATA.
2 1 2
2 1 2
3 1 2
4 1 2
5 1 2
1 0 2
2 0 2
3 0 2
4 0 2
5 0 2
6 0 2
7 0 2
8 0 2
6 1 2
7 1 2
7 1 2
8 1 2
9 1 1
END DATA.
RANK a (D) BY g2 g1
/PRINT=YES
/TIES=LOW
/MISSING=INCLUDE
/FRACTION=RANKIT
/RANK
/NORMAL
.
SPLIT FILE BY g1.
RANK a (D) BY g2
/PRINT=YES
/TIES=LOW
/MISSING=INCLUDE
/FRACTION=RANKIT
/RANK
/NORMAL
.
SPLIT FILE OFF.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/rank.at:258: pspp -o pspp.csv rank.sps"
at_fn_check_prepare_trace "rank.at:258"
( $at_check_trace; pspp -o pspp.csv rank.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rank.at:258"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/rank.at:259: cat pspp.csv"
at_fn_check_prepare_trace "rank.at:259"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variables Created By RANK
a into Ra(RANK of a BY g2 g1)
a into Na(NORMAL of a using RANKIT BY g2 g1)
Variables Created By RANK
a into RAN001(RANK of a BY g2)
a into NOR001(NORMAL of a using RANKIT BY g2)
Table: Data List
a,g1,g2,Ra,Na,RAN001,NOR001
2.00,1.00,2.00,8.000,.9674,4.000,.5244
2.00,1.00,2.00,8.000,.9674,4.000,.5244
3.00,1.00,2.00,7.000,.5895,3.000,.0000
4.00,1.00,2.00,6.000,.2822,2.000,-.5244
5.00,1.00,2.00,5.000,.0000,1.000,-1.282
1.00,.00,2.00,8.000,1.5341,8.000,1.5341
2.00,.00,2.00,7.000,.8871,7.000,.8871
3.00,.00,2.00,6.000,.4888,6.000,.4888
4.00,.00,2.00,5.000,.1573,5.000,.1573
5.00,.00,2.00,4.000,-.1573,4.000,-.1573
6.00,.00,2.00,3.000,-.4888,3.000,-.4888
7.00,.00,2.00,2.000,-.8871,2.000,-.8871
8.00,.00,2.00,1.000,-1.534,1.000,-1.534
6.00,1.00,2.00,4.000,-.2822,4.000,1.1503
7.00,1.00,2.00,2.000,-.9674,2.000,-.3186
7.00,1.00,2.00,2.000,-.9674,2.000,-.3186
8.00,1.00,2.00,1.000,-1.593,1.000,-1.150
9.00,1.00,1.00,1.000,.0000,1.000,.0000
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rank.at:259"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_599
#AT_START_600
at_fn_group_banner 600 'rank.at:300' \
"RANK with fractional ranks" " " 81
at_xfail=no
(
$as_echo "600. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >rank.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /a * w * .
BEGIN DATA.
1 1.5
2 0.2
3 0.1
4 1
5 1
6 1
7 1
8 1
END DATA.
WEIGHT BY w.
RANK a
/FRACTION=TUKEY
/PROPORTION
/SAVAGE
.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/rank.at:324: pspp -o pspp.csv rank.sps"
at_fn_check_prepare_trace "rank.at:324"
( $at_check_trace; pspp -o pspp.csv rank.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rank.at:324"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/rank.at:325: cat pspp.csv"
at_fn_check_prepare_trace "rank.at:325"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variables Created By RANK
a into Pa(PROPORTION of a using TUKEY)
a into Sa(SAVAGE of a)
Table: Data List
a,w,Pa,Sa
1.00,1.50,.1285,-.8016
2.00,.20,.1776,-.6905
3.00,.10,.1986,-.6905
4.00,1.00,.3458,-.5305
5.00,1.00,.4860,-.2905
6.00,1.00,.6262,.0262
7.00,1.00,.7664,.4929
8.00,1.00,.9065,1.3929
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rank.at:325"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_600
#AT_START_601
at_fn_group_banner 601 'rank.at:347' \
"RANK all-ties due to tiny weights" " " 81
at_xfail=no
(
$as_echo "601. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >rank.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /x * w *.
BEGIN DATA.
1 0.1
2 0.1
3 0.1
4 0.2
5 0.1
6 0.1
7 0.1
8 0.1
END DATA.
WEIGHT BY w.
RANK x
/TIES=low
/RANK into xl.
RANK x
/TIES=high
/RANK into xh.
RANK x
/TIES=condense
/RANK into xc.
* Test VW fraction
RANK x
/FRACTION=VW
/NORMAL.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/rank.at:385: pspp -o pspp.csv rank.sps"
at_fn_check_prepare_trace "rank.at:385"
( $at_check_trace; pspp -o pspp.csv rank.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rank.at:385"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/rank.at:386: cat pspp.csv"
at_fn_check_prepare_trace "rank.at:386"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variables Created By RANK
x into xl(RANK of x)
Variables Created By RANK
x into xh(RANK of x)
Variables Created By RANK
x into xc(RANK of x)
Variables Created By RANK
x into Nx(NORMAL of x using VW)
Table: Data List
x,w,xl,xh,xc,Nx
1.00,.10,.000,.100,1.000,-1.938
2.00,.10,.100,.200,2.000,-1.412
3.00,.10,.200,.300,3.000,-1.119
4.00,.20,.300,.500,4.000,-.8046
5.00,.10,.500,.600,5.000,-.5549
6.00,.10,.600,.700,6.000,-.4067
7.00,.10,.700,.800,7.000,-.2670
8.00,.10,.800,.900,8.000,-.1323
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rank.at:386"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_601
#AT_START_602
at_fn_group_banner 602 'rank.at:424' \
"RANK and TEMPORARY" " " 81
at_xfail=no
(
$as_echo "602. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >rank.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /age (f2) gender (a1).
BEGIN DATA.
44 m
32 f
43 m
49 m
33 f
35 f
29 f
50 m
42 m
33 f
48 m
END DATA.
TEMPORARY.
SELECT IF gender = 'm'.
RANK age /RANK INTO Rm.
TEMPORARY.
SELECT IF gender = 'f'.
RANK age /RANK INTO Rf.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/rank.at:451: pspp -O format=csv rank.sps"
at_fn_check_prepare_trace "rank.at:451"
( $at_check_trace; pspp -O format=csv rank.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variables Created By RANK
age into Rm(RANK of age)
Variables Created By RANK
age into Rf(RANK of age)
Table: Data List
age,gender,Rm,Rf
44,m,3.000,.
32,f,. ,2.000
43,m,2.000,.
49,m,5.000,.
33,f,. ,3.500
35,f,. ,5.000
29,f,. ,1.000
50,m,6.000,.
42,m,1.000,.
33,f,. ,3.500
48,m,4.000,.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rank.at:451"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_602
#AT_START_603
at_fn_group_banner 603 'rank.at:480' \
"RANK variable name fallback" " " 81
at_xfail=no
(
$as_echo "603. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >rank.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /foo * rfoo * ran003 *.
BEGIN DATA.
0 3 2
1 3 2
2 3 2
2 3 2
4 3 2
5 3 2
6 3 2
7 3 2
8 3 2
9 3 2
END DATA.
RANK foo.
DISPLAY DICTIONARY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/rank.at:501: pspp -o pspp.csv rank.sps"
at_fn_check_prepare_trace "rank.at:501"
( $at_check_trace; pspp -o pspp.csv rank.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rank.at:501"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/rank.at:502: cat pspp.csv"
at_fn_check_prepare_trace "rank.at:502"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variables Created By RANK
foo into RAN001(RANK of foo)
Variable,Description,Position
foo,Format: F8.2,1
rfoo,Format: F8.2,2
ran003,Format: F8.2,3
RAN001,\"Label: RANK of foo
Format: F9.3\",4
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rank.at:502"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_603
#AT_START_604
at_fn_group_banner 604 'rank.at:518' \
"RANK robust variable name creation" " " 81
at_xfail=no
(
$as_echo "604. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >rank.sps <<'_ATEOF'
DATA LIST LIST notable /x * rx * ran001 TO ran999.
BEGIN DATA.
1
2
3
4
5
6
7
END DATA.
RANK x.
DELETE VAR ran001 TO ran999.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/rank.at:537: pspp -O format=csv rank.sps"
at_fn_check_prepare_trace "rank.at:537"
( $at_check_trace; pspp -O format=csv rank.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"rank.sps:3: warning: Missing value(s) for all variables from rx onward. These will be filled with the system-missing value or blanks, as appropriate.\"
\"rank.sps:4: warning: Missing value(s) for all variables from rx onward. These will be filled with the system-missing value or blanks, as appropriate.\"
\"rank.sps:5: warning: Missing value(s) for all variables from rx onward. These will be filled with the system-missing value or blanks, as appropriate.\"
\"rank.sps:6: warning: Missing value(s) for all variables from rx onward. These will be filled with the system-missing value or blanks, as appropriate.\"
\"rank.sps:7: warning: Missing value(s) for all variables from rx onward. These will be filled with the system-missing value or blanks, as appropriate.\"
\"rank.sps:8: warning: Missing value(s) for all variables from rx onward. These will be filled with the system-missing value or blanks, as appropriate.\"
\"rank.sps:9: warning: Missing value(s) for all variables from rx onward. These will be filled with the system-missing value or blanks, as appropriate.\"
Variables Created By RANK
x into RNKRA01(RANK of x)
Table: Data List
x,rx,RNKRA01
1.00,. ,1.000
2.00,. ,2.000
3.00,. ,3.000
4.00,. ,4.000
5.00,. ,5.000
6.00,. ,6.000
7.00,. ,7.000
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/rank.at:537"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_604
#AT_START_605
at_fn_group_banner 605 'rank.at:571' \
"RANK handling of invalid input" " " 81
at_xfail=no
(
$as_echo "605. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >rank.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /x * a (a2).
BEGIN DATA.
-1 s
0 s
1 s
2 s
2 s
4 s
5 s
END DATA.
DEBUG XFORM FAIL.
RANK x.
_ATEOF
{ set +x
$as_echo "$at_srcdir/rank.at:588: pspp -O format=csv --testing-mode rank.sps"
at_fn_check_prepare_trace "rank.at:588"
( $at_check_trace; pspp -O format=csv --testing-mode rank.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variables Created By RANK
x into Rx(RANK of x)
rank.sps:14: error: RANK: DEBUG XFORM FAIL transformation executed
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/rank.at:588"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_605
#AT_START_606
at_fn_group_banner 606 'rank.at:599' \
"RANK handling of invalid syntax" " " 81
at_xfail=no
(
$as_echo "606. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >rank.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /x * a (a2).
BEGIN DATA.
-1 s
0 s
1 s
2 s
2 s
4 s
5 s
END DATA.
* invalid NTILES (no parameter)
RANK x
/NTILES
.
* invalid NTILES (not an integer)
RANK x
/NTILES(d)
.
* destination variable already exists
RANK x
/RANK INTO x.
* Too many variables in INTO
RANK x
/RANK INTO foo bar wiz.
_ATEOF
{ set +x
$as_echo "$at_srcdir/rank.at:632: pspp -O format=csv rank.sps"
at_fn_check_prepare_trace "rank.at:632"
( $at_check_trace; pspp -O format=csv rank.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "rank.sps:15.1: error: RANK: Syntax error at end of command: expecting \`('.
rank.sps:19.11: error: RANK: Syntax error at \`d': expecting integer.
rank.sps:25: error: RANK: Variable x already exists.
rank.sps:30: error: RANK: Too many variables in INTO clause.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/rank.at:632"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_606
#AT_START_607
at_fn_group_banner 607 'regression.at:3' \
"LINEAR REGRESSION - basic" " " 82
at_xfail=no
(
$as_echo "607. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >regression.sps <<'_ATEOF'
set format = F22.3.
data list notable list / v0 to v2.
begin data
0.65377128 7.735648 -23.97588
-0.13087553 6.142625 -19.63854
0.34880368 7.651430 -25.26557
0.69249021 6.125125 -16.57090
-0.07368178 8.245789 -25.80001
-0.34404919 6.031540 -17.56743
0.75981559 9.832291 -28.35977
-0.46958313 5.343832 -16.79548
-0.06108490 8.838262 -29.25689
0.56154863 6.200189 -18.58219
end data
regression /variables=v0 v1 v2 /statistics defaults /dependent=v2 /method=enter /save=pred resid.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/regression.at:23: pspp -O format=csv regression.sps"
at_fn_check_prepare_trace "regression.at:23"
( $at_check_trace; pspp -O format=csv regression.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Model Summary (v2)
,R,R Square,Adjusted R Square,Std. Error of the Estimate
,.971,.942,.925,1.337
Table: ANOVA (v2)
,,Sum of Squares,df,Mean Square,F,Sig.
,Regression,202.753,2,101.376,56.754,.000
,Residual,12.504,7,1.786,,
,Total,215.256,9,,,
Table: Coefficients (v2)
,,Unstandardized Coefficients,,Standardized Coefficients,,
,,B,Std. Error,Beta,t,Sig.
,(Constant),2.191,2.357,.000,.930,.380
,v0,1.813,1.053,.171,1.722,.129
,v1,-3.427,.332,-1.026,-10.334,.000
Table: Data List
v0,v1,v2,RES1,PRED1
.654,7.736,-23.976,-.84,-23.13
-.131,6.143,-19.639,-.54,-19.10
.349,7.651,-25.266,-1.87,-23.40
.692,6.125,-16.571,.97,-17.54
-.074,8.246,-25.800,.40,-26.20
-.344,6.032,-17.567,1.53,-19.10
.760,9.832,-28.360,1.77,-30.13
-.470,5.344,-16.795,.18,-16.97
-.061,8.838,-29.257,-1.05,-28.21
.562,6.200,-18.582,-.54,-18.04
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/regression.at:23"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_607
#AT_START_608
at_fn_group_banner 608 'regression.at:57' \
"LINEAR REGRESSION - one save" " " 82
at_xfail=no
(
$as_echo "608. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >regression.sps <<'_ATEOF'
set format = F22.3.
data list notable list / v0 to v2.
begin data
0.65377128 7.735648 -23.97588
-0.13087553 6.142625 -19.63854
0.34880368 7.651430 -25.26557
0.69249021 6.125125 -16.57090
-0.07368178 8.245789 -25.80001
-0.34404919 6.031540 -17.56743
0.75981559 9.832291 -28.35977
-0.46958313 5.343832 -16.79548
-0.06108490 8.838262 -29.25689
0.56154863 6.200189 -18.58219
end data
regression /variables=v0 v1 v2 /statistics defaults /dependent=v2 /method=enter /save=resid.
regression /variables=v0 v1 v2 /statistics defaults /dependent=v2 /method=enter /save=pred.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/regression.at:78: pspp -O format=csv regression.sps"
at_fn_check_prepare_trace "regression.at:78"
( $at_check_trace; pspp -O format=csv regression.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Model Summary (v2)
,R,R Square,Adjusted R Square,Std. Error of the Estimate
,.971,.942,.925,1.337
Table: ANOVA (v2)
,,Sum of Squares,df,Mean Square,F,Sig.
,Regression,202.753,2,101.376,56.754,.000
,Residual,12.504,7,1.786,,
,Total,215.256,9,,,
Table: Coefficients (v2)
,,Unstandardized Coefficients,,Standardized Coefficients,,
,,B,Std. Error,Beta,t,Sig.
,(Constant),2.191,2.357,.000,.930,.380
,v0,1.813,1.053,.171,1.722,.129
,v1,-3.427,.332,-1.026,-10.334,.000
Table: Model Summary (v2)
,R,R Square,Adjusted R Square,Std. Error of the Estimate
,.971,.942,.925,1.337
Table: ANOVA (v2)
,,Sum of Squares,df,Mean Square,F,Sig.
,Regression,202.753,2,101.376,56.754,.000
,Residual,12.504,7,1.786,,
,Total,215.256,9,,,
Table: Coefficients (v2)
,,Unstandardized Coefficients,,Standardized Coefficients,,
,,B,Std. Error,Beta,t,Sig.
,(Constant),2.191,2.357,.000,.930,.380
,v0,1.813,1.053,.171,1.722,.129
,v1,-3.427,.332,-1.026,-10.334,.000
Table: Data List
v0,v1,v2,RES1,PRED1
.654,7.736,-23.976,-.84,-23.13
-.131,6.143,-19.639,-.54,-19.10
.349,7.651,-25.266,-1.87,-23.40
.692,6.125,-16.571,.97,-17.54
-.074,8.246,-25.800,.40,-26.20
-.344,6.032,-17.567,1.53,-19.10
.760,9.832,-28.360,1.77,-30.13
-.470,5.344,-16.795,.18,-16.97
-.061,8.838,-29.257,-1.05,-28.21
.562,6.200,-18.582,-.54,-18.04
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/regression.at:78"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_608
#AT_START_609
at_fn_group_banner 609 'regression.at:130' \
"LINEAR REGRESSION - SAVE vs SPLITS" " " 82
at_xfail=no
(
$as_echo "609. $at_setup_line: testing $at_desc ..."
$at_traceon
# Generate some test data based on a linear model
cat >gen-data.sps <<'_ATEOF'
set seed = 1.
input program.
loop #c = 1 to 20.
compute x0 = rv.normal (0,1).
compute x1 = rv.normal (0,2).
compute err = rv.normal (0,0.1).
compute y = 4 - 2 * x0 + 3 * x1 + err.
compute g = (#c > 10).
end case.
end loop.
end file.
end input program.
print outfile='regdata.txt' /g x0 x1 y err *.
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/regression.at:151: pspp -O format=csv gen-data.sps"
at_fn_check_prepare_trace "regression.at:151"
( $at_check_trace; pspp -O format=csv gen-data.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/regression.at:151"
$at_failed && at_fn_log_failure
$at_traceon; }
# Use our test data to create a predictor and a residual variable
# for G == 0
cat >regression0.sps <<'_ATEOF'
data list notable file='regdata.txt' list /g x0 x1 y err *.
select if (g = 0).
regression
/variables = x0 x1
/dependent = y
/statistics = all
/save = pred resid.
.
print outfile='outdata-g0.txt' /g x0 x1 y err res1 pred1 *.
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/regression.at:172: pspp -O format=csv regression0.sps"
at_fn_check_prepare_trace "regression.at:172"
( $at_check_trace; pspp -O format=csv regression0.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/regression.at:172"
$at_failed && at_fn_log_failure
$at_traceon; }
# Use our test data to create a predictor and a residual variable
# for G == 1
cat >regression1.sps <<'_ATEOF'
data list notable file='regdata.txt' list /g x0 x1 y err *.
select if (g = 1).
regression
/variables = x0 x1
/dependent = y
/statistics = all
/save = pred resid.
.
print outfile='outdata-g1.txt' /g x0 x1 y err res1 pred1 *.
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/regression.at:193: pspp -O format=csv regression1.sps"
at_fn_check_prepare_trace "regression.at:193"
( $at_check_trace; pspp -O format=csv regression1.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/regression.at:193"
$at_failed && at_fn_log_failure
$at_traceon; }
# Use our test data to create a predictor and a residual variable
# The data is split on G
cat >regression-split.sps <<'_ATEOF'
data list notable file='regdata.txt' list /g x0 x1 y err *.
split file by g.
regression
/variables = x0 x1
/dependent = y
/statistics = all
/save = pred resid.
.
print outfile='outdata-split.txt' /g x0 x1 y err res1 pred1 *.
execute.
_ATEOF
{ set +x
$as_echo "$at_srcdir/regression.at:213: pspp -O format=csv regression-split.sps"
at_fn_check_prepare_trace "regression.at:213"
( $at_check_trace; pspp -O format=csv regression-split.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/regression.at:213"
$at_failed && at_fn_log_failure
$at_traceon; }
# The concatenation of G==0 and G==1 should be identical to the SPLIT data
{ set +x
$as_echo "$at_srcdir/regression.at:216: cat outdata-g0.txt outdata-g1.txt | diff outdata-split.txt - "
at_fn_check_prepare_notrace 'a shell pipeline' "regression.at:216"
( $at_check_trace; cat outdata-g0.txt outdata-g1.txt | diff outdata-split.txt -
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/regression.at:216"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_609
#AT_START_610
at_fn_group_banner 610 'regression.at:223' \
"LINEAR REGRESSION multiple dependent variables" " " 82
at_xfail=no
(
$as_echo "610. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >regression.sps <<'_ATEOF'
set seed = 2.
input program.
loop #c = 1 to 200.
compute x0 = rv.normal (0, 1).
compute x1 = rv.normal (0, 2).
compute err = rv.normal (0, 0.8).
compute y = 2 - 1.5 * x0 + 8.4 * x1 + err.
compute ycopy = y.
end case.
end loop.
end file.
end input program.
regression
/variables = x0 x1
/dependent = y ycopy
/statistics = default.
_ATEOF
{ set +x
$as_echo "$at_srcdir/regression.at:244: pspp -O format=csv regression.sps > output"
at_fn_check_prepare_trace "regression.at:244"
( $at_check_trace; pspp -O format=csv regression.sps > output
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/regression.at:244"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/regression.at:246: head -16 output > first"
at_fn_check_prepare_trace "regression.at:246"
( $at_check_trace; head -16 output > first
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/regression.at:246"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/regression.at:247: tail -16 output > second"
at_fn_check_prepare_trace "regression.at:247"
( $at_check_trace; tail -16 output > second
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/regression.at:247"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/regression.at:249: sed -e 's/ycopy/y/g' second | diff first -"
at_fn_check_prepare_notrace 'a shell pipeline' "regression.at:249"
( $at_check_trace; sed -e 's/ycopy/y/g' second | diff first -
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/regression.at:249"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_610
#AT_START_611
at_fn_group_banner 611 'regression.at:255' \
"LINEAR REGRESSION test of QR decomposition" " " 82
at_xfail=no
(
$as_echo "611. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >regression.sps <<'_ATEOF'
data list list / v0 to v1.
begin data
-12.84099361 0.873270778
16.64932538 0.371315664
-1.88061907 0.505503722
-6.20952354 0.734698282
0.33272576 0.891224610
-5.54912717 0.052318165
6.11832417 0.448853404
11.78124974 0.470447593
0.75960353 0.565082303
6.06432768 0.149316743
-2.64919436 0.752532411
-10.32250712 0.798263603
2.06355038 0.469129797
-9.71851742 0.927162270
4.65582553 0.250629262
9.54574474 0.847032310
7.35544368 0.197028541
-2.09609740 0.400584261
10.30101161 0.671546480
-5.24501039 0.929962876
1.73412473 0.758161354
-3.12732732 0.569785505
12.66261501 0.630640223
-2.90956805 0.576067804
4.89649177 0.624483995
13.64613114 0.591089881
14.03198397 0.544587572
2.23566810 0.967898139
5.37367760 0.916246929
9.01346888 0.451702743
0.75378683 0.235544137
-3.47470624 0.742668194
-1.02063266 0.860311687
-2.67132813 0.082460702
23.67661680 0.932553932
7.95061359 0.430161125
2.05300558 0.066331375
-2.01332644 0.163705417
20.00663784 0.587292630
3.06099417 0.161411889
-3.46115358 0.216684625
-6.85287183 0.548714855
-4.27923809 0.630997663
-0.94863395 0.880612945
4.47481747 0.359885215
-12.80962955 0.886070341
9.35753086 0.187176558
2.81002235 0.063035095
0.01532424 0.964327101
0.29867732 0.866408063
-2.89035649 0.812135868
4.17352811 0.608884061
18.15502183 0.920568258
-2.92662792 0.550792959
-6.08090449 0.965036595
-1.09135397 0.862548019
7.02816784 0.042277017
-21.20245068 0.430673493
-8.83397584 0.724976162
-0.89055843 0.017934904
7.03871587 0.308829557
3.84286316 0.685105924
4.50280692 0.447635420
11.39207346 0.875177896
10.86673874 0.518530912
7.09853081 0.588367569
-12.82864915 0.184667098
13.74888760 0.610891139
0.37379146 0.557720134
-9.79020267 0.942839981
0.71574466 0.564570338
-17.56040637 0.182061777
2.52620466 0.306875011
5.37718673 0.366807049
-1.83964300 0.465772898
6.04848363 0.644501799
4.57402403 0.121419591
8.55606848 0.373011464
-8.46827907 0.491176571
-1.77989798 0.734722847
-0.68661121 0.540984182
1.55798880 0.822587656
5.22810831 0.333747878
9.50280477 0.068100934
-3.74521465 0.248537644
1.36045068 0.851827791
4.41604088 0.197207162
-3.72568327 0.726916693
-5.36123334 0.906513529
3.61594583 0.414340595
-10.01952852 0.140372658
25.48681482 0.354309660
-3.34529093 0.090075388
-18.00437582 0.461438059
-5.29782460 0.004362856
2.79608522 0.861294398
-1.64076209 0.345775481
6.82802334 0.137933862
-0.45416818 0.404379208
-1.66868582 0.797685201
-10.02820292 0.075876582
5.68232031 0.404815042
8.25113850 0.769173748
-2.83544237 0.076583474
0.87659945 0.092751009
6.60270870 0.530444351
-12.63924989 0.362099960
-6.24451253 0.641993458
3.53339015 0.461991892
-0.74012232 0.437409755
15.37311996 0.974913038
-8.09464797 0.543308711
-9.61320222 0.221564578
0.21843662 0.856512540
-1.56958954 0.610709221
6.44977372 0.200382138
-13.29136274 0.093222309
6.46257214 0.024135196
-3.82727990 0.601335801
0.43081953 0.268230667
19.06654416 0.219972815
17.02906651 0.996849502
-10.18073139 0.012543080
12.72088788 0.910600764
10.45328185 0.331285901
7.14370922 0.896312020
-2.81754334 0.048741266
6.40217095 0.075796756
-3.18030478 0.666325307
8.64585957 0.120549153
1.37952764 0.899991932
-11.81143886 0.601949630
0.03899706 0.363808260
-10.63828243 0.031092967
-6.66940972 0.246204205
-5.07374962 0.951272057
4.82281566 0.063928187
-21.93693564 0.050972680
-4.54569883 0.225839693
-0.92422779 0.437796785
-1.11683029 0.740215139
16.77765554 0.851072372
9.73614597 0.388180586
14.05345168 0.063760129
1.20512012 0.665964184
8.00307080 0.102447114
8.01252623 0.580929209
-13.54924183 0.438420739
9.87164361 0.970859344
17.63437095 0.250501797
-3.42503574 0.873290220
-2.45873197 0.847756049
17.29212092 0.411683187
1.15496098 0.530658504
-2.14438907 0.592255367
-1.79942021 0.517773009
-1.30677990 0.830860762
1.70233874 0.291826660
-3.05532536 0.801767829
-4.06732625 0.092294501
6.34665476 0.270426235
9.46946411 0.196915311
14.50919907 0.480357167
8.93767237 0.778228613
1.90298854 0.903146151
18.50500507 0.598561307
4.45123027 0.555898218
11.37344114 0.616557707
-12.14693218 0.409187285
18.27198688 0.141619222
-5.75939569 0.056989619
-4.05515382 0.369281201
16.69882098 0.946885257
6.39050536 0.679704228
4.04213339 0.662792380
6.89608366 0.419877433
1.56496633 0.358227958
5.16679947 0.095144366
-3.06280456 0.883265975
2.76279175 0.866571973
1.84969249 0.264869828
21.79840498 0.702650979
1.42450528 0.719308635
0.96797046 0.111937435
18.26840323 0.075621738
13.38288377 0.573399086
2.41101500 0.766238677
3.83866337 0.499888953
-1.56577367 0.695244089
-0.90342790 0.671654151
10.83775583 0.026041124
-9.89767935 0.745297991
11.74840150 0.309144074
1.73069359 0.814063985
-5.27966183 0.591005828
3.33030043 0.559401806
1.31427975 0.520950237
-10.04588558 0.507008362
10.41228345 0.425867272
1.71961097 0.595783108
-17.54904427 0.328788939
-2.23545419 0.223377350
-8.68774333 0.980964240
-3.48048220 0.008877675
-3.69635326 0.090236718
9.76114237 0.769375983
-10.25662038 0.508137553
0.11155446 0.468504431
-8.06824580 0.414098962
3.10031660 0.327130207
-3.33393146 0.756896774
-3.96276749 0.530956360
14.53610268 0.846474699
1.70505918 0.754662464
-1.93495001 0.656650411
5.01974522 0.745337633
13.41249973 0.489362476
11.49288744 0.335924476
12.59019763 0.155560469
-10.17947298 0.677318449
0.05556115 0.655090105
3.82092860 0.051838719
8.23041456 0.918272190
-0.50314649 0.772015826
20.05162157 0.880265258
8.98816884 0.666646668
-6.28312120 0.138534416
3.68589909 0.274559458
0.59699510 0.253180863
-2.74783135 0.983525221
0.32515065 0.839969577
-3.60606166 0.330646732
-0.82037740 0.129591173
6.12444860 0.098536516
10.95671074 0.033546728
-2.84911174 0.720288722
6.04597572 0.577061422
-0.60147150 0.674096868
-5.30458364 0.291468008
2.68044943 0.379853840
0.85986585 0.984214339
-12.77906359 0.882390290
7.21420144 0.550884826
2.31817022 0.231021556
11.60161950 0.888496654
-0.19346228 0.242609713
5.07478120 0.759161318
14.54155003 0.040387654
3.81039636 0.874572741
2.23233049 0.448317248
0.19481869 0.201906051
2.81530451 0.132131690
12.39893259 0.674693704
0.47054642 0.632959494
2.16152913 0.734480632
0.33398836 0.315024718
7.35509037 0.304570986
-2.92336559 0.539062343
5.79622573 0.392393310
-2.37607425 0.403380474
0.04498550 0.756875541
-1.63674414 0.613789514
11.80310547 0.832651469
6.30630243 0.850689403
1.48394652 0.096243229
4.03361865 0.799660045
3.54707273 0.408520520
2.00327040 0.702944912
17.30761707 0.380542812
5.72738968 0.105447516
-13.64604891 0.328506659
8.35976334 0.702173924
-7.41197443 0.134396488
-15.95683040 0.618526462
8.76889573 0.950243069
-1.13482624 0.113477080
-0.60311407 0.090444247
4.95508365 0.612511543
5.36934491 0.979213258
-0.03554882 0.807185690
-11.58131144 0.183341373
4.46809041 0.796330582
12.49741067 0.346860912
8.63824488 0.073684997
0.49990913 0.732519306
12.82688360 0.109400213
13.20375065 0.850369092
-8.41110869 0.177717087
16.31959963 0.727704840
17.59203613 0.235311681
0.32148420 0.842195936
5.43148331 0.670904647
7.14649727 0.028190029
0.25410683 0.421535783
-12.41047826 0.086404379
-10.64180909 0.229659236
-6.40185653 0.876365242
15.63063324 0.667672536
1.94280423 0.799266628
-5.76507450 0.367344192
8.60895533 0.154109357
9.38306751 0.788742770
3.43573528 0.284535277
4.81848966 0.872283177
11.65839314 0.234109111
-5.57884822 0.030363060
-3.94238060 0.325320686
9.38133340 0.201141788
-7.65003459 0.647734396
11.23091019 0.084927159
-6.07705432 0.037273791
7.46380750 0.506897136
7.42034855 0.869351148
-4.43031973 0.231191152
-1.07351537 0.480234836
-1.40653281 0.690620421
-3.82710168 0.990191328
5.04583490 0.543427375
-11.54265099 0.270542185
0.49059479 0.991447248
-1.40871469 0.555998766
3.64241437 0.743840673
-18.30031589 0.357478210
4.27487959 0.770619738
1.28805821 0.654787106
-3.19542768 0.218110139
12.53375654 0.011857644
11.78889419 0.054127726
-5.38392310 0.839309080
16.38024181 0.228801038
-0.59622631 0.134381782
-0.74107258 0.258146632
-12.31429450 0.020524447
-0.79785028 0.968028764
6.39899711 0.038162566
7.42024044 0.716163692
-3.62470664 0.018201813
-2.55049724 0.162446610
-10.79888854 0.683070478
10.18490144 0.546461234
-2.76979044 0.198830067
4.85164813 0.094100357
0.96477200 0.381801756
8.13344336 0.639730450
9.04684412 0.786084368
10.41746272 0.828304181
0.94334368 0.798419831
10.13116556 0.191715972
-4.12728628 0.575178239
-9.59222379 0.876405375
1.64680258 0.391003085
-4.58897613 0.039176486
0.38394379 0.511577564
-4.80428215 0.222785463
0.35363661 0.681658725
-9.63685708 0.183035382
3.54363414 0.766127414
6.89610808 0.967514568
-2.03781105 0.464416752
8.67956196 0.421424078
-1.09959038 0.061231448
7.12587456 0.028601318
-6.93064672 0.402561175
8.57989199 0.925089270
-9.55071810 0.454993099
-8.11914736 0.509644286
-5.41909698 0.077813151
-17.03336572 0.875713545
-1.27438609 0.602163625
3.09834374 0.105599007
-1.59865741 0.439939102
11.82272089 0.754984309
4.30969696 0.483834579
-10.76886192 0.222486992
7.05419803 0.903020271
7.36096847 0.440357053
-2.05864869 0.581170147
-9.08366913 0.318677911
8.57119930 0.605668919
7.87702340 0.570206991
5.22035786 0.542344385
2.37238850 0.595969470
-4.29809941 0.634313781
4.51647479 0.796663089
-0.62478780 0.562099444
8.50866078 0.490014249
3.46694991 0.122890089
-7.31956453 0.885170890
2.20259268 0.167180856
-1.81003626 0.702563515
8.44526939 0.973495019
8.19767069 0.881261264
-5.92422578 0.686557351
-0.11826129 0.712798344
5.66132869 0.922826429
-5.40845018 0.642183516
6.67839036 0.680978989
11.88962825 0.487904896
3.32266332 0.931709581
0.24234019 0.405641313
-12.79023339 0.361005489
-13.57875491 0.266289733
1.81304596 0.775093821
0.36755600 0.400225605
-9.15574205 0.518040748
-3.90436548 0.396869908
9.24764042 0.669374848
0.74869385 0.609881390
-3.62958907 0.928867495
-0.02527232 0.557679930
0.04433418 0.152565816
11.76152632 0.865663501
-4.62181124 0.007000650
5.82271403 0.389678502
0.33289002 0.532940826
-7.65647076 0.681574524
11.81023732 0.107165912
11.42121999 0.989580324
-5.47120641 0.762285550
3.82311561 0.388755074
16.91059711 0.461236022
4.14012105 0.802420151
-1.35278659 0.036646959
-12.81733350 0.179096148
-0.94395134 0.450959878
-5.39002376 0.264783062
4.16227017 0.780743762
7.26179625 0.821382454
15.10062276 0.469253936
1.45877225 0.685434405
-9.87966760 0.767201511
7.03156071 0.195142483
-11.71327419 0.774014869
-4.55518706 0.973103604
-1.75221406 0.175172193
10.35631400 0.080670414
4.97650495 0.597478189
2.25703939 0.585949751
10.72500409 0.339720931
-5.02901029 0.997874377
6.24398637 0.655067479
-5.83880059 0.184948259
2.17256077 0.746741866
-5.59809380 0.277523381
8.19384177 0.334565607
3.35250431 0.952057263
16.20874892 0.901400446
1.63205839 0.235388475
-1.07921163 0.608376332
0.24315118 0.862639830
15.61923078 0.050955422
1.99639207 0.358905687
8.14825538 0.190069662
4.55210835 0.784025901
13.51582298 0.973572910
15.42415796 0.969080992
2.23978124 0.551857514
1.00858991 0.919566804
-2.77293574 0.906998180
7.10750420 0.934792213
-8.01377290 0.682306063
9.67873875 0.239576806
7.54867950 0.065860266
13.85701962 0.733823443
8.48212853 0.285731085
3.55278843 0.998255904
21.94592206 0.205463912
-2.07957143 0.948665109
1.54169997 0.200109744
-11.36934275 0.447122472
3.07094572 0.815147945
6.45818709 0.007849948
1.85594578 0.818796540
-2.43799564 0.962013689
-17.96539549 0.654190963
-0.93433746 0.454930236
-11.06904368 0.898560975
14.89733742 0.479152492
-5.72390675 0.136197255
9.46781102 0.669006610
5.35954546 0.259381138
3.78388994 0.933778797
1.95373423 0.517555994
10.96772341 0.666138826
9.40585102 0.779906833
0.75347502 0.142656741
7.64803672 0.734297119
-0.40051164 0.362230232
10.00747057 0.660820381
-12.86024975 0.072988046
1.43515528 0.229672223
-6.75981709 0.658534537
-5.61355474 0.795897133
-4.40596595 0.038787666
-1.37033650 0.371835229
6.66666573 0.560963737
8.18430044 0.284787698
-0.55742330 0.622783662
-0.39757686 0.673551753
-12.68628005 0.373038561
4.06416215 0.760546238
4.65859855 0.516761886
3.55304076 0.266856843
-7.35294817 0.615783196
1.01222898 0.158266779
9.91052610 0.285619547
-6.42966726 0.573689954
10.97425098 0.985095061
5.79394599 0.404333309
10.09106608 0.441037857
-1.47295537 0.577661077
-2.07959719 0.547176133
-8.76910940 0.498979558
-11.15658312 0.135862745
-0.88456783 0.326480064
9.71607440 0.998076370
-8.76072622 0.386244511
-19.26823092 0.461833959
-0.11280313 0.064155908
0.64625887 0.172078148
-5.35323428 0.331153163
-1.71034509 0.330955888
4.27104744 0.590544244
7.33843789 0.263171531
-5.38121637 0.539675802
-6.87566548 0.127313096
-2.50161298 0.269417630
10.99076986 0.097362729
6.34017269 0.318528587
-4.63672382 0.451038055
-11.55122495 0.987073278
4.78618612 0.297342215
2.97547390 0.197312152
-5.54495280 0.499701114
17.67606173 0.810316588
16.01578815 0.643667608
-0.16258467 0.228284761
7.92123340 0.784289369
-2.26303900 0.270764770
5.84136933 0.437763291
4.96955217 0.389720490
-8.09516710 0.829068548
14.59207207 0.513593803
2.80954688 0.650799867
4.53653552 0.672326278
4.49116737 0.807447691
18.87549709 0.647303378
9.80118464 0.932576117
-13.02124969 0.038651904
-6.15189291 0.697593318
15.81920283 0.249825051
10.81503188 0.152372300
-23.58738366 0.593560367
8.15716338 0.411680007
3.45349379 0.351061414
-6.39345334 0.374926213
8.72924585 0.165759028
22.17948804 0.003736780
-4.73053410 0.582425257
16.88289626 0.484899167
-1.78826142 0.663273340
-0.78106025 0.337039969
-2.92461669 0.810174719
-13.89224399 0.177428986
4.56809819 0.025010350
-1.07452825 0.649632933
0.58148751 0.829606422
12.13329525 0.354819526
17.35605568 0.284862590
-12.43678107 0.827661083
-1.89492796 0.574929572
2.18520382 0.846299917
18.11449649 0.603173531
4.34508582 0.484049042
17.49394569 0.094811656
10.67752350 0.166176400
17.13374502 0.547208197
4.42138123 0.768691494
5.38445574 0.788597361
0.79946671 0.851883720
-4.67547904 0.995621191
-5.61496422 0.523793593
-20.52093126 0.881207308
-8.95996814 0.851078124
-7.63483710 0.739657373
11.02131097 0.678060014
-10.56228517 0.202393048
6.48841788 0.143946271
3.44853632 0.913249620
-0.02080024 0.070765134
2.08654297 0.032468089
8.13415912 0.439470874
11.19028936 0.944954026
0.26670866 0.492724593
-9.33692734 0.982611921
17.23967092 0.313428994
0.36906670 0.660669528
7.89735684 0.977628886
-4.00171487 0.379327632
5.01615432 0.735627296
0.42214214 0.092461754
13.60634772 0.218359635
6.57431413 0.067653525
-1.77668341 0.717799276
5.16227422 0.325502093
-15.29091550 0.332815338
3.33602480 0.594168551
13.80131443 0.817724470
5.92111679 0.947854666
3.59747624 0.330860216
-6.79722403 0.093518715
-1.86606213 0.824179728
17.05226458 0.466573672
10.39712467 0.409067778
-4.78536386 0.891470739
11.92963128 0.719633060
-1.44230992 0.232628002
-12.31860616 0.834134222
2.93439660 0.957842480
14.27963295 0.546264646
2.17488820 0.701170328
10.78772417 0.612332448
-0.47049341 0.378564293
-0.35140634 0.034337429
5.04887868 0.211697132
-3.51562580 0.663243607
-0.82013387 0.602497174
2.78954743 0.325294790
8.67905777 0.820296625
-12.70343389 0.315467361
-2.59373236 0.015571904
-4.60369241 0.293737716
1.58669084 0.671091860
-10.44245103 0.501340276
4.85215578 0.141572007
10.46303284 0.801814632
1.27898298 0.236929983
-1.72225479 0.608500539
20.18685735 0.827124630
3.27308817 0.542065179
1.01596956 0.254672115
-8.88872881 0.460876757
-11.31397349 0.636168639
0.85294367 0.816417328
3.54262337 0.944147626
-10.53603202 0.675775741
4.34832198 0.121988381
11.56451662 0.283063133
-7.36454369 0.500596540
-8.23701113 0.379483261
-8.36081323 0.219730782
-6.39158860 0.739171315
-1.40518544 0.478709398
-4.01314821 0.460476388
-7.34814047 0.406242873
-7.80836711 0.730648091
-0.57729135 0.152336258
4.98352832 0.026424939
-3.78181635 0.453598432
20.16821827 0.845273124
5.20758271 0.573569671
-3.05534245 0.286828574
-5.31306254 0.961990401
1.09307567 0.006478724
-3.75412572 0.598277695
-2.38444245 0.777900122
2.46837742 0.280363751
9.72195519 0.041094463
3.96271247 0.604775284
2.14105354 0.400315328
7.88645912 0.404573389
-4.03565076 0.798377309
10.80180959 0.932152434
-10.89359212 0.446813857
1.43144578 0.310194540
4.79825196 0.504826858
10.73201365 0.384306369
-4.07526187 0.893893643
-2.84330198 0.390202663
5.81825057 0.830581384
-2.77842745 0.382966910
-7.70333673 0.157692966
-3.25753058 0.726303603
8.50032387 0.556524444
2.35027236 0.857076526
-1.70740565 0.194760923
-3.40693880 0.696420946
-8.03983352 0.514393263
-1.85105344 0.609459979
-9.01148029 0.526019631
18.37344635 0.690793045
16.46079416 0.811535334
4.10224315 0.043403618
7.06657672 0.831274577
15.31421824 0.434558881
-12.36760970 0.004215634
1.95473415 0.277788662
-0.93207006 0.368433415
15.39919341 0.843189783
5.23452387 0.626226925
11.40805770 0.002417288
-1.30282837 0.072493756
3.92130690 0.675355182
2.53148399 0.027222295
4.92705318 0.934429364
5.54978818 0.042268708
-2.19608977 0.246743834
-0.62565550 0.858214200
-8.98329365 0.646827226
12.78468146 0.533966352
2.01061290 0.418710227
1.03689579 0.019241741
8.01166696 0.992268130
-4.49786437 0.694127903
-8.15387184 0.066275002
2.22256207 0.083301613
-12.27145086 0.535369809
9.95709112 0.227692557
14.58198717 0.667298058
5.98046083 0.922503625
1.25640725 0.632933575
9.77623752 0.136171032
5.57068426 0.374916651
-10.07048336 0.470411379
3.69267954 0.897278365
2.22185354 0.212539549
7.96155623 0.720525208
-6.21272358 0.771491819
2.63054735 0.474989115
-2.81488890 0.675381020
4.52747191 0.118615879
-3.22975936 0.783991133
11.42834761 0.423344824
0.26512464 0.617515445
-5.84322807 0.210915613
9.61073028 0.988117333
-6.11878012 0.492318959
5.30581443 0.339379499
-6.40132703 0.903540026
1.22921808 0.122161655
8.08547837 0.197296588
-0.77943801 0.935963718
11.43194858 0.828270943
-5.41689395 0.556863468
15.14667847 0.565186375
-5.15327419 0.542802437
-3.95903082 0.643379366
5.78847793 0.391369361
11.54430873 0.158789330
1.90340148 0.841316129
14.69680285 0.532022770
0.68552840 0.367073827
-8.72287967 0.250127491
9.35401445 0.836083158
5.32139524 0.996712598
-14.53387897 0.825434481
-2.93925146 0.513153861
12.54386493 0.713306793
2.04842442 0.993893406
2.87461954 0.049843312
4.89765230 0.376710062
-6.23945314 0.321108142
-3.45840168 0.854710947
9.05807160 0.199992188
3.33815006 0.787302467
4.22244242 0.351841910
15.75879160 0.268699469
2.78549859 0.920299974
-4.46643118 0.727283862
0.48021298 0.428672083
2.55814938 0.130915212
5.00692968 0.062266047
4.78801127 0.325124688
6.39524485 0.693406744
-10.46792584 0.458128441
10.14111908 0.353412759
-10.56424183 0.821588957
7.60967746 0.267669137
-2.34956688 0.434855697
23.82269027 0.802311880
8.37170447 0.445185000
10.05024769 0.778687843
-9.15753018 0.957292819
12.17438228 0.774769426
1.57960028 0.783591989
0.06719501 0.849073924
16.21114558 0.243444943
-3.79808298 0.842994720
8.98927715 0.020537113
7.72362992 0.984168340
11.25158442 0.152385348
-21.23936903 0.909204114
7.34995949 0.987249305
-7.99435203 0.335456401
-2.78218185 0.768517548
11.59547596 0.466617637
15.90870706 0.071892573
5.58160897 0.554485703
16.05253351 0.815206562
-3.23103465 0.280495460
-4.61108636 0.035757819
5.41596511 0.746146856
2.92445613 0.136743821
11.23628254 0.681316365
-12.93714705 0.838791576
9.94668264 0.084457395
-4.56061529 0.983605894
-4.24795688 0.601732731
-2.83740044 0.375102341
-0.43078317 0.403870303
15.19689584 0.114826374
-10.29920266 0.731582141
6.01686515 0.641655876
6.69431335 0.496723697
4.62223602 0.328118236
-1.74309026 0.072604771
14.31971261 0.827101483
-1.86629155 0.613346722
8.30971428 0.274948560
8.50080711 0.059822908
-7.94061422 0.121069240
-2.72096492 0.710791774
3.33259421 0.398621625
1.73248470 0.488581205
9.56008489 0.011104565
12.71499762 0.038568985
4.11512127 0.219846314
-0.96707584 0.822646857
4.98621667 0.633779997
4.69384821 0.295708955
10.16008645 0.778287787
-7.72973800 0.097096969
2.87264210 0.796538177
4.56095440 0.862952770
5.02621658 0.934628629
3.18138681 0.805600816
-1.02245780 0.317640678
18.16001652 0.992503640
4.13729026 0.941910149
1.61211303 0.377271914
1.71520009 0.735196094
3.26325421 0.514432564
12.94663819 0.591190711
10.53239931 0.005877708
8.06705056 0.340779884
-5.09007267 0.332516161
12.31973355 0.323119296
-2.69957650 0.633232996
12.51207803 0.377641090
8.02081444 0.859293157
-0.13098726 0.099370804
-0.97757546 0.852873609
16.73605399 0.595854575
3.63219184 0.329310613
-4.79105630 0.247760146
-4.77209495 0.708235587
0.92107647 0.924567254
12.12724271 0.433550712
-5.07731478 0.200109463
9.16019579 0.897456586
18.33260560 0.649877409
1.93596773 0.584401505
8.51254631 0.283154523
11.41092928 0.698703314
10.85035748 0.351078210
12.62749979 0.570101319
-2.32028296 0.313842122
-2.45778301 0.007943144
6.93102526 0.108737491
-0.67304654 0.245399613
9.27294774 0.204010286
14.29292826 0.396294626
14.05843185 0.864613328
-3.73515954 0.305862948
0.36606339 0.116802407
-5.79235478 0.457308058
8.70346900 0.858244380
-8.91321043 0.077001581
0.58499566 0.503209780
0.39160153 0.324883353
7.46715326 0.343451039
12.36256009 0.679483638
8.84283689 0.687359177
-6.39396909 0.113065562
-3.67844896 0.667335667
9.36904962 0.009815419
-3.25244888 0.213105120
19.09389976 0.593130536
7.28826611 0.829483570
-5.44565944 0.956490203
7.96993416 0.770961635
0.20683778 0.006497153
-3.73273760 0.037042812
-10.64745846 0.813594448
5.70578906 0.157678242
4.05282218 0.224663656
14.77711159 0.577586777
0.89685942 0.297213941
3.92600687 0.672347849
-12.29347477 0.367072171
-9.33603480 0.456544225
-0.86683190 0.088696811
4.65685745 0.779783359
1.24438030 0.712958633
11.43533814 0.920345548
-10.18380242 0.044456697
-1.20684029 0.992051648
-9.78059038 0.611477837
3.05588762 0.581933667
3.47419279 0.769325101
0.87528245 0.455214184
-3.13185655 0.805887381
-0.82283965 0.707668384
-1.86717272 0.984060013
16.56357048 0.217369677
-2.11052646 0.474156371
-1.39795364 0.958554209
4.87468692 0.328779186
2.69163553 0.401633221
6.08640626 0.599963560
7.41420081 0.240202007
5.73729928 0.696034193
7.31747120 0.569520861
-6.20465547 0.214005920
17.52477873 0.667125450
12.97855692 0.796977778
-3.35883428 0.379721403
-2.90306972 0.552454626
5.31617371 0.401625473
-3.86414389 0.830986352
-14.94107832 0.702705123
-5.74060402 0.833328045
-8.10116203 0.078855027
23.48247017 0.568666620
20.22005082 0.357069809
-2.53387193 0.637455425
15.72048831 0.845354124
-4.41494567 0.934471473
-8.02254420 0.378467959
-0.13398716 0.489382793
0.95967155 0.813667919
0.14835664 0.215786848
14.31875579 0.675145039
-6.36589196 0.822037848
8.25942906 0.156787526
-7.33597529 0.051076292
12.58936771 0.666507807
2.34653798 0.626196518
-0.69351398 0.050664564
7.08738260 0.808776877
5.19653521 0.779008623
3.20900427 0.197212774
7.81171331 0.744975548
6.49008186 0.991318119
7.27471854 0.839642650
-7.68367290 0.880500743
12.04846713 0.797754890
14.93435279 0.190527791
-3.83641079 0.075995951
2.15090497 0.426560973
-3.61166623 0.777188818
8.49333248 0.891445999
-7.46936100 0.148607446
13.85406193 0.983656455
12.20477754 0.499345090
10.09415710 0.638127733
5.37134772 0.110929011
8.17660840 0.879411588
-4.38804367 0.608933700
-11.78145902 0.265134740
6.18940186 0.970982743
-16.24831477 0.844983635
9.52790402 0.578152651
16.44372225 0.264144422
-2.48286428 0.893865621
5.33297280 0.512990215
-2.68912507 0.851636020
9.94607707 0.644483197
-1.93526852 0.550759844
2.34310539 0.787853650
11.79131608 0.983668283
3.16689104 0.605394987
10.47759320 0.919442774
2.86973133 0.557835916
10.30674302 0.442504870
10.92820575 0.976183635
7.98050212 0.139334994
-0.64719705 0.981199028
-2.63625596 0.341524563
11.38799583 0.858987904
1.37321916 0.202373294
12.66698520 0.142127091
5.83599540 0.864497670
4.88659560 0.472598564
13.00108599 0.961629827
5.79514791 0.408377170
-1.47807631 0.536772872
-3.38142805 0.288956265
6.25154986 0.828695103
2.40919373 0.478123848
3.72990486 0.056539500
-9.90915815 0.603356617
0.21737084 0.737251896
5.36929388 0.026920178
-1.05027354 0.034992509
-4.97887624 0.506301429
-6.40058435 0.014061876
-0.14610837 0.619699963
3.78483619 0.653952701
3.84143365 0.162122572
2.66030676 0.196542503
-10.56809462 0.386200215
-5.01140125 0.711703654
-3.09809005 0.118120179
-2.76110171 0.118809515
2.85825107 0.129646974
2.75993661 0.171779333
11.55931169 0.372165133
9.21211486 0.969079819
6.02207148 0.498965865
-3.52883224 0.954619249
-2.60190803 0.069405278
1.34183694 0.569402487
-11.35155228 0.766344735
1.04661568 0.023673810
-1.90461932 0.179728300
13.72465582 0.467775796
19.14882438 0.476924297
-1.07480326 0.944407858
-8.44289331 0.059804028
1.89732882 0.743225795
-7.87832463 0.672539050
-12.24163608 0.916803014
-12.77212790 0.648129714
6.39197262 0.622954436
5.26261666 0.494421400
-10.65239640 0.695527931
4.63841458 0.499519163
-2.94276544 0.429201572
4.68788953 0.639613685
-1.03031400 0.349342009
-2.69946354 0.221796918
-15.32237714 0.631289988
-8.31962698 0.925363812
-5.80897714 0.833536878
7.16070989 0.832098478
-10.99679727 0.794048223
0.84514458 0.748014415
2.23308495 0.111176288
3.56351018 0.599805508
0.88336430 0.746908710
-14.63461670 0.314391808
4.39039715 0.079604833
-7.07001439 0.633705345
2.11252583 0.461468123
7.60219364 0.497389476
-4.87713428 0.039952736
2.17515292 0.421830084
0.64302362 0.267982804
-22.29371533 0.646257366
0.31652779 0.060548371
7.93445046 0.343570449
0.28292029 0.651909785
2.77775640 0.637679287
6.22941586 0.291132945
23.68567532 0.708513840
9.49503014 0.645200206
0.87405420 0.063154289
-4.04931224 0.110797498
8.91607239 0.732917195
-5.77728018 0.635435595
-16.37296319 0.343727613
9.87409940 0.774177478
-8.11360210 0.377765616
14.54242540 0.204343527
0.36239636 0.115528352
19.51009176 0.181365423
1.23592729 0.011676577
-15.81877035 0.767155028
-0.05911251 0.737944231
-6.55395965 0.214062137
-7.85591487 0.539865054
-9.73010882 0.730924287
11.79433862 0.267116856
-8.84308360 0.088069165
-5.56689174 0.405987947
7.59010135 0.655631611
10.07629305 0.031106157
-6.19331485 0.052350502
-4.58626710 0.326901540
-5.19431549 0.125740555
-2.08129025 0.034657174
-10.48798034 0.153632237
13.04657686 0.317295703
1.94142067 0.731437668
-1.62470735 0.701070475
-12.27046912 0.505781742
-2.96095228 0.122808075
-2.91847765 0.372668438
-14.83230131 0.100749725
16.57350659 0.707854947
10.05473238 0.244046174
5.50858969 0.070691273
7.65309196 0.245393047
7.16359996 0.056261015
4.33026356 0.318855549
-4.65721575 0.271249938
2.85909691 0.309377566
3.02736080 0.553944209
6.22796768 0.763945813
-4.47036396 0.197721195
2.78901176 0.441166128
-9.94574794 0.964660659
1.86451969 0.704635530
-10.38926659 0.772304221
-5.36565800 0.029527218
1.99230152 0.578448308
13.65547415 0.936050102
-2.05229879 0.851521142
0.99504588 0.974891334
-1.46027404 0.320227281
-8.45614275 0.727910071
-0.95201934 0.199101032
-2.46642929 0.462252060
-6.44060430 0.703637604
-2.58115910 0.084948525
0.76248197 0.125769097
12.00603845 0.675927328
1.97538215 0.782502470
2.23331320 0.870228155
-3.10226060 0.485056198
12.59337170 0.584729095
-2.42247402 0.387588168
9.41981063 0.374604221
6.26806243 0.727453335
-5.30630356 0.427294265
13.81542647 0.394246994
1.05647858 0.646684666
-12.25005208 0.010531726
-4.58162076 0.077133994
0.58094190 0.400275636
5.79443858 0.641731247
8.87635216 0.913593476
9.71048520 0.955285711
13.10563373 0.908471848
4.99194220 0.967014095
15.88178853 0.041518216
9.35962068 0.864770023
-7.53095731 0.300106124
12.18427585 0.248876997
9.22034502 0.450149366
-1.02861237 0.684246939
-2.98140404 0.326901490
-4.64316598 0.425381055
15.35233259 0.630774937
-1.85655250 0.226889991
15.43748330 0.584219351
10.39060893 0.387854461
2.80705696 0.564024865
3.48201221 0.787103673
7.03787977 0.112019552
8.41853061 0.798376796
15.63925527 0.873984550
-4.05742183 0.699131238
6.56954685 0.720018710
2.44007265 0.232697343
3.75597926 0.975133449
2.92362149 0.290975435
-4.74372257 0.003738451
1.28365940 0.987536495
15.65288265 0.179629701
-11.76385004 0.850614822
1.56331228 0.592017435
-9.64774741 0.024951969
-9.44879860 0.993960270
29.33340056 0.913358233
7.97233120 0.021820585
-12.10837953 0.401535846
-1.20729618 0.984977268
3.63219301 0.491142613
2.79853507 0.663823888
3.19584583 0.612511282
-0.81790885 0.908769330
-1.67795944 0.611690031
2.55137163 0.109447998
4.36572889 0.382049700
-6.35667866 0.162787163
-0.76239101 0.892383562
-3.99558996 0.466572017
-0.47513018 0.457760464
-10.69568261 0.544872910
4.30943512 0.982456072
2.91825703 0.823403368
0.10753188 0.945676881
-8.38623073 0.923085521
4.95690232 0.188128654
5.39956649 0.331692462
-1.47421789 0.327711090
-1.81689665 0.713285385
5.15137860 0.414906436
5.68897151 0.110799415
0.78825159 0.396824099
-1.78376652 0.929264595
0.76991060 0.950124414
15.81469073 0.951245195
-4.33820920 0.009896093
1.67174323 0.821983745
0.38997945 0.928857784
1.97848484 0.175680230
-5.81067801 0.772580245
-10.45208478 0.418845035
13.34024524 0.905645046
-8.79585122 0.906516178
2.89093397 0.113010960
2.22324289 0.799940482
8.95497981 0.984663669
0.93288527 0.277914575
-17.35306978 0.455587022
-3.26914604 0.406757639
8.75871227 0.067059659
1.79914932 0.784879863
-0.67305388 0.006393497
1.66805704 0.039614073
9.03868439 0.601066847
4.29458670 0.015772820
-8.15564320 0.939633197
12.50538902 0.766347628
-0.45547258 0.464314122
-9.47180656 0.640114882
-13.25567198 0.125841930
2.87660101 0.381931128
7.37834152 0.648958712
-0.45874073 0.303139498
4.87941450 0.500090729
4.50344891 0.311329309
-6.14257896 0.061368838
5.98243271 0.873804882
-2.64694079 0.080493398
-17.79727796 0.188420116
-13.52552336 0.798403568
2.29086373 0.518700767
5.21493652 0.788828533
-8.09641615 0.775041349
5.87005782 0.079447757
10.74795720 0.955691540
-8.01115709 0.004508053
-7.53735064 0.054195934
-6.79130165 0.877193354
-1.26419539 0.837772170
8.31082852 0.967509866
21.83090247 0.261529880
11.20453234 0.913858875
7.19128396 0.541942489
-2.93623595 0.860095891
-3.61446403 0.022418065
-6.59997709 0.532998307
3.71486934 0.522669434
18.03420874 0.295064126
-8.75452291 0.390175021
-7.83680812 0.263760724
-1.10263921 0.501819826
2.05633484 0.338684642
5.25636848 0.558667384
-7.33260497 0.457327559
3.86721296 0.612182242
-15.94331373 0.478329365
3.71501899 0.264241588
18.26175822 0.023212661
-5.21093378 0.184378036
-2.44074986 0.297114134
-11.88339919 0.875956945
7.52127093 0.927322099
5.31597834 0.416344968
11.42012314 0.952491078
13.64950955 0.794183413
12.50861255 0.390723282
-3.48142207 0.538708662
14.32910902 0.085221990
5.76196699 0.313860477
2.63751452 0.917424732
2.99975231 0.208662214
7.09852825 0.798246964
-1.95742636 0.352166210
7.80534904 0.386523123
-4.47229047 0.290188493
-4.35535158 0.761527294
1.47083860 0.447897289
3.09504296 0.048513534
3.50446804 0.925072429
12.00487617 0.574499971
10.35171466 0.934193962
-5.63256003 0.968833982
7.15625220 0.467160468
-7.81378393 0.790220187
4.52101003 0.014459969
12.90773453 0.990835752
7.70737851 0.785329264
-3.37196794 0.066025357
-5.12793918 0.347459322
-7.96083724 0.216608294
12.81247279 0.287880308
4.63872463 0.426881173
-3.85439309 0.336532356
4.55633320 0.108001536
-2.40824634 0.135247519
1.65932541 0.005108006
3.26129578 0.093163961
-3.52114597 0.544041275
-9.08479260 0.111212700
7.75150456 0.942726234
7.44829768 0.396996218
14.44430576 0.525470762
-2.13457508 0.207577358
9.74871681 0.537177845
-4.53338693 0.625854028
16.15962824 0.947933141
-0.17711664 0.480940902
-7.21470818 0.006952612
-6.27644212 0.737909602
-0.81648165 0.230003567
-2.10429152 0.209671398
7.69291241 0.987903443
-0.32284504 0.183904658
-0.90833921 0.782169770
10.35542238 0.201758865
10.40788689 0.540802365
10.80011849 0.298263948
7.39943598 0.785716539
-12.71674257 0.154135834
16.67139866 0.116794235
12.47832985 0.998179468
3.24041348 0.653080096
-5.50381593 0.995396942
-10.41952811 0.576472768
4.33514092 0.146434686
4.41294276 0.507165968
-0.14746982 0.698144836
-1.33323051 0.466481571
-7.01201350 0.797150114
6.58669848 0.942287809
7.19444974 0.053569397
-5.66046997 0.435728340
-5.07828702 0.497727572
13.72045272 0.324222944
9.99111984 0.355713969
-4.42363728 0.071790181
-2.34300923 0.618434528
4.98594041 0.605667438
-2.45307721 0.894546647
-3.52276424 0.760086779
-3.69489441 0.960758209
13.04792817 0.511273320
21.61433486 0.236270637
-9.57303968 0.964235539
11.70400744 0.391045695
4.25170422 0.411577090
7.87516537 0.952858161
9.89202673 0.971106687
7.51554467 0.505791978
2.17944879 0.893835908
0.82420351 0.213912155
2.47121932 0.688019842
-14.88503628 0.640950883
8.16032283 0.277742858
-4.65776244 0.129415853
7.48274838 0.074213153
7.70537066 0.476778957
5.88202944 0.351838898
1.95618325 0.106331699
7.22064623 0.511434587
-18.64632081 0.009314188
-6.16794611 0.526204245
2.14042033 0.675800465
-1.89535048 0.916845690
-7.77156605 0.069742819
-6.84078801 0.865082345
8.17539904 0.095895629
10.75170309 0.821383078
14.31498805 0.117893208
-2.82264467 0.809086411
0.11117380 0.400587471
6.43898314 0.333163663
9.48110784 0.465173316
5.39395511 0.695273081
-2.05636570 0.508060862
0.68666117 0.647109494
-6.41880322 0.267530762
-0.12096589 0.986901165
6.46062643 0.588580914
-4.20926136 0.550783675
4.07354300 0.907963701
10.84045143 0.900920521
2.64504664 0.767700269
10.34578229 0.197810342
-0.19222273 0.281932395
3.47400952 0.977555902
11.04549389 0.694010579
6.79729856 0.056652433
9.28300628 0.598930531
-3.53453282 0.183412212
8.04028248 0.250746943
5.75964045 0.424692336
-4.98252741 0.867446071
12.00352175 0.289615080
7.53497791 0.350915526
2.54579776 0.655113837
-9.29572208 0.900136667
6.41659249 0.100570650
7.37095646 0.907179211
-12.78417775 0.262214556
0.87962107 0.624657444
-5.96939907 0.296725805
-2.56857339 0.604065931
4.27131811 0.962952479
21.72603838 0.442485270
6.10056565 0.418383130
10.48099521 0.333593221
19.28363092 0.382408442
2.12080726 0.601206970
-6.82450704 0.740158518
11.32395692 0.627015570
5.00040701 0.476274658
-11.64750733 0.105099095
5.77442654 0.576560214
0.31340364 0.516479036
-2.09881449 0.146089191
5.12411327 0.368130477
1.70530391 0.621828438
-12.95649749 0.355726301
8.43735652 0.275383759
-15.56161079 0.413160084
5.28942694 0.069125495
5.96040877 0.438716686
-2.59318107 0.571116303
6.95988992 0.650760909
14.00074797 0.623645969
1.66101456 0.558763985
-2.57968349 0.648185379
-5.47584253 0.716901151
6.37222581 0.060563130
2.83664864 0.842419730
1.48926558 0.620280308
0.33471689 0.170312461
5.21648412 0.317639631
0.51733642 0.843867329
9.86005834 0.306036746
-5.81145791 0.975655452
-5.43219061 0.303385368
5.87157118 0.677369776
2.08889926 0.310200439
-2.53433085 0.194730908
7.01359575 0.674259533
-2.00936260 0.682056466
-2.98240739 0.787899917
-7.43289210 0.357483044
-12.58905988 0.981387385
5.78095517 0.533526274
-1.23065889 0.687266774
-6.82309960 0.293249774
8.47000829 0.842056399
-5.81624772 0.303700280
-14.83571031 0.311387926
4.66808472 0.091222946
-2.90144463 0.438301785
10.62458662 0.828335698
7.88002491 0.990156110
10.27680283 0.251087079
-9.42498970 0.292462244
6.73027640 0.213065205
1.28169895 0.353152789
-14.29203733 0.264563048
20.35772711 0.265208837
3.55095071 0.242905653
-17.97067670 0.373951756
10.53141139 0.247520698
0.05293205 0.579940423
12.79674707 0.288031751
-5.44235185 0.075899079
14.29464811 0.960707538
-1.36753291 0.124265178
-4.25946974 0.521720352
-12.46519252 0.385503339
-6.65343143 0.540942219
5.55949184 0.143194404
-1.20480594 0.515905644
-4.13839908 0.164461445
-2.21345425 0.812969725
3.94223380 0.229238952
-10.78661097 0.395049514
3.06997341 0.791234255
24.82205477 0.110859039
6.28791249 0.867125744
-2.80296119 0.703583849
13.24274039 0.425951975
-0.19577471 0.361568727
-2.34894781 0.954814545
19.76339577 0.635462177
-1.87591480 0.149121567
-7.70962391 0.711708342
-2.46291902 0.390902746
end data
regression /variables=v0 v1 /statistics defaults /dependent=v0 /method=enter.
_ATEOF
{ set +x
$as_echo "$at_srcdir/regression.at:1763: pspp -O format=csv regression.sps"
at_fn_check_prepare_trace "regression.at:1763"
( $at_check_trace; pspp -O format=csv regression.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
v0,F8.0
v1,F8.0
Table: Model Summary (v0)
,R,R Square,Adjusted R Square,Std. Error of the Estimate
,.05,.00,.00,8.11
Table: ANOVA (v0)
,,Sum of Squares,df,Mean Square,F,Sig.
,Regression,235.23,1,235.23,3.58,.059
,Residual,98438.40,1498,65.71,,
,Total,98673.63,1499,,,
Table: Coefficients (v0)
,,Unstandardized Coefficients,,Standardized Coefficients,,
,,B,Std. Error,Beta,t,Sig.
,(Constant),1.24,.42,.00,2.95,.003
,v1,1.37,.72,.05,1.89,.059
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1763"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_611
#AT_START_612
at_fn_group_banner 612 'regression.at:1788' \
"LINEAR REGRESSION no crash on all missing" " " 82
at_xfail=no
(
$as_echo "612. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >regcrash.sps <<'_ATEOF'
data list list /x * y.
begin data.
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
end data.
regression /variables=x y /dependent=y.
_ATEOF
{ set +x
$as_echo "$at_srcdir/regression.at:1808: pspp -o pspp.csv regcrash.sps"
at_fn_check_prepare_trace "regression.at:1808"
( $at_check_trace; pspp -o pspp.csv regcrash.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1808"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_612
#AT_START_613
at_fn_group_banner 613 'regression.at:1814' \
"LINEAR REGRESSION missing dependent variable" " " 82
at_xfail=no
(
$as_echo "613. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >reg-mdv-ref.sps <<'_ATEOF'
data list notable list / v0 to v2.
begin data
0.65377128 7.735648 -23.97588
-0.13087553 6.142625 -19.63854
0.34880368 7.651430 -25.26557
0.69249021 6.125125 -16.57090
-0.07368178 8.245789 -25.80001
-0.34404919 6.031540 -17.56743
0.75981559 9.832291 -28.35977
-0.46958313 5.343832 -16.79548
-0.06108490 8.838262 -29.25689
0.56154863 6.200189 -18.58219
end data
regression /variables=v0 v1
/statistics defaults
/dependent=v2
/method=enter.
_ATEOF
{ set +x
$as_echo "$at_srcdir/regression.at:1838: pspp -o pspp-ref.csv reg-mdv-ref.sps"
at_fn_check_prepare_trace "regression.at:1838"
( $at_check_trace; pspp -o pspp-ref.csv reg-mdv-ref.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1838"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >reg-mdv.sps <<'_ATEOF'
data list notable list / v0 to v2.
begin data
0.65377128 7.735648 -23.97588
-0.13087553 6.142625 -19.63854
0.34880368 7.651430 -25.26557
0.69249021 6.125125 -16.57090
-0.07368178 8.245789 -25.80001
-0.34404919 6.031540 -17.56743
0.75981559 9.832291 -28.35977
-0.46958313 5.343832 -16.79548
-0.06108490 8.838262 -29.25689
0.56154863 6.200189 -18.58219
0.5 8 9
end data
missing values v2 (9).
regression /variables=v0 v1
/statistics defaults
/dependent=v2
/method=enter.
_ATEOF
{ set +x
$as_echo "$at_srcdir/regression.at:1864: pspp -o pspp.csv reg-mdv.sps"
at_fn_check_prepare_trace "regression.at:1864"
( $at_check_trace; pspp -o pspp.csv reg-mdv.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1864"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/regression.at:1866: diff pspp.csv pspp-ref.csv"
at_fn_check_prepare_trace "regression.at:1866"
( $at_check_trace; diff pspp.csv pspp-ref.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/regression.at:1866"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_613
#AT_START_614
at_fn_group_banner 614 'regression.at:1871' \
"LINEAR REGRESSION with invalid syntax (and empty dataset)" "" 82
at_xfail=no
(
$as_echo "614. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >ss.sps <<'_ATEOF'
data list notable list / v0 to v2.
begin data
end data.
regression /variables=v0 v1
/statistics r coeff anova
/dependent=v2
/method=enter v2.
_ATEOF
{ set +x
$as_echo "$at_srcdir/regression.at:1884: pspp ss.sps"
at_fn_check_prepare_trace "regression.at:1884"
( $at_check_trace; pspp ss.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/regression.at:1884"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_614
#AT_START_615
at_fn_group_banner 615 'regression.at:1891' \
"LINEAR REGRESSION coefficient confidence interval" "" 82
at_xfail=no
(
$as_echo "615. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >conf.sps <<'_ATEOF'
set format = F22.3.
data list notable list /math female socst read science *
begin data.
41.00 .00 57.00 57.00 47.00
53.00 1.00 61.00 68.00 63.00
54.00 .00 31.00 44.00 58.00
47.00 .00 56.00 63.00 53.00
57.00 .00 61.00 47.00 53.00
51.00 .00 61.00 44.00 63.00
42.00 .00 61.00 50.00 53.00
45.00 .00 36.00 34.00 39.00
54.00 .00 51.00 63.00 58.00
52.00 .00 51.00 57.00 50.00
51.00 .00 61.00 60.00 53.00
51.00 .00 61.00 57.00 63.00
71.00 .00 71.00 73.00 61.00
57.00 .00 46.00 54.00 55.00
50.00 .00 56.00 45.00 31.00
43.00 .00 56.00 42.00 50.00
51.00 .00 56.00 47.00 50.00
60.00 .00 56.00 57.00 58.00
62.00 .00 61.00 68.00 55.00
57.00 .00 46.00 55.00 53.00
35.00 .00 41.00 63.00 66.00
75.00 .00 66.00 63.00 72.00
45.00 .00 56.00 50.00 55.00
57.00 .00 61.00 60.00 61.00
45.00 .00 46.00 37.00 39.00
46.00 .00 31.00 34.00 39.00
66.00 .00 66.00 65.00 61.00
57.00 .00 46.00 47.00 58.00
49.00 .00 46.00 44.00 39.00
49.00 .00 41.00 52.00 55.00
57.00 .00 51.00 42.00 47.00
64.00 .00 61.00 76.00 64.00
63.00 .00 71.00 65.00 66.00
57.00 .00 31.00 42.00 72.00
50.00 .00 61.00 52.00 61.00
58.00 .00 66.00 60.00 61.00
75.00 .00 66.00 68.00 66.00
68.00 .00 66.00 65.00 66.00
44.00 .00 36.00 47.00 36.00
40.00 .00 51.00 39.00 39.00
41.00 .00 51.00 47.00 42.00
62.00 .00 51.00 55.00 58.00
57.00 .00 51.00 52.00 55.00
43.00 .00 41.00 42.00 50.00
48.00 .00 66.00 65.00 63.00
63.00 .00 46.00 55.00 69.00
39.00 .00 47.00 50.00 49.00
70.00 .00 51.00 65.00 63.00
63.00 .00 46.00 47.00 53.00
59.00 .00 51.00 57.00 47.00
61.00 .00 56.00 53.00 57.00
38.00 .00 41.00 39.00 47.00
61.00 .00 46.00 44.00 50.00
49.00 .00 71.00 63.00 55.00
73.00 .00 66.00 73.00 69.00
44.00 .00 42.00 39.00 26.00
42.00 .00 32.00 37.00 33.00
39.00 .00 46.00 42.00 56.00
55.00 .00 41.00 63.00 58.00
52.00 .00 51.00 48.00 44.00
45.00 .00 61.00 50.00 58.00
61.00 .00 66.00 47.00 69.00
39.00 .00 46.00 44.00 34.00
41.00 .00 36.00 34.00 36.00
50.00 .00 61.00 50.00 36.00
40.00 .00 26.00 44.00 50.00
60.00 .00 66.00 60.00 55.00
47.00 .00 26.00 47.00 42.00
59.00 .00 44.00 63.00 65.00
49.00 .00 36.00 50.00 44.00
46.00 .00 51.00 44.00 39.00
58.00 .00 61.00 60.00 58.00
71.00 .00 66.00 73.00 63.00
58.00 .00 66.00 68.00 74.00
46.00 .00 51.00 55.00 58.00
43.00 .00 31.00 47.00 45.00
54.00 .00 61.00 55.00 49.00
56.00 .00 66.00 68.00 63.00
46.00 .00 46.00 31.00 39.00
54.00 .00 56.00 47.00 42.00
57.00 .00 56.00 63.00 55.00
54.00 .00 36.00 36.00 61.00
71.00 .00 56.00 68.00 66.00
48.00 .00 56.00 63.00 63.00
40.00 .00 41.00 55.00 44.00
64.00 .00 66.00 55.00 63.00
51.00 .00 56.00 52.00 53.00
39.00 .00 56.00 34.00 42.00
40.00 .00 31.00 50.00 34.00
61.00 .00 56.00 55.00 61.00
66.00 .00 46.00 52.00 47.00
49.00 .00 46.00 63.00 66.00
65.00 1.00 61.00 68.00 69.00
52.00 1.00 48.00 39.00 44.00
46.00 1.00 51.00 44.00 47.00
61.00 1.00 51.00 50.00 63.00
72.00 1.00 56.00 71.00 66.00
71.00 1.00 71.00 63.00 69.00
40.00 1.00 41.00 34.00 39.00
69.00 1.00 61.00 63.00 61.00
64.00 1.00 66.00 68.00 69.00
56.00 1.00 61.00 47.00 66.00
49.00 1.00 41.00 47.00 33.00
54.00 1.00 51.00 63.00 50.00
53.00 1.00 51.00 52.00 61.00
66.00 1.00 56.00 55.00 42.00
67.00 1.00 56.00 60.00 50.00
40.00 1.00 33.00 35.00 51.00
46.00 1.00 56.00 47.00 50.00
69.00 1.00 71.00 71.00 58.00
40.00 1.00 56.00 57.00 61.00
41.00 1.00 51.00 44.00 39.00
57.00 1.00 66.00 65.00 46.00
58.00 1.00 56.00 68.00 59.00
57.00 1.00 66.00 73.00 55.00
37.00 1.00 41.00 36.00 42.00
55.00 1.00 46.00 43.00 55.00
62.00 1.00 66.00 73.00 58.00
64.00 1.00 56.00 52.00 58.00
40.00 1.00 51.00 41.00 39.00
50.00 1.00 51.00 60.00 50.00
46.00 1.00 56.00 50.00 50.00
53.00 1.00 56.00 50.00 39.00
52.00 1.00 46.00 47.00 48.00
45.00 1.00 46.00 47.00 34.00
56.00 1.00 61.00 55.00 58.00
45.00 1.00 56.00 50.00 44.00
54.00 1.00 41.00 39.00 50.00
56.00 1.00 46.00 50.00 47.00
41.00 1.00 26.00 34.00 29.00
54.00 1.00 56.00 57.00 50.00
72.00 1.00 56.00 57.00 54.00
56.00 1.00 51.00 68.00 50.00
47.00 1.00 46.00 42.00 47.00
49.00 1.00 66.00 61.00 44.00
60.00 1.00 66.00 76.00 67.00
54.00 1.00 46.00 47.00 58.00
55.00 1.00 56.00 46.00 44.00
33.00 1.00 41.00 39.00 42.00
49.00 1.00 61.00 52.00 44.00
43.00 1.00 51.00 28.00 44.00
50.00 1.00 52.00 42.00 50.00
52.00 1.00 51.00 47.00 39.00
48.00 1.00 41.00 47.00 44.00
58.00 1.00 66.00 52.00 53.00
43.00 1.00 61.00 47.00 48.00
41.00 1.00 31.00 50.00 55.00
43.00 1.00 51.00 44.00 44.00
46.00 1.00 41.00 47.00 40.00
44.00 1.00 41.00 45.00 34.00
43.00 1.00 46.00 47.00 42.00
61.00 1.00 56.00 65.00 58.00
40.00 1.00 51.00 43.00 50.00
49.00 1.00 61.00 47.00 53.00
56.00 1.00 66.00 57.00 58.00
61.00 1.00 71.00 68.00 55.00
50.00 1.00 61.00 52.00 54.00
51.00 1.00 61.00 42.00 47.00
42.00 1.00 41.00 42.00 42.00
67.00 1.00 66.00 66.00 61.00
53.00 1.00 61.00 47.00 53.00
50.00 1.00 58.00 57.00 51.00
51.00 1.00 31.00 47.00 63.00
72.00 1.00 61.00 57.00 61.00
48.00 1.00 61.00 52.00 55.00
40.00 1.00 31.00 44.00 40.00
53.00 1.00 61.00 50.00 61.00
39.00 1.00 36.00 39.00 47.00
63.00 1.00 41.00 57.00 55.00
51.00 1.00 37.00 57.00 53.00
45.00 1.00 43.00 42.00 50.00
39.00 1.00 61.00 47.00 47.00
42.00 1.00 39.00 42.00 31.00
62.00 1.00 51.00 60.00 61.00
44.00 1.00 51.00 44.00 35.00
65.00 1.00 66.00 63.00 54.00
63.00 1.00 71.00 65.00 55.00
54.00 1.00 41.00 39.00 53.00
45.00 1.00 36.00 50.00 58.00
60.00 1.00 51.00 52.00 56.00
49.00 1.00 51.00 60.00 50.00
48.00 1.00 51.00 44.00 39.00
57.00 1.00 61.00 52.00 63.00
55.00 1.00 61.00 55.00 50.00
66.00 1.00 56.00 50.00 66.00
64.00 1.00 71.00 65.00 58.00
55.00 1.00 51.00 52.00 53.00
42.00 1.00 36.00 47.00 42.00
56.00 1.00 61.00 63.00 55.00
53.00 1.00 66.00 50.00 53.00
41.00 1.00 41.00 42.00 42.00
42.00 1.00 41.00 36.00 50.00
53.00 1.00 56.00 50.00 55.00
42.00 1.00 51.00 41.00 34.00
60.00 1.00 56.00 47.00 50.00
52.00 1.00 56.00 55.00 42.00
38.00 1.00 46.00 42.00 36.00
57.00 1.00 52.00 57.00 55.00
58.00 1.00 61.00 55.00 58.00
65.00 1.00 61.00 63.00 53.00
end data.
regression
/variables = math female socst read
/statistics = coeff r anova ci (95)
/dependent = science
/method = enter
_ATEOF
{ set +x
$as_echo "$at_srcdir/regression.at:2107: pspp -O format=csv conf.sps"
at_fn_check_prepare_trace "regression.at:2107"
( $at_check_trace; pspp -O format=csv conf.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Model Summary (science)
,R,R Square,Adjusted R Square,Std. Error of the Estimate
,.699,.489,.479,7.148
Table: ANOVA (science)
,,Sum of Squares,df,Mean Square,F,Sig.
,Regression,9543.721,4,2385.930,46.695,.000
,Residual,9963.779,195,51.096,,
,Total,19507.500,199,,,
Table: Coefficients (science)
,,Unstandardized Coefficients,,Standardized Coefficients,,,95% Confidence Interval for B,
,,B,Std. Error,Beta,t,Sig.,Lower Bound,Upper Bound
,(Constant),12.325,3.194,.000,3.859,.000,6.027,18.624
,math,.389,.074,.368,5.252,.000,.243,.535
,female,-2.010,1.023,-.101,-1.965,.051,-4.027,.007
,socst,.050,.062,.054,.801,.424,-.073,.173
,read,.335,.073,.347,4.607,.000,.192,.479
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/regression.at:2107"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_615
#AT_START_616
at_fn_group_banner 616 'reliability.at:3' \
"RELIABILITY" " " 83
at_xfail=no
(
$as_echo "616. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >reliability.sps <<'_ATEOF'
data list notable list /var1 *
var2 *
var6 *
var7 *
var8 *
var9 *
var11 *
var12 *
var15 *
var16 *
var17 *
var19 *
.
begin data.
6 7 7 5 7 7 7 7 7 7 6 6
6 7 7 6 7 6 7 5 6 5 7 7
6 6 7 6 5 3 6 4 5 6 4 5
4 6 5 6 6 5 4 3 5 6 5 6
5 6 5 5 6 5 4 4 6 6 5 5
6 6 7 6 6 5 6 5 6 6 5 6
5 6 6 5 6 5 5 4 6 5 5 5
5 7 7 7 7 7 6 5 7 7 7 7
6 6 6 5 5 7 6 5 6 6 5 6
. . . . . . . . . . . .
6 6 5 5 5 6 6 4 6 5 5 5
7 7 7 6 7 6 7 6 6 6 7 6
4 7 6 6 6 5 5 4 4 5 5 6
5 6 3 5 4 1 4 6 2 3 3 2
3 6 6 5 6 2 4 2 2 4 4 5
6 6 7 5 6 5 7 6 5 6 6 5
6 5 6 6 5 6 6 6 6 4 5 5
5 7 7 . 6 6 6 5 6 6 6 6
5 7 5 5 4 6 7 6 5 4 6 5
7 7 7 6 7 7 7 6 7 7 7 6
3 6 5 6 5 7 7 3 4 7 5 7
6 7 7 6 5 6 5 5 6 6 6 6
5 5 6 5 5 5 5 4 5 5 5 6
6 6 7 4 5 6 6 6 6 5 5 6
6 5 6 6 4 4 5 4 5 6 4 5
5 6 7 6 6 7 7 5 6 6 6 5
5 6 5 7 4 6 6 5 7 7 5 6
. . . . . . . . . . . .
7 6 6 5 6 6 7 6 6 5 5 6
6 6 7 7 7 7 7 6 7 6 6 7
7 5 5 . 5 . 7 3 5 4 5 3
7 6 7 5 4 5 7 5 7 5 5 6
6 5 6 6 6 5 5 5 5 6 5 6
7 7 7 7 7 7 7 7 5 6 7 7
. . . . . . . . . . . .
5 5 6 7 5 6 6 4 6 6 6 5
6 6 5 7 5 6 7 5 6 5 4 6
7 6 7 6 7 5 6 7 7 6 6 6
5 6 5 6 5 6 7 2 5 7 3 7
6 6 5 6 5 6 6 6 6 6 5 6
7 6 7 6 6 6 6 6 6 7 6 7
7 7 6 5 6 6 7 7 7 4 6 5
3 7 7 6 6 7 7 7 6 6 6 4
3 5 3 4 3 3 3 3 3 3 3 5
5 7 7 7 5 7 6 2 6 7 6 7
7 7 7 7 7 7 7 6 7 7 7 6
6 5 7 4 4 4 5 6 5 5 4 5
4 7 7 4 4 3 6 3 5 3 4 5
7 7 7 7 7 7 7 7 7 7 7 5
3 6 5 5 4 5 4 4 5 5 3 5
6 7 6 6 6 7 7 6 6 6 7 6
2 5 4 6 3 2 2 2 2 7 2 2
4 6 6 5 5 5 6 5 5 6 6 5
5 7 4 5 6 6 6 5 6 6 5 6
5 7 7 5 6 5 6 5 5 4 5 4
4 5 6 5 6 4 5 5 5 4 5 5
7 6 6 5 5 6 7 5 6 5 7 6
5 6 6 5 4 5 5 3 4 5 5 5
5 7 6 4 4 5 6 5 6 4 4 6
6 6 6 6 5 7 7 6 5 5 6 6
6 6 7 6 7 6 6 5 6 7 6 5
7 6 7 6 7 6 7 7 5 5 6 6
5 6 6 5 5 5 6 5 6 7 7 5
5 6 6 5 6 5 6 6 6 6 6 6
5 5 5 5 6 4 5 3 4 7 6 5
5 7 7 6 6 6 6 5 6 7 6 7
6 6 7 7 7 5 6 5 5 5 5 4
2 7 5 4 6 5 5 2 5 6 4 6
6 7 7 5 6 6 7 6 6 7 5 7
5 6 7 6 6 3 5 7 6 6 5 6
6 6 6 3 5 5 5 6 6 6 4 5
4 7 7 4 7 4 5 5 5 7 4 4
. . . . . . . . . . . .
6 6 7 6 7 6 7 7 6 7 7 6
. . . . . . . . . . . .
5 6 5 7 6 5 6 6 5 6 4 6
5 5 5 5 4 5 5 5 7 5 5 5
6 6 6 4 5 4 6 6 6 4 5 4
6 5 7 4 6 4 6 5 6 6 6 3
5 7 6 5 5 5 5 5 6 7 6 6
5 5 7 7 5 5 6 6 5 5 5 7
5 6 7 6 7 5 6 4 6 7 6 7
4 5 5 5 6 5 6 5 6 6 5 6
6 5 5 5 6 3 4 5 5 4 5 3
6 6 6 5 5 5 4 3 4 5 5 5
6 7 7 6 2 3 6 6 6 5 7 7
6 7 5 5 6 6 6 5 6 6 6 6
6 7 7 6 7 7 7 5 5 6 6 6
6 6 6 6 7 6 6 7 6 6 6 6
5 6 6 6 3 5 6 6 5 5 4 6
4 6 5 6 6 5 6 5 6 6 5 5
6 4 6 5 4 6 7 4 5 6 5 5
6 7 6 4 6 5 7 6 7 7 6 5
6 7 7 6 7 6 7 7 7 6 6 6
6 6 6 4 5 6 7 7 5 6 4 4
3 3 5 3 3 1 5 6 3 2 3 3
7 7 5 6 6 7 7 6 7 7 7 7
5 6 6 6 7 5 4 5 4 7 6 7
3 6 5 4 3 3 3 5 5 6 3 4
5 7 6 4 6 5 5 6 6 7 5 6
5 7 6 6 6 6 6 5 6 7 7 6
7 7 5 6 7 7 7 7 6 5 7 7
6 7 6 6 5 6 7 7 6 5 6 6
6 7 7 7 7 6 6 7 6 7 7 7
4 6 4 7 3 6 5 5 4 3 5 6
5 5 7 5 4 6 7 5 4 6 6 5
5 5 6 4 6 5 7 6 5 5 5 6
. . . . . . . . . . . .
. . . . . . . . . . . .
5 7 7 5 6 6 7 7 6 6 6 7
6 7 7 1 2 1 7 7 5 5 5 2
. . . . . . . . . . . .
3 7 4 6 4 7 4 6 4 7 4 7
5 7 3 5 5 6 7 5 4 7 7 4
4 7 7 5 4 6 7 7 6 5 4 4
6 6 2 2 6 4 6 5 5 1 5 2
5 5 6 4 5 4 6 5 5 6 5 5
. . . . . . . . . . . .
5 7 6 6 6 6 6 6 5 6 6 6
6 6 6 5 6 6 6 6 7 5 6 7
3 6 3 3 5 3 3 5 3 5 7 4
4 4 6 3 3 3 4 3 4 2 3 6
5 7 7 6 5 4 7 5 7 7 3 7
4 5 4 4 4 4 3 3 3 4 3 3
6 7 7 5 6 6 7 5 4 5 5 5
3 5 3 3 1 3 4 3 4 7 6 7
4 5 4 4 4 3 4 5 6 6 4 5
5 6 3 4 5 3 5 3 4 5 6 4
5 5 5 6 6 6 6 4 5 6 6 5
6 7 7 2 2 6 7 7 7 7 5 7
5 7 7 4 6 5 7 5 5 5 6 6
6 6 7 7 5 5 5 7 6 7 7 7
6 5 7 3 6 5 6 5 5 6 5 4
5 7 6 5 6 6 6 5 6 5 5 6
4 5 5 5 6 3 5 3 3 6 5 5
. . . . . . . . . . . .
5 6 6 4 4 4 5 3 5 5 2 6
5 6 7 5 5 6 6 5 5 6 6 6
6 7 7 6 4 7 7 6 7 5 6 7
6 6 5 4 5 2 7 6 6 5 6 6
2 2 2 2 2 2 3 2 3 1 1 2
end data.
RELIABILITY
/VARIABLES=var2 var8 var15 var17 var6
/SCALE('Everything') var6 var8 var15 var17
/MODEL=ALPHA.
RELIABILITY
/VARIABLES=var6 var8 var15 var17
/SCALE('Nothing') ALL
/MODEL=SPLIT(2)
.
RELIABILITY
/VARIABLES=var2 var6 var8 var15 var17 var19
/SCALE('Totals') var6 var8 var15 var17
/SUMMARY = total
/STATISTICS = DESCRIPTIVES COVARIANCES
.
RELIABILITY
/VARIABLES=var6 var8 var15 var17
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/reliability.at:186: pspp -o pspp.csv reliability.sps"
at_fn_check_prepare_trace "reliability.at:186"
( $at_check_trace; pspp -o pspp.csv reliability.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "reliability.sps:174: warning: RELIABILITY: The STATISTICS subcommand is not yet implemented. No statistics will be produced.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/reliability.at:186"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/reliability.at:189: cat pspp.csv"
at_fn_check_prepare_trace "reliability.at:189"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Scale: Everything
Table: Case Processing Summary
,,N,%
Cases,Valid,131,92.91
,Excluded,10,7.09
,Total,141,100.00
Table: Reliability Statistics
Cronbach's Alpha,N of Items
.75,4
Scale: Nothing
Table: Case Processing Summary
,,N,%
Cases,Valid,131,92.91
,Excluded,10,7.09
,Total,141,100.00
Table: Reliability Statistics
Cronbach's Alpha,Part 1,Value,.55
,,N of Items,2
,Part 2,Value,.63
,,N of Items,2
,Total N of Items,,4
Correlation Between Forms,,,.61
Spearman-Brown Coefficient,Equal Length,,.75
,Unequal Length,,.75
Guttman Split-Half Coefficient,,,.75
reliability.sps:174: warning: RELIABILITY: The STATISTICS subcommand is not yet implemented. No statistics will be produced.
Scale: Totals
Table: Case Processing Summary
,,N,%
Cases,Valid,131,92.91
,Excluded,10,7.09
,Total,141,100.00
Table: Reliability Statistics
Cronbach's Alpha,N of Items
.75,4
Table: Item-Total Statistics
,Scale Mean if Item Deleted,Scale Variance if Item Deleted,Corrected Item-Total Correlation,Cronbach's Alpha if Item Deleted
var6,15.97,8.43,.51,.71
var8,16.56,7.86,.53,.70
var15,16.47,8.45,.56,.68
var17,16.60,8.00,.57,.67
Scale: ANY
Table: Case Processing Summary
,,N,%
Cases,Valid,131,92.91
,Excluded,10,7.09
,Total,141,100.00
Table: Reliability Statistics
Cronbach's Alpha,N of Items
.75,4
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/reliability.at:189"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_616
#AT_START_617
at_fn_group_banner 617 'reliability.at:258' \
"RELIABILITY bad syntax" " " 83
at_xfail=no
(
$as_echo "617. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >bad-syntax.sps <<'_ATEOF'
data list notable list /x * y *.
begin data.
1 10
2 20
3 30
4 50
5 50
end data.
* This syntax is incorrect
reliability x y.
_ATEOF
{ set +x
$as_echo "$at_srcdir/reliability.at:273: pspp -O format=csv bad-syntax.sps"
at_fn_check_prepare_trace "reliability.at:273"
( $at_check_trace; pspp -O format=csv bad-syntax.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/reliability.at:273"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_617
#AT_START_618
at_fn_group_banner 618 'reliability.at:278' \
"RELIABILITY bad syntax 2" " " 83
at_xfail=no
(
$as_echo "618. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >bad-syntax.sps <<'_ATEOF'
new file.
data list notable list /f01 f02 f03 f04 f05 f06 f07 f08 f09 f10 *.
begin data.
end data.
* This syntax is incorrect
reliability variables=f01 to f10/asdfj.
_ATEOF
{ set +x
$as_echo "$at_srcdir/reliability.at:288: pspp -O format=csv bad-syntax.sps"
at_fn_check_prepare_trace "reliability.at:288"
( $at_check_trace; pspp -O format=csv bad-syntax.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/reliability.at:288"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_618
#AT_START_619
at_fn_group_banner 619 'reliability.at:293' \
"RELIABILITY crash with no data" " " 83
at_xfail=no
(
$as_echo "619. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >reliability.sps <<'_ATEOF'
new file.
data list notable list /f01 f02 f03 f04 f05 f06 f07 f08 f09 f10 *.
begin data.
end data.
reliability variables=f01 to f10.
_ATEOF
{ set +x
$as_echo "$at_srcdir/reliability.at:302: pspp -O format=csv reliability.sps"
at_fn_check_prepare_trace "reliability.at:302"
( $at_check_trace; pspp -O format=csv reliability.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/reliability.at:302"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_619
#AT_START_620
at_fn_group_banner 620 'reliability.at:311' \
"RELIABILITY tutorial example" " " 83
at_xfail=no
(
$as_echo "620. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >tut-example.sps <<'_ATEOF'
get file='hotel.sav'.
compute v3 = 6 - v3.
compute v5 = 6 - v5.
reliability variables = v1 v3 v4.
_ATEOF
{ set +x
$as_echo "$at_srcdir/reliability.at:321: ln -s \$top_srcdir/examples/hotel.sav ."
at_fn_check_prepare_dynamic "ln -s $top_srcdir/examples/hotel.sav ." "reliability.at:321"
( $at_check_trace; ln -s $top_srcdir/examples/hotel.sav .
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/reliability.at:321"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/reliability.at:322: pspp -O format=csv tut-example.sps"
at_fn_check_prepare_trace "reliability.at:322"
( $at_check_trace; pspp -O format=csv tut-example.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Scale: ANY
Table: Case Processing Summary
,,N,%
Cases,Valid,17,100.00
,Excluded,0,.00
,Total,17,100.00
Table: Reliability Statistics
Cronbach's Alpha,N of Items
.81,3
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/reliability.at:322"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_620
#AT_START_621
at_fn_group_banner 621 'roc.at:3' \
"ROC, free distribution" " " 84
at_xfail=no
(
$as_echo "621. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >roc.sps <<'_ATEOF'
set format F10.3.
data list notable list /x * y * w * a *.
begin data.
1 1 2 1
1 2 28 0
2 3 4 1
2 4 14 0
3 5 10 1
. . 1 0
3 1 5 0
4 2 14 1
4 3 2 0
5 4 20 1
5 4 20 .
5 5 1 0
end data.
weight by w.
roc x by a (1)
/plot = none
/print = se coordinates
/criteria = testpos(large) distribution(free) ci(99)
/missing = exclude .
_ATEOF
{ set +x
$as_echo "$at_srcdir/roc.at:30: pspp -o pspp.csv roc.sps"
at_fn_check_prepare_trace "roc.at:30"
( $at_check_trace; pspp -o pspp.csv roc.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/roc.at:30"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/roc.at:31: cat pspp.csv"
at_fn_check_prepare_trace "roc.at:31"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Case Summary
,Valid N (listwise),
a,Unweighted,Weighted
Positive,5,50.000
Negative,5,50.000
Table: Area Under the Curve (x)
,,,Asymp. 99% Confidence Interval,
Area,Std. Error,Asymptotic Sig.,Lower Bound,Upper Bound
.910,.030,.000,.839,.981
Table: Coordinates of the Curve (x)
Positive if greater than or equal to,Sensitivity,1 - Specificity
.000,1.000,1.000
1.500,.960,.440
2.500,.880,.160
3.500,.680,.060
4.500,.400,.020
6.000,.000,.000
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/roc.at:31"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_621
#AT_START_622
at_fn_group_banner 622 'roc.at:54' \
"ROC, negative exponential distribution" " " 84
at_xfail=no
(
$as_echo "622. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >roc.sps <<'_ATEOF'
set format F10.3.
data list notable list /x * y * w * a *.
begin data.
1 1 2 1
1 2 28 0
2 3 4 1
2 4 14 0
3 5 10 1
. . 1 0
3 1 5 0
4 2 14 1
4 3 2 0
5 4 20 1
5 4 20 .
5 5 1 0
end data.
weight by w.
roc x y by a (1)
/plot = curve(reference)
/print = se coordinates
/criteria = testpos(large) distribution(negexpo) ci(95)
/missing = exclude .
_ATEOF
{ set +x
$as_echo "$at_srcdir/roc.at:81: pspp -o pspp.csv roc.sps"
at_fn_check_prepare_trace "roc.at:81"
( $at_check_trace; pspp -o pspp.csv roc.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/roc.at:81"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/roc.at:82: cat pspp.csv"
at_fn_check_prepare_trace "roc.at:82"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Case Summary
,Valid N (listwise),
a,Unweighted,Weighted
Positive,5,50.000
Negative,5,50.000
Table: Area Under the Curve
,,,,Asymp. 95% Confidence Interval,
Variable under test,Area,Std. Error,Asymptotic Sig.,Lower Bound,Upper Bound
x,.910,.030,.000,.860,.960
y,.697,.052,.001,.611,.783
Table: Coordinates of the Curve
Test variable,Positive if greater than or equal to,Sensitivity,1 - Specificity
x,.000,1.000,1.000
,1.500,.960,.440
,2.500,.880,.160
,3.500,.680,.060
,4.500,.400,.020
,6.000,.000,.000
y,.000,1.000,1.000
,1.500,.960,.900
,2.500,.680,.340
,3.000,.600,.340
,3.500,.600,.300
,4.500,.200,.020
,6.000,.000,.000
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/roc.at:82"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_622
#AT_START_623
at_fn_group_banner 623 'roc.at:113' \
"ROC, with anomaly" " " 84
at_xfail=no
(
$as_echo "623. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >roc.sps <<'_ATEOF'
set format F10.3.
data list notable list /x * a * comment (a20).
begin data.
0 1 ""
0 0 ""
1 1 ""
1 0 ""
2 1 ""
2 0 ""
5 1 ""
5 0 ""
10 1 ""
10 0 ""
15 1 ""
15 0 ""
20 1 ""
20 1 ""
22 0 "here and"
22 0 "here is the anomoly"
25 1 ""
25 0 ""
30 1 ""
30 0 ""
35 1 ""
35 0 ""
38 1 ""
38 0 ""
39 1 ""
39 0 ""
40 1 ""
40 0 ""
end data.
roc x by a (1)
/plot = none
print = se
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/roc.at:153: pspp -o pspp.csv roc.sps"
at_fn_check_prepare_trace "roc.at:153"
( $at_check_trace; pspp -o pspp.csv roc.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/roc.at:153"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/roc.at:154: cat pspp.csv"
at_fn_check_prepare_trace "roc.at:154"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Case Summary
,Valid N (listwise),
a,Unweighted,Weighted
Positive,14,14.000
Negative,14,14.000
Table: Area Under the Curve (x)
,,,Asymp. 95% Confidence Interval,
Area,Std. Error,Asymptotic Sig.,Lower Bound,Upper Bound
.490,.111,.927,.307,.673
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/roc.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_623
#AT_START_624
at_fn_group_banner 624 'sort-cases.at:57' \
"sort 500 cases (100 unique) with 2 buffers" " " 85
at_xfail=no
(
$as_echo "624. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:57: sort_cases_gen_data 100 5 2"
at_fn_check_prepare_trace "sort-cases.at:57"
( $at_check_trace; sort_cases_gen_data 100 5 2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:57"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x/BUFFERS=2.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:57: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:57"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:57"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:57: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:57"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:57"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_624
#AT_START_625
at_fn_group_banner 625 'sort-cases.at:58' \
"sort 500 cases (100 unique) with 3 buffers" " " 85
at_xfail=no
(
$as_echo "625. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:58: sort_cases_gen_data 100 5 3"
at_fn_check_prepare_trace "sort-cases.at:58"
( $at_check_trace; sort_cases_gen_data 100 5 3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:58"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x/BUFFERS=3.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:58: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:58"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:58"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:58: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:58"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:58"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_625
#AT_START_626
at_fn_group_banner 626 'sort-cases.at:59' \
"sort 500 cases (100 unique) with 4 buffers" " " 85
at_xfail=no
(
$as_echo "626. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:59: sort_cases_gen_data 100 5 4"
at_fn_check_prepare_trace "sort-cases.at:59"
( $at_check_trace; sort_cases_gen_data 100 5 4
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:59"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x/BUFFERS=4.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:59: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:59"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:59"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:59: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:59"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:59"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_626
#AT_START_627
at_fn_group_banner 627 'sort-cases.at:60' \
"sort 500 cases (100 unique) with 5 buffers" " " 85
at_xfail=no
(
$as_echo "627. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:60: sort_cases_gen_data 100 5 5"
at_fn_check_prepare_trace "sort-cases.at:60"
( $at_check_trace; sort_cases_gen_data 100 5 5
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:60"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x/BUFFERS=5.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:60: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:60"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:60"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:60: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:60"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:60"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_627
#AT_START_628
at_fn_group_banner 628 'sort-cases.at:61' \
"sort 500 cases (100 unique) with 10 buffers" " " 85
at_xfail=no
(
$as_echo "628. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:61: sort_cases_gen_data 100 5 10"
at_fn_check_prepare_trace "sort-cases.at:61"
( $at_check_trace; sort_cases_gen_data 100 5 10
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:61"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x/BUFFERS=10.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:61: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:61"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:61"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:61: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:61"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:61"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_628
#AT_START_629
at_fn_group_banner 629 'sort-cases.at:62' \
"sort 500 cases (100 unique) with 50 buffers" " " 85
at_xfail=no
(
$as_echo "629. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:62: sort_cases_gen_data 100 5 50"
at_fn_check_prepare_trace "sort-cases.at:62"
( $at_check_trace; sort_cases_gen_data 100 5 50
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:62"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x/BUFFERS=50.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:62: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:62"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:62"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:62: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:62"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:62"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_629
#AT_START_630
at_fn_group_banner 630 'sort-cases.at:63' \
"sort 500 cases (100 unique) with 100 buffers" " " 85
at_xfail=no
(
$as_echo "630. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:63: sort_cases_gen_data 100 5 100"
at_fn_check_prepare_trace "sort-cases.at:63"
( $at_check_trace; sort_cases_gen_data 100 5 100
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:63"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x/BUFFERS=100.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:63: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:63"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:63"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:63: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:63"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:63"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_630
#AT_START_631
at_fn_group_banner 631 'sort-cases.at:64' \
"sort 500 cases (100 unique)" " " 85
at_xfail=no
(
$as_echo "631. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:64: sort_cases_gen_data 100 5 "
at_fn_check_prepare_trace "sort-cases.at:64"
( $at_check_trace; sort_cases_gen_data 100 5
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:64"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:64: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:64"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:64"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:64: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:64"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:64"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_631
#AT_START_632
at_fn_group_banner 632 'sort-cases.at:66' \
"sort 1000 cases (100 unique) with 2 buffers" " " 85
at_xfail=no
(
$as_echo "632. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:66: sort_cases_gen_data 100 10 2"
at_fn_check_prepare_trace "sort-cases.at:66"
( $at_check_trace; sort_cases_gen_data 100 10 2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:66"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x/BUFFERS=2.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:66: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:66"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:66"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:66: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:66"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:66"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_632
#AT_START_633
at_fn_group_banner 633 'sort-cases.at:67' \
"sort 1000 cases (100 unique) with 3 buffers" " " 85
at_xfail=no
(
$as_echo "633. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:67: sort_cases_gen_data 100 10 3"
at_fn_check_prepare_trace "sort-cases.at:67"
( $at_check_trace; sort_cases_gen_data 100 10 3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:67"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x/BUFFERS=3.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:67: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:67"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:67"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:67: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:67"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:67"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_633
#AT_START_634
at_fn_group_banner 634 'sort-cases.at:68' \
"sort 1000 cases (100 unique) with 5 buffers" " " 85
at_xfail=no
(
$as_echo "634. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:68: sort_cases_gen_data 100 10 5"
at_fn_check_prepare_trace "sort-cases.at:68"
( $at_check_trace; sort_cases_gen_data 100 10 5
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:68"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x/BUFFERS=5.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:68: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:68"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:68"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:68: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:68"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:68"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_634
#AT_START_635
at_fn_group_banner 635 'sort-cases.at:69' \
"sort 1000 cases (100 unique)" " " 85
at_xfail=no
(
$as_echo "635. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:69: sort_cases_gen_data 100 10 "
at_fn_check_prepare_trace "sort-cases.at:69"
( $at_check_trace; sort_cases_gen_data 100 10
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:69"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:69: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:69"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:69"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:69: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:69"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:69"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_635
#AT_START_636
at_fn_group_banner 636 'sort-cases.at:71' \
"sort 5000 cases (1000 unique) with 5 buffers" " " 85
at_xfail=no
(
$as_echo "636. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:71: sort_cases_gen_data 1000 5 5"
at_fn_check_prepare_trace "sort-cases.at:71"
( $at_check_trace; sort_cases_gen_data 1000 5 5
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:71"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x/BUFFERS=5.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:71: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:71"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:71"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:71: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:71"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:71"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_636
#AT_START_637
at_fn_group_banner 637 'sort-cases.at:72' \
"sort 5000 cases (1000 unique) with 50 buffers" " " 85
at_xfail=no
(
$as_echo "637. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:72: sort_cases_gen_data 1000 5 50"
at_fn_check_prepare_trace "sort-cases.at:72"
( $at_check_trace; sort_cases_gen_data 1000 5 50
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:72"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x/BUFFERS=50.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:72: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:72"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:72"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:72: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:72"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:72"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_637
#AT_START_638
at_fn_group_banner 638 'sort-cases.at:73' \
"sort 5000 cases (1000 unique)" " " 85
at_xfail=no
(
$as_echo "638. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:73: sort_cases_gen_data 1000 5 "
at_fn_check_prepare_trace "sort-cases.at:73"
( $at_check_trace; sort_cases_gen_data 1000 5
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:73"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:73: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:73"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:73"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:73: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:73"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:73"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_638
#AT_START_639
at_fn_group_banner 639 'sort-cases.at:75' \
"sort 10000 cases (100 unique) with 3 buffers" " " 85
at_xfail=no
(
$as_echo "639. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:75: sort_cases_gen_data 100 100 3"
at_fn_check_prepare_trace "sort-cases.at:75"
( $at_check_trace; sort_cases_gen_data 100 100 3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:75"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x/BUFFERS=3.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:75: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:75"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:75"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:75: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:75"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:75"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_639
#AT_START_640
at_fn_group_banner 640 'sort-cases.at:76' \
"sort 10000 cases (100 unique) with 5 buffers" " " 85
at_xfail=no
(
$as_echo "640. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:76: sort_cases_gen_data 100 100 5"
at_fn_check_prepare_trace "sort-cases.at:76"
( $at_check_trace; sort_cases_gen_data 100 100 5
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:76"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x/BUFFERS=5.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:76: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:76"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:76"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:76: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:76"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:76"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_640
#AT_START_641
at_fn_group_banner 641 'sort-cases.at:77' \
"sort 10000 cases (100 unique)" " " 85
at_xfail=no
(
$as_echo "641. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:77: sort_cases_gen_data 100 100 "
at_fn_check_prepare_trace "sort-cases.at:77"
( $at_check_trace; sort_cases_gen_data 100 100
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:77"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:77: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:77"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:77"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:77: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:77"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:77"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_641
#AT_START_642
at_fn_group_banner 642 'sort-cases.at:79' \
"sort 50000 cases (10000 unique) with 500 buffers" "" 85
at_xfail=no
(
$as_echo "642. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:79: sort_cases_gen_data 10000 5 500"
at_fn_check_prepare_trace "sort-cases.at:79"
( $at_check_trace; sort_cases_gen_data 10000 5 500
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:79"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x/BUFFERS=500.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:79: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:79"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:79"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:79: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:79"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:79"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_642
#AT_START_643
at_fn_group_banner 643 'sort-cases.at:81' \
"sort 50000 cases" " " 85
at_xfail=no
(
$as_echo "643. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sort-cases.at:81: sort_cases_gen_data 50000 1 "
at_fn_check_prepare_trace "sort-cases.at:81"
( $at_check_trace; sort_cases_gen_data 50000 1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:81"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >sort-cases.sps <<'_ATEOF'
DATA LIST LIST NOTABLE FILE='data.txt'/x y (F8).
SORT CASES BY x.
PRINT OUTFILE='output.txt'/x y.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:81: pspp --testing-mode -o pspp.csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:81"
( $at_check_trace; pspp --testing-mode -o pspp.csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:81"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sort-cases.at:81: cat output.txt"
at_fn_check_prepare_trace "sort-cases.at:81"
( $at_check_trace; cat output.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:81"
$at_failed && at_fn_log_failure \
"data.txt" \
"output.txt" \
"sort-cases.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_643
#AT_START_644
at_fn_group_banner 644 'sort-cases.at:84' \
"SORT CASES preserves filtered cases" " " 85
at_xfail=no
(
$as_echo "644. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sort-cases.sps <<'_ATEOF'
DATA LIST FREE /x.
BEGIN DATA.
5 4 3 2 1 0
END DATA.
COMPUTE mod2 = MOD(x, 2).
LIST.
FILTER BY mod2.
LIST.
SORT CASES BY x.
LIST.
FILTER OFF.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sort-cases.at:99: pspp -O format=csv sort-cases.sps"
at_fn_check_prepare_trace "sort-cases.at:99"
( $at_check_trace; pspp -O format=csv sort-cases.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
x,mod2
5.00,1.00
4.00,.00
3.00,1.00
2.00,.00
1.00,1.00
.00,.00
Table: Data List
x,mod2
5.00,1.00
3.00,1.00
1.00,1.00
Table: Data List
x,mod2
1.00,1.00
3.00,1.00
5.00,1.00
Table: Data List
x,mod2
.00,.00
1.00,1.00
2.00,.00
3.00,1.00
4.00,.00
5.00,1.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sort-cases.at:99"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_644
#AT_START_645
at_fn_group_banner 645 't-test.at:3' \
"T-TEST /PAIRS" " " 86
at_xfail=no
(
$as_echo "645. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >t-test.sps <<'_ATEOF'
data list list /ID * A * B *.
begin data.
1 2.0 3.0
2 1.0 2.0
3 2.0 4.5
4 2.0 4.5
5 3.0 6.0
end data.
t-test /PAIRS a with b (PAIRED).
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:17: pspp -O format=csv t-test.sps"
at_fn_check_prepare_trace "t-test.at:17"
( $at_check_trace; pspp -O format=csv t-test.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
ID,F8.0
A,F8.0
B,F8.0
Table: Paired Sample Statistics
,,Mean,N,Std. Deviation,S.E. Mean
Pair 1,A,2.00,5,.71,.32
,B,4.00,5,1.54,.69
Table: Paired Samples Correlations
,,N,Correlation,Sig.
Pair 1,A & B,5,.92,.028
Table: Paired Samples Test
,,Paired Differences,,,,,,,
,,,,,95% Confidence Interval of the Difference,,,,
,,Mean,Std. Deviation,Std. Error Mean,Lower,Upper,t,df,Sig. (2-tailed)
Pair 1,A - B,-2.00,.94,.42,-3.16,-.84,-4.78,4,.009
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:17"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_645
#AT_START_646
at_fn_group_banner 646 't-test.at:43' \
"T-TEST /PAIRS with per-analysis missing values" " " 86
at_xfail=no
(
$as_echo "646. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >ref.sps <<'_ATEOF'
data list list /id * a * b * c * d *.
begin data.
1 2.0 3.0 4.0 4.0
2 1.0 2.0 5.1 3.9
3 2.0 4.5 5.2 3.8
4 2.0 4.5 5.3 3.7
56 3.0 6.0 5.9 3.6
end data.
t-test /PAIRS a c with b d (PAIRED).
_ATEOF
cat >expout <<'_ATEOF'
Table: Reading free-form data from INLINE.
Variable,Format
id,F8.0
a,F8.0
b,F8.0
c,F8.0
d,F8.0
Table: Paired Sample Statistics
,,Mean,N,Std. Deviation,S.E. Mean
Pair 1,a,2.00,5,.71,.32
,b,4.00,5,1.54,.69
Pair 2,c,5.10,5,.69,.31
,d,3.80,5,.16,.07
Table: Paired Samples Correlations
,,N,Correlation,Sig.
Pair 1,a & b,5,.92,.028
Pair 2,c & d,5,-.92,.028
Table: Paired Samples Test
,,Paired Differences,,,,,,,
,,,,,95% Confidence Interval of the Difference,,,,
,,Mean,Std. Deviation,Std. Error Mean,Lower,Upper,t,df,Sig. (2-tailed)
Pair 1,a - b,-2.00,.94,.42,-3.16,-.84,-4.78,4,.009
Pair 2,c - d,1.30,.84,.37,.26,2.34,3.47,4,.025
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:87: pspp -o ref.csv ref.sps"
at_fn_check_prepare_trace "t-test.at:87"
( $at_check_trace; pspp -o ref.csv ref.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:87"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/t-test.at:88: cat ref.csv"
at_fn_check_prepare_trace "t-test.at:88"
( $at_check_trace; cat ref.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:88"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >missing.sps <<'_ATEOF'
data list list /id * a * b * c * d *.
begin data.
1 2.0 3.0 4.0 4.0
2 1.0 2.0 5.1 3.9
3 2.0 4.5 5.2 3.8
4 2.0 4.5 5.3 3.7
5 3.0 6.0 5.9 .
6 3.0 . 5.9 3.6
end data.
t-test /MISSING=analysis /PAIRS a c with b d (PAIRED) /CRITERIA=CIN(0.95).
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:104: pspp -o missing.csv missing.sps"
at_fn_check_prepare_trace "t-test.at:104"
( $at_check_trace; pspp -o missing.csv missing.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:104"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/t-test.at:105: cat missing.csv"
at_fn_check_prepare_trace "t-test.at:105"
( $at_check_trace; cat missing.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:105"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_646
#AT_START_647
at_fn_group_banner 647 't-test.at:108' \
"T-TEST /PAIRS with listwise missing values" " " 86
at_xfail=no
(
$as_echo "647. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >ref.sps <<'_ATEOF'
data list list /id * a * b * c * d *.
begin data.
1 2.0 3.0 4.0 4.0
2 1.0 2.0 5.1 3.9
3 2.0 4.5 5.2 3.8
4 2.0 4.5 5.3 3.7
5 3.0 6.0 5.9 3.6
end data.
t-test /PAIRS a b with c d (PAIRED).
_ATEOF
cat >expout <<'_ATEOF'
Table: Reading free-form data from INLINE.
Variable,Format
id,F8.0
a,F8.0
b,F8.0
c,F8.0
d,F8.0
Table: Paired Sample Statistics
,,Mean,N,Std. Deviation,S.E. Mean
Pair 1,a,2.00,5,.71,.32
,c,5.10,5,.69,.31
Pair 2,b,4.00,5,1.54,.69
,d,3.80,5,.16,.07
Table: Paired Samples Correlations
,,N,Correlation,Sig.
Pair 1,a & c,5,.41,.493
Pair 2,b & d,5,-.87,.054
Table: Paired Samples Test
,,Paired Differences,,,,,,,
,,,,,95% Confidence Interval of the Difference,,,,
,,Mean,Std. Deviation,Std. Error Mean,Lower,Upper,t,df,Sig. (2-tailed)
Pair 1,a - c,-3.10,.76,.34,-4.04,-2.16,-9.14,4,.001
Pair 2,b - d,.20,1.68,.75,-1.89,2.29,.27,4,.803
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:151: pspp -o ref.csv ref.sps"
at_fn_check_prepare_trace "t-test.at:151"
( $at_check_trace; pspp -o ref.csv ref.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:151"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/t-test.at:153: cat ref.csv"
at_fn_check_prepare_trace "t-test.at:153"
( $at_check_trace; cat ref.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:153"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >missing.sps <<'_ATEOF'
data list list /id * a * b * c * d *.
begin data.
1 2.0 3.0 4.0 4.0
2 1.0 2.0 5.1 3.9
3 2.0 4.5 5.2 3.8
4 2.0 4.5 5.3 3.7
5 3.0 6.0 5.9 3.6
6 3.0 6.0 5.9 .
end data.
t-test /MISSING=listwise /PAIRS a b with c d (PAIRED).
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:169: pspp -o missing.csv missing.sps"
at_fn_check_prepare_trace "t-test.at:169"
( $at_check_trace; pspp -o missing.csv missing.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:169"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/t-test.at:170: cat missing.csv"
at_fn_check_prepare_trace "t-test.at:170"
( $at_check_trace; cat missing.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:170"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_647
#AT_START_648
at_fn_group_banner 648 't-test.at:175' \
"T-TEST /PAIRS bug" " " 86
at_xfail=no
(
$as_echo "648. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >t-test.sps <<'_ATEOF'
set format f8.3.
data list list /A * B *.
begin data.
11 2
1 1
1 1
end data.
t-test pairs = a with b (paired).
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:187: pspp -o pspp.csv t-test.sps"
at_fn_check_prepare_trace "t-test.at:187"
( $at_check_trace; pspp -o pspp.csv t-test.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:187"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/t-test.at:188: cat pspp.csv"
at_fn_check_prepare_trace "t-test.at:188"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
A,F8.0
B,F8.0
Table: Paired Sample Statistics
,,Mean,N,Std. Deviation,S.E. Mean
Pair 1,A,4.333,3,5.774,3.333
,B,1.333,3,.577,.333
Table: Paired Samples Correlations
,,N,Correlation,Sig.
Pair 1,A & B,3,1.000,.000
Table: Paired Samples Test
,,Paired Differences,,,,,,,
,,,,,95% Confidence Interval of the Difference,,,,
,,Mean,Std. Deviation,Std. Error Mean,Lower,Upper,t,df,Sig. (2-tailed)
Pair 1,A - B,3.000,5.196,3.000,-9.908,15.908,1.000,2,.423
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:188"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_648
#AT_START_649
at_fn_group_banner 649 't-test.at:211' \
"T-TEST /GROUPS" " " 86
at_xfail=no
(
$as_echo "649. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >t-test.sps <<'_ATEOF'
data list list /ID * INDEP * DEP1 * DEP2 *.
begin data.
1 1.1 1 3
2 1.1 2 4
3 1.1 2 4
4 1.1 2 4
5 1.1 3 5
6 2.1 3 1
7 2.1 4 2
8 2.1 4 2
9 2.1 4 2
10 2.1 5 3
11 3.1 2 2
end data.
* Note that the last case should be IGNORED since it doesn't have a
dependent variable of either 1.1 or 2.1.
t-test /GROUPS=indep(1.1,2.1) /var=dep1 dep2.
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:234: pspp -O format=csv t-test.sps"
at_fn_check_prepare_trace "t-test.at:234"
( $at_check_trace; pspp -O format=csv t-test.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
ID,F8.0
INDEP,F8.0
DEP1,F8.0
DEP2,F8.0
Table: Group Statistics
,INDEP,N,Mean,Std. Deviation,S.E. Mean
DEP1,1.10,5,2.00,.71,.32
,2.10,5,4.00,.71,.32
DEP2,1.10,5,4.00,.71,.32
,2.10,5,2.00,.71,.32
Table: Independent Samples Test
,,Levene's Test for Equality of Variances,,t-test for Equality of Means,,,,,,
,,,,,,,,,95% Confidence Interval of the Difference,
,,F,Sig.,t,df,Sig. (2-tailed),Mean Difference,Std. Error Difference,Lower,Upper
DEP1,Equal variances assumed,.00,1.000,-4.47,8.00,.002,-2.00,.45,-3.03,-.97
,Equal variances not assumed,,,-4.47,8.00,.002,-2.00,.45,-3.03,-.97
DEP2,Equal variances assumed,.00,1.000,4.47,8.00,.002,2.00,.45,.97,3.03
,Equal variances not assumed,,,4.47,8.00,.002,2.00,.45,.97,3.03
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:234"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_649
#AT_START_650
at_fn_group_banner 650 't-test.at:261' \
"T-TEST /GROUPS with one value for independent variable" "" 86
at_xfail=no
(
$as_echo "650. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >t-test.sps <<'_ATEOF'
data list list /INDEP * DEP *.
begin data.
1 6
1 6
1 7
1 6
1 13
1 4
1 7
1 9
1 7
1 12
1 11
2 11
2 9
2 8
2 4
2 16
2 9
2 9
2 5
2 4
2 10
2 14
end data.
t-test /groups=indep(1.514) /var=dep.
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:291: pspp -O format=csv t-test.sps"
at_fn_check_prepare_trace "t-test.at:291"
( $at_check_trace; pspp -O format=csv t-test.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
INDEP,F8.0
DEP,F8.0
Table: Group Statistics
,INDEP,N,Mean,Std. Deviation,S.E. Mean
DEP,≥ 1.51,11,9.00,3.82,1.15
,< 1.51,11,8.00,2.86,.86
Table: Independent Samples Test
,,Levene's Test for Equality of Variances,,t-test for Equality of Means,,,,,,
,,,,,,,,,95% Confidence Interval of the Difference,
,,F,Sig.,t,df,Sig. (2-tailed),Mean Difference,Std. Error Difference,Lower,Upper
DEP,Equal variances assumed,.17,.683,.69,20.00,.495,1.00,1.44,-2.00,4.00
,Equal variances not assumed,,,.69,18.54,.496,1.00,1.44,-2.02,4.02
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:291"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_650
#AT_START_651
at_fn_group_banner 651 't-test.at:311' \
"T-TEST /GROUPS with per-analysis missing values" "" 86
at_xfail=no
(
$as_echo "651. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >ref.sps <<'_ATEOF'
data list list /id * indep * dep1 * dep2 *.
begin data.
1 1.0 3.5 6
2 1.0 2.0 5
3 1.0 2.0 4
4 2.0 3.5 3
56 2.0 3.0 1
end data.
t-test /group=indep /var=dep1, dep2.
_ATEOF
cat >expout <<'_ATEOF'
Table: Reading free-form data from INLINE.
Variable,Format
id,F8.0
indep,F8.0
dep1,F8.0
dep2,F8.0
Table: Group Statistics
,indep,N,Mean,Std. Deviation,S.E. Mean
dep1,1.00,3,2.50,.87,.50
,2.00,2,3.25,.35,.25
dep2,1.00,3,5.00,1.00,.58
,2.00,2,2.00,1.41,1.00
Table: Independent Samples Test
,,Levene's Test for Equality of Variances,,t-test for Equality of Means,,,,,,
,,,,,,,,,95% Confidence Interval of the Difference,
,,F,Sig.,t,df,Sig. (2-tailed),Mean Difference,Std. Error Difference,Lower,Upper
dep1,Equal variances assumed,3.75,.148,-1.12,3.00,.346,-.75,.67,-2.89,1.39
,Equal variances not assumed,,,-1.34,2.78,.279,-.75,.56,-2.61,1.11
dep2,Equal variances assumed,.60,.495,2.85,3.00,.065,3.00,1.05,-.35,6.35
,Equal variances not assumed,,,2.60,1.68,.144,3.00,1.15,-2.98,8.98
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:348: pspp -o ref.csv ref.sps"
at_fn_check_prepare_trace "t-test.at:348"
( $at_check_trace; pspp -o ref.csv ref.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:348"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/t-test.at:349: cat ref.csv"
at_fn_check_prepare_trace "t-test.at:349"
( $at_check_trace; cat ref.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:349"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >missing.sps <<'_ATEOF'
data list list /id * indep * dep1 * dep2.
begin data.
1 1.0 3.5 6
2 1.0 2.0 5
3 1.0 2.0 4
4 2.0 3.5 3
5 2.0 3.0 .
6 2.0 . 1
7 . 3.1 5
end data.
* Note that if the independent variable is missing, then it's implicitly
* listwise missing.
t-test /missing=analysis /group=indep /var=dep1 dep2.
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:367: pspp -o missing.csv missing.sps"
at_fn_check_prepare_trace "t-test.at:367"
( $at_check_trace; pspp -o missing.csv missing.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:367"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/t-test.at:368: cat missing.csv"
at_fn_check_prepare_trace "t-test.at:368"
( $at_check_trace; cat missing.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:368"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_651
#AT_START_652
at_fn_group_banner 652 't-test.at:371' \
"T-TEST /GROUPS with listwise missing values" " " 86
at_xfail=no
(
$as_echo "652. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >ref.sps <<'_ATEOF'
data list list /id * indep * dep1 * dep2.
begin data.
1 1.0 3.5 6
2 1.0 2.0 5
3 1.0 2.0 4
4 2.0 3.5 3
5 2.0 3.0 2
6 2.0 4.0 1
end data.
t-test /group=indep /var=dep1 dep2.
_ATEOF
cat >expout <<'_ATEOF'
Table: Reading free-form data from INLINE.
Variable,Format
id,F8.0
indep,F8.0
dep1,F8.0
dep2,F8.0
Table: Group Statistics
,indep,N,Mean,Std. Deviation,S.E. Mean
dep1,1.00,3,2.50,.87,.50
,2.00,3,3.50,.50,.29
dep2,1.00,3,5.00,1.00,.58
,2.00,3,2.00,1.00,.58
Table: Independent Samples Test
,,Levene's Test for Equality of Variances,,t-test for Equality of Means,,,,,,
,,,,,,,,,95% Confidence Interval of the Difference,
,,F,Sig.,t,df,Sig. (2-tailed),Mean Difference,Std. Error Difference,Lower,Upper
dep1,Equal variances assumed,2.00,.230,-1.73,4.00,.158,-1.00,.58,-2.60,.60
,Equal variances not assumed,,,-1.73,3.20,.176,-1.00,.58,-2.77,.77
dep2,Equal variances assumed,.00,1.000,3.67,4.00,.021,3.00,.82,.73,5.27
,Equal variances not assumed,,,3.67,4.00,.021,3.00,.82,.73,5.27
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:411: pspp -o ref.csv ref.sps"
at_fn_check_prepare_trace "t-test.at:411"
( $at_check_trace; pspp -o ref.csv ref.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:411"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/t-test.at:412: cat ref.csv"
at_fn_check_prepare_trace "t-test.at:412"
( $at_check_trace; cat ref.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:412"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >missing.sps <<'_ATEOF'
data list list /id * indep * dep1 * dep2 *.
begin data.
1 1.0 3.5 6
2 1.0 2.0 5
3 1.0 2.0 4
4 2.0 3.5 3
5 2.0 3.0 2
6 2.0 4.0 1
7 2.0 . 0
end data.
t-test /missing=listwise,exclude /group=indep /var=dep1, dep2.
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:427: pspp -o missing.csv missing.sps"
at_fn_check_prepare_trace "t-test.at:427"
( $at_check_trace; pspp -o missing.csv missing.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:427"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/t-test.at:428: cat missing.csv"
at_fn_check_prepare_trace "t-test.at:428"
( $at_check_trace; cat missing.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:428"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_652
#AT_START_653
at_fn_group_banner 653 't-test.at:431' \
"T-TEST /TESTVAL" " " 86
at_xfail=no
(
$as_echo "653. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >t-test.sps <<'_ATEOF'
data list list /ID * ABC *.
begin data.
1 3.5
2 2.0
3 2.0
4 3.5
5 3.0
6 4.0
end data.
t-test /testval=2.0 /var=abc.
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:445: pspp -O format=csv t-test.sps"
at_fn_check_prepare_trace "t-test.at:445"
( $at_check_trace; pspp -O format=csv t-test.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
ID,F8.0
ABC,F8.0
Table: One-Sample Statistics
,N,Mean,Std. Deviation,S.E. Mean
ABC,6,3.00,.84,.34
Table: One-Sample Test
,Test Value = 2.000000,,,,,
,,,,,95% Confidence Interval of the Difference,
,t,df,Sig. (2-tailed),Mean Difference,Lower,Upper
ABC,2.93,5,.033,1.00,.12,1.88
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:445"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_653
#AT_START_654
at_fn_group_banner 654 't-test.at:463' \
"T-TEST /TESTVAL with per-analysis missing values" "" 86
at_xfail=no
(
$as_echo "654. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >ref.sps <<'_ATEOF'
data list list /id * x1 * x2.
begin data.
1 3.5 34
2 2.0 10
3 2.0 23
4 3.5 98
5 3.0 23
67 4.0 8
end data.
t-test /testval=3.0 /var=x1 x2.
_ATEOF
cat >expout <<'_ATEOF'
Table: Reading free-form data from INLINE.
Variable,Format
id,F8.0
x1,F8.0
x2,F8.0
Table: One-Sample Statistics
,N,Mean,Std. Deviation,S.E. Mean
x1,6,3.00,.84,.34
x2,6,32.67,33.40,13.64
Table: One-Sample Test
,Test Value = 3.000000,,,,,
,,,,,95% Confidence Interval of the Difference,
,t,df,Sig. (2-tailed),Mean Difference,Lower,Upper
x1,.00,5,1.000,.00,-.88,.88
x2,2.18,5,.082,29.67,-5.39,64.72
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:496: pspp -o ref.csv ref.sps"
at_fn_check_prepare_trace "t-test.at:496"
( $at_check_trace; pspp -o ref.csv ref.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:496"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/t-test.at:497: cat ref.csv"
at_fn_check_prepare_trace "t-test.at:497"
( $at_check_trace; cat ref.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:497"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >missing.sps <<'_ATEOF'
data list list /id * x1 * x2.
begin data.
1 3.5 34
2 2.0 10
3 2.0 23
4 3.5 98
5 3.0 23
6 4.0 .
7 . 8
end data.
t-test /missing=analysis /testval=3.0 /var=x1 x2.
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:512: pspp -o missing.csv missing.sps"
at_fn_check_prepare_trace "t-test.at:512"
( $at_check_trace; pspp -o missing.csv missing.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:512"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/t-test.at:513: cat missing.csv"
at_fn_check_prepare_trace "t-test.at:513"
( $at_check_trace; cat missing.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:513"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_654
#AT_START_655
at_fn_group_banner 655 't-test.at:516' \
"T-TEST /TESTVAL with listwise missing values" " " 86
at_xfail=no
(
$as_echo "655. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >ref.sps <<'_ATEOF'
data list list /id * x1 * x2.
begin data.
1 3.5 34
2 2.0 10
3 2.0 23
4 3.5 98
5 3.0 23
end data.
t-test /testval=3.0 /var=x1 x2.
_ATEOF
cat >expout <<'_ATEOF'
Table: Reading free-form data from INLINE.
Variable,Format
id,F8.0
x1,F8.0
x2,F8.0
Table: One-Sample Statistics
,N,Mean,Std. Deviation,S.E. Mean
x1,5,2.80,.76,.34
x2,5,37.60,34.82,15.57
Table: One-Sample Test
,Test Value = 3.000000,,,,,
,,,,,95% Confidence Interval of the Difference,
,t,df,Sig. (2-tailed),Mean Difference,Lower,Upper
x1,-.59,4,.587,-.20,-1.14,.74
x2,2.22,4,.090,34.60,-8.63,77.83
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:548: pspp -o ref.csv ref.sps"
at_fn_check_prepare_trace "t-test.at:548"
( $at_check_trace; pspp -o ref.csv ref.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:548"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/t-test.at:549: cat ref.csv"
at_fn_check_prepare_trace "t-test.at:549"
( $at_check_trace; cat ref.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:549"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >missing.sps <<'_ATEOF'
data list list /id * x1 * x2.
begin data.
1 3.5 34
2 2.0 10
3 2.0 23
4 3.5 98
5 3.0 23
6 4.0 99
end data.
MISSING VALUES x2(99).
t-test /missing=listwise /testval=3.0 /var=x1 x2.
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:565: pspp -o missing.csv missing.sps"
at_fn_check_prepare_trace "t-test.at:565"
( $at_check_trace; pspp -o missing.csv missing.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:565"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/t-test.at:566: cat missing.csv"
at_fn_check_prepare_trace "t-test.at:566"
( $at_check_trace; cat missing.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:566"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_655
#AT_START_656
at_fn_group_banner 656 't-test.at:569' \
"T-TEST wih TEMPORARY transformation" " " 86
at_xfail=no
(
$as_echo "656. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >ref.sps <<'_ATEOF'
data list list /ind * x * .
begin data.
1 3.5
1 2.0
1 2.0
2 3.5
2 3.0
2 4.0
end data.
t-test /groups=ind(1,2) /var x.
_ATEOF
cat >expout <<'_ATEOF'
Table: Reading free-form data from INLINE.
Variable,Format
ind,F8.0
x,F8.0
Table: Group Statistics
,ind,N,Mean,Std. Deviation,S.E. Mean
x,1.00,3,2.50,.87,.50
,2.00,3,3.50,.50,.29
Table: Independent Samples Test
,,Levene's Test for Equality of Variances,,t-test for Equality of Means,,,,,,
,,,,,,,,,95% Confidence Interval of the Difference,
,,F,Sig.,t,df,Sig. (2-tailed),Mean Difference,Std. Error Difference,Lower,Upper
x,Equal variances assumed,2.00,.230,-1.73,4.00,.158,-1.00,.58,-2.60,.60
,Equal variances not assumed,,,-1.73,3.20,.176,-1.00,.58,-2.77,.77
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:601: pspp -o ref.csv ref.sps"
at_fn_check_prepare_trace "t-test.at:601"
( $at_check_trace; pspp -o ref.csv ref.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:601"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/t-test.at:602: cat ref.csv"
at_fn_check_prepare_trace "t-test.at:602"
( $at_check_trace; cat ref.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:602"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >temporary.sps <<'_ATEOF'
data list list /ind * x * .
begin data.
1 3.5
1 2.0
1 2.0
2 3.5
2 3.0
2 4.0
2 9.0
end data.
TEMPORARY.
SELECT IF x < 7.
t-test /groups=ind(1,2) /var x.
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:620: pspp -o temporary.csv temporary.sps"
at_fn_check_prepare_trace "t-test.at:620"
( $at_check_trace; pspp -o temporary.csv temporary.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:620"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/t-test.at:621: cat temporary.csv"
at_fn_check_prepare_trace "t-test.at:621"
( $at_check_trace; cat temporary.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:621"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_656
#AT_START_657
at_fn_group_banner 657 't-test.at:625' \
"T-TEST invalid syntax" " " 86
at_xfail=no
(
$as_echo "657. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >t-test.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /id * a * .
BEGIN DATA.
1 3.5
2 2.0
3 2.0
4 3.5
5 3.0
6 4.0
END DATA.
T-TEST /testval=2.0 .
T-TEST /groups=id(3) .
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:640: pspp -O format=csv t-test.sps"
at_fn_check_prepare_trace "t-test.at:640"
( $at_check_trace; pspp -O format=csv t-test.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "t-test.sps:11: error: T-TEST: Required subcommand VARIABLES was not specified.
t-test.sps:12: error: T-TEST: Required subcommand VARIABLES was not specified.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/t-test.at:640"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_657
#AT_START_658
at_fn_group_banner 658 't-test.at:648' \
"T-TEST string variable" " " 86
at_xfail=no
(
$as_echo "658. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >t-test.sps <<'_ATEOF'
data list list /ID * INDEP (a1) DEP1 * DEP2 *.
begin data.
1 'a' 1 3
2 'a' 2 4
3 'a' 2 4
4 'a' 2 4
5 'a' 3 5
6 'b' 3 1
7 'b' 4 2
8 'b' 4 2
9 'b' 4 2
10 'b' 5 3
11 'c' 2 2
end data.
t-test /GROUPS=indep('a','b') /var=dep1 dep2.
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:669: pspp -O format=csv t-test.sps"
at_fn_check_prepare_trace "t-test.at:669"
( $at_check_trace; pspp -O format=csv t-test.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
ID,F8.0
INDEP,A1
DEP1,F8.0
DEP2,F8.0
Table: Group Statistics
,INDEP,N,Mean,Std. Deviation,S.E. Mean
DEP1,a,5,2.00,.71,.32
,b,5,4.00,.71,.32
DEP2,a,5,4.00,.71,.32
,b,5,2.00,.71,.32
Table: Independent Samples Test
,,Levene's Test for Equality of Variances,,t-test for Equality of Means,,,,,,
,,,,,,,,,95% Confidence Interval of the Difference,
,,F,Sig.,t,df,Sig. (2-tailed),Mean Difference,Std. Error Difference,Lower,Upper
DEP1,Equal variances assumed,.00,1.000,-4.47,8.00,.002,-2.00,.45,-3.03,-.97
,Equal variances not assumed,,,-4.47,8.00,.002,-2.00,.45,-3.03,-.97
DEP2,Equal variances assumed,.00,1.000,4.47,8.00,.002,2.00,.45,.97,3.03
,Equal variances not assumed,,,4.47,8.00,.002,2.00,.45,.97,3.03
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:669"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_658
#AT_START_659
at_fn_group_banner 659 't-test.at:695' \
"T-TEST string variable, only one value" " " 86
at_xfail=no
(
$as_echo "659. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >t-test.sps <<'_ATEOF'
data list list notable /id * indep (a1) dep1 * dep2 *.
begin data.
1 'a' 1 3
2 'a' 2 4
3 'a' 2 4
4 'a' 2 4
5 'a' 3 5
6 'b' 3 1
7 'b' 4 2
8 'b' 4 2
9 'b' 4 2
10 'b' 5 3
11 'c' 2 2
end data.
t-test /GROUPS=indep('a') /var=dep1 dep2.
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:715: pspp -O format=csv t-test.sps"
at_fn_check_prepare_trace "t-test.at:715"
( $at_check_trace; pspp -O format=csv t-test.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"t-test.sps:17: error: T-TEST: When applying GROUPS to a string variable, two values must be specified.\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/t-test.at:715"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_659
#AT_START_660
at_fn_group_banner 660 't-test.at:721' \
"T-TEST string variable comparison bug" " " 86
at_xfail=no
(
$as_echo "660. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >t-test.sps <<'_ATEOF'
data list list /x * gv (a8).
begin data.
3 One
2 One
3 One
2 One
3 One
4 Two
3.5 Two
3.0 Two
end data.
t-test group=gv('One', 'Two')
/variables = x.
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:739: pspp -O format=csv t-test.sps"
at_fn_check_prepare_trace "t-test.at:739"
( $at_check_trace; pspp -O format=csv t-test.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
x,F8.0
gv,A8
Table: Group Statistics
,gv,N,Mean,Std. Deviation,S.E. Mean
x,One ,5,2.60,.55,.24
,Two ,3,3.50,.50,.29
Table: Independent Samples Test
,,Levene's Test for Equality of Variances,,t-test for Equality of Means,,,,,,
,,,,,,,,,95% Confidence Interval of the Difference,
,,F,Sig.,t,df,Sig. (2-tailed),Mean Difference,Std. Error Difference,Lower,Upper
x,Equal variances assumed,1.13,.329,-2.32,6.00,.060,-.90,.39,-1.85,.05
,Equal variances not assumed,,,-2.38,4.70,.067,-.90,.38,-1.89,.09
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:739"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_660
#AT_START_661
at_fn_group_banner 661 't-test.at:762' \
"T-TEST wrong group" " " 86
at_xfail=no
(
$as_echo "661. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >t-test-crs.sps <<'_ATEOF'
data list list /x * g *.
begin data.
1 2
2 2
3 2
4 2
5 2
end data.
t-test /variables = x group=g(1,3).
_ATEOF
{ set +x
$as_echo "$at_srcdir/t-test.at:776: pspp t-test-crs.sps"
at_fn_check_prepare_trace "t-test.at:776"
( $at_check_trace; pspp t-test-crs.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/t-test.at:776"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_661
#AT_START_662
at_fn_group_banner 662 'cache.at:3' \
"CACHE" " " 87
at_xfail=no
(
$as_echo "662. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >cache.sps <<'_ATEOF'
CACHE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/cache.at:7: pspp -O format=csv cache.sps"
at_fn_check_prepare_trace "cache.at:7"
( $at_check_trace; pspp -O format=csv cache.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/cache.at:7"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_662
#AT_START_663
at_fn_group_banner 663 'cd.at:3' \
"CD" " " 88
at_xfail=no
(
$as_echo "663. $at_setup_line: testing $at_desc ..."
$at_traceon
mkdir subdir
cat >cd.sps <<'_ATEOF'
cd 'subdir'.
host command=['pwd > mydir'].
_ATEOF
{ set +x
$as_echo "$at_srcdir/cd.at:9: pspp -O format=csv cd.sps"
at_fn_check_prepare_trace "cd.at:9"
( $at_check_trace; pspp -O format=csv cd.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/cd.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/cd.at:11: sed 's,.*/,,' subdir/mydir"
at_fn_check_prepare_trace "cd.at:11"
( $at_check_trace; sed 's,.*/,,' subdir/mydir
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "subdir
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/cd.at:11"
$at_failed && at_fn_log_failure \
"subdir/mydir"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_663
#AT_START_664
at_fn_group_banner 664 'date.at:3' \
"USE ALL" " " 89
at_xfail=no
(
$as_echo "664. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >use.sps <<'_ATEOF'
data list notable /X 1-2.
begin data.
1
2
3
4
5
6
7
8
9
10
end data.
use all.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/date.at:21: pspp -o pspp.csv use.sps"
at_fn_check_prepare_trace "date.at:21"
( $at_check_trace; pspp -o pspp.csv use.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/date.at:21"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/date.at:22: cat pspp.csv"
at_fn_check_prepare_trace "date.at:22"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
X
1
2
3
4
5
6
7
8
9
10
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/date.at:22"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_664
#AT_START_665
at_fn_group_banner 665 'insert.at:15' \
"INSERT SYNTAX=INTERACTIVE" " " 90
at_xfail=no
(
$as_echo "665. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >batch.sps <<'_ATEOF'
input program
loop #i = 1 to 5
+ compute z = #i
+ end case
end loop
end file
end input program
_ATEOF
cat >insert.sps <<'_ATEOF'
INSERT
FILE='batch.sps'
SYNTAX=interactive.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/insert.at:23: pspp -o pspp.csv insert.sps"
at_fn_check_prepare_trace "insert.at:23"
( $at_check_trace; pspp -o pspp.csv insert.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "batch.sps:2.1-2.4: error: INPUT PROGRAM: Syntax error at \`loop': expecting end of command.
batch.sps:3: error: COMPUTE: COMPUTE is allowed only after the active dataset has been defined or inside INPUT PROGRAM.
batch.sps:4: error: END CASE: END CASE is allowed only inside INPUT PROGRAM.
insert.sps:4: error: LIST: LIST is allowed only after the active dataset has been defined.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/insert.at:23"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_665
#AT_START_666
at_fn_group_banner 666 'insert.at:31' \
"INSERT SYNTAX=BATCH" " " 90
at_xfail=no
(
$as_echo "666. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >batch.sps <<'_ATEOF'
input program
loop #i = 1 to 5
+ compute z = #i
+ end case
end loop
end file
end input program
_ATEOF
cat >insert.sps <<'_ATEOF'
INSERT
FILE='batch.sps'
SYNTAX=BATCH.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/insert.at:39: pspp -o pspp.csv insert.sps"
at_fn_check_prepare_trace "insert.at:39"
( $at_check_trace; pspp -o pspp.csv insert.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/insert.at:39"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/insert.at:40: cat pspp.csv"
at_fn_check_prepare_trace "insert.at:40"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
z
1.00
2.00
3.00
4.00
5.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/insert.at:40"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_666
#AT_START_667
at_fn_group_banner 667 'insert.at:51' \
"INSERT CD=NO" " " 90
at_xfail=no
(
$as_echo "667. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >insert.sps <<'_ATEOF'
INSERT FILE='Dir1/foo.sps'.
LIST.
_ATEOF
mkdir Dir1
cat >Dir1/foo.sps <<'_ATEOF'
INSERT FILE='bar.sps' CD=NO.
_ATEOF
cat >Dir1/bar.sps <<'_ATEOF'
DATA LIST LIST /x *.
BEGIN DATA.
1
2
3
END DATA.
_ATEOF
{ set +x
$as_echo "$at_srcdir/insert.at:66: pspp -o pspp.csv insert.sps"
at_fn_check_prepare_trace "insert.at:66"
( $at_check_trace; pspp -o pspp.csv insert.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Dir1/foo.sps:1: error: INSERT: Can't find \`bar.sps' in include file search path.
insert.sps:2: error: LIST: LIST is allowed only after the active dataset has been defined.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/insert.at:66"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_667
#AT_START_668
at_fn_group_banner 668 'insert.at:72' \
"INSERT CD=YES" " " 90
at_xfail=no
(
$as_echo "668. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >insert.sps <<'_ATEOF'
INSERT FILE='Dir1/foo.sps' CD=YES.
LIST.
_ATEOF
mkdir Dir1
cat >Dir1/foo.sps <<'_ATEOF'
INSERT FILE='bar.sps'.
_ATEOF
cat >Dir1/bar.sps <<'_ATEOF'
DATA LIST LIST /x *.
BEGIN DATA.
1
2
3
END DATA.
_ATEOF
{ set +x
$as_echo "$at_srcdir/insert.at:87: pspp -o pspp.csv insert.sps"
at_fn_check_prepare_trace "insert.at:87"
( $at_check_trace; pspp -o pspp.csv insert.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/insert.at:87"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/insert.at:88: cat pspp.csv"
at_fn_check_prepare_trace "insert.at:88"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
x,F8.0
Table: Data List
x
1.00
2.00
3.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/insert.at:88"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_668
#AT_START_669
at_fn_group_banner 669 'insert.at:116' \
"INSERT ERROR=STOP" " " 90
at_xfail=no
(
$as_echo "669. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >error.sps <<'_ATEOF'
DATA LIST NOTABLE LIST /x *.
BEGIN DATA.
1
2
3
END DATA.
* The following line is erroneous
DISPLAY AKSDJ.
LIST.
_ATEOF
cat >insert.sps <<'_ATEOF'
INSERT FILE='error.sps' ERROR=STOP.
_ATEOF
{ set +x
$as_echo "$at_srcdir/insert.at:120: pspp -o pspp.csv insert.sps"
at_fn_check_prepare_trace "insert.at:120"
( $at_check_trace; pspp -o pspp.csv insert.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error.sps:10: error: DISPLAY: AKSDJ is not a variable name.
warning: Error encountered while ERROR=STOP is effective.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/insert.at:120"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_669
#AT_START_670
at_fn_group_banner 670 'insert.at:126' \
"INSERT ERROR=CONTINUE" " " 90
at_xfail=no
(
$as_echo "670. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >error.sps <<'_ATEOF'
DATA LIST NOTABLE LIST /x *.
BEGIN DATA.
1
2
3
END DATA.
* The following line is erroneous
DISPLAY AKSDJ.
LIST.
_ATEOF
cat >insert.sps <<'_ATEOF'
INSERT FILE='error.sps' ERROR=CONTINUE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/insert.at:130: pspp -o pspp.csv insert.sps"
at_fn_check_prepare_trace "insert.at:130"
( $at_check_trace; pspp -o pspp.csv insert.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error.sps:10: error: DISPLAY: AKSDJ is not a variable name.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/insert.at:130"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/insert.at:133: cat pspp.csv"
at_fn_check_prepare_trace "insert.at:133"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error.sps:10: error: DISPLAY: AKSDJ is not a variable name.
Table: Data List
x
1.00
2.00
3.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/insert.at:133"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_670
#AT_START_671
at_fn_group_banner 671 'insert.at:146' \
"INSERT nonexistent file" " " 90
at_xfail=no
(
$as_echo "671. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >insert.sps <<'_ATEOF'
INSERT
FILE='nonexistent'
ERROR=CONTINUE.
.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/insert.at:155: pspp -O format=csv insert.sps"
at_fn_check_prepare_trace "insert.at:155"
( $at_check_trace; pspp -O format=csv insert.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "insert.sps:2: error: INSERT: Can't find \`nonexistent' in include file search path.
insert.sps:6: error: LIST: LIST is allowed only after the active dataset has been defined.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/insert.at:155"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_671
#AT_START_672
at_fn_group_banner 672 'permissions.at:3' \
"PERMISSIONS" " " 91
at_xfail=no
(
$as_echo "672. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >foobar <<'_ATEOF'
Hello
_ATEOF
chmod 666 foobar
{ set +x
$as_echo "$at_srcdir/permissions.at:8: ls -l foobar"
at_fn_check_prepare_trace "permissions.at:8"
( $at_check_trace; ls -l foobar
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/permissions.at:8"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/permissions.at:9: sed 's/^\\(..........\\).*/\\1/' stdout"
at_fn_check_prepare_trace "permissions.at:9"
( $at_check_trace; sed 's/^\(..........\).*/\1/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "-rw-rw-rw-
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/permissions.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >permissions.sps <<'_ATEOF'
PERMISSIONS /FILE='foobar' PERMISSIONS=READONLY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/permissions.at:14: pspp -O format=csv permissions.sps"
at_fn_check_prepare_trace "permissions.at:14"
( $at_check_trace; pspp -O format=csv permissions.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/permissions.at:14"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/permissions.at:15: ls -l foobar"
at_fn_check_prepare_trace "permissions.at:15"
( $at_check_trace; ls -l foobar
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/permissions.at:15"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/permissions.at:16: sed 's/^\\(..........\\).*/\\1/' stdout"
at_fn_check_prepare_trace "permissions.at:16"
( $at_check_trace; sed 's/^\(..........\).*/\1/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "-r--r--r--
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/permissions.at:16"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >permissions.sps <<'_ATEOF'
PERMISSIONS /FILE='foobar' PERMISSIONS=WRITEABLE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/permissions.at:21: pspp -O format=csv permissions.sps"
at_fn_check_prepare_trace "permissions.at:21"
( $at_check_trace; pspp -O format=csv permissions.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/permissions.at:21"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/permissions.at:22: ls -l foobar"
at_fn_check_prepare_trace "permissions.at:22"
( $at_check_trace; ls -l foobar
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; tee stdout <"$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/permissions.at:22"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/permissions.at:23: sed 's/^\\(..........\\).*/\\1/' stdout"
at_fn_check_prepare_trace "permissions.at:23"
( $at_check_trace; sed 's/^\(..........\).*/\1/' stdout
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "-rw-r--r--
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/permissions.at:23"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_672
#AT_START_673
at_fn_group_banner 673 'set.at:4' \
"SET FORMAT to invalid output format" " " 92
at_xfail=no
(
$as_echo "673. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >set.pspp <<'_ATEOF'
DATA LIST LIST NOTABLE /x.
BEGIN DATA.
1
2
3
END DATA.
SET FORMAT F41.
DESCRIPTIVES /x.
_ATEOF
{ set +x
$as_echo "$at_srcdir/set.at:15: pspp -O format=csv set.pspp"
at_fn_check_prepare_trace "set.at:15"
( $at_check_trace; pspp -O format=csv set.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"set.pspp:7: error: SET: Output format F41.0 specifies width 41, but F requires a width between 1 and 40.\"
Table: Valid cases = 3; cases with missing value(s) = 0.
Variable,N,Mean,Std Dev,Minimum,Maximum
x,3,2.00,1.00,1.00,3.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/set.at:15"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_673
#AT_START_674
at_fn_group_banner 674 'set.at:26' \
"SET MXWARNS" " " 92
at_xfail=no
(
$as_echo "674. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >set.pspp <<'_ATEOF'
set mxwarns=2.
data list notable list /x (f8.2) y (f8.2).
begin data
1 2
3 r
5 x
q 8
9 9
3 x
w w
end data.
comment The following line should not be executed.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/set.at:47: pspp -O format=csv set.pspp"
at_fn_check_prepare_trace "set.at:47"
( $at_check_trace; pspp -O format=csv set.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "set.pspp:5.3: warning: Data for variable y is not valid as format F: Field contents are not numeric.
set.pspp:6.3: warning: Data for variable y is not valid as format F: Field contents are not numeric.
set.pspp:7.1: warning: Data for variable x is not valid as format F: Field contents are not numeric.
note: Warnings (3) exceed limit (2). Syntax processing will be halted.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/set.at:47"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_674
#AT_START_675
at_fn_group_banner 675 'set.at:62' \
"SET MXWARNS special case zero" " " 92
at_xfail=no
(
$as_echo "675. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >mxwarns.pspp <<'_ATEOF'
set mxwarns=0.
data list notable list /x (f8.2) y (f8.2) z *.
begin data
1 2 3
3 r 3
5 x 3
q 8 4
9 9 4
3 x 4
w w 4
end data.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/set.at:80: pspp -O format=csv mxwarns.pspp"
at_fn_check_prepare_trace "set.at:80"
( $at_check_trace; pspp -O format=csv mxwarns.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "warning: MXWARNS set to zero. No further warnings will be given even when potentially problematic situations are encountered.
Table: Data List
x,y,z
1.00,2.00,3.00
3.00,. ,3.00
5.00,. ,3.00
. ,8.00,4.00
9.00,9.00,4.00
3.00,. ,4.00
. ,. ,4.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/set.at:80"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_675
#AT_START_676
at_fn_group_banner 676 'set.at:98' \
"PRESERVE of SET FORMAT" " " 93
at_xfail=no
(
$as_echo "676. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >set.pspp <<'_ATEOF'
SHOW FORMAT.
PRESERVE.
SET FORMAT F10.0.
SHOW FORMAT
RESTORE.
SHOW FORMAT.
_ATEOF
{ set +x
$as_echo "$at_srcdir/set.at:107: pspp -O format=csv set.pspp"
at_fn_check_prepare_trace "set.at:107"
( $at_check_trace; pspp -O format=csv set.pspp
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "set.pspp:1: note: SHOW: FORMAT is F8.2.
set.pspp:5: note: SHOW: FORMAT is F10.0.
set.pspp:6: note: SHOW: FORMAT is F8.2.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/set.at:107"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_676
#AT_START_677
at_fn_group_banner 677 'show.at:3' \
"SHOW N" " " 94
at_xfail=no
(
$as_echo "677. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >show.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /x.
BEGIN DATA.
1
2
3
END DATA.
SHOW N.
_ATEOF
{ set +x
$as_echo "$at_srcdir/show.at:16: pspp -O format=csv show.sps"
at_fn_check_prepare_trace "show.at:16"
( $at_check_trace; pspp -O format=csv show.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "show.sps:8: note: SHOW: N is 3.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/show.at:16"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_677
#AT_START_678
at_fn_group_banner 678 'show.at:23' \
"SHOW N empty" " " 94
at_xfail=no
(
$as_echo "678. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >shown-empty.sps <<'_ATEOF'
SHOW N.
_ATEOF
{ set +x
$as_echo "$at_srcdir/show.at:29: pspp -O format=csv shown-empty.sps"
at_fn_check_prepare_trace "show.at:29"
( $at_check_trace; pspp -O format=csv shown-empty.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "shown-empty.sps:1: note: SHOW: N is Unknown.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/show.at:29"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_678
#AT_START_679
at_fn_group_banner 679 'title.at:3' \
"FILE LABEL and (ADD) DOCUMENT" " " 95
at_xfail=no
(
$as_echo "679. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >file-label.sps <<'_ATEOF'
/* Set up a dummy active dataset in memory.
data list /X 1 Y 2.
begin data.
16
27
38
49
50
end data.
/* Add value labels for some further testing of value labels.
value labels x y 1 'first label' 2 'second label' 3 'third label'.
add value labels x 1 'first label mark two'.
/* Add a file label and a few documents.
file label This is a test file label.
document First line of a document
Second line of a document
The last line should end with a period: .
/* Display the documents.
display documents.
display file label.
ADD DOCUMENT 'Line one' 'Line two'.
/* Save the active dataset then get it and display the documents again.
save /OUTFILE='foo.save'.
get /FILE='foo.save'.
display documents.
display file label.
/* There is an interesting interaction that occurs if the 'execute'
/* command below. What happens is that an error message is output
/* at the next 'save' command that 'foo.save' is already open for
/* input. This is because the 'get' hasn't been executed yet and
/* therefore PSPP would be reading from and writing to the same
/* file at once, which is obviously a Bad Thing. But 'execute'
/* here clears up that potential problem.
execute.
/* Add another (shorter) document and try again.
document There should be another document now.
display documents.
/* Save and get.
save /OUTFILE='foo.save'.
get /FILE='foo.save'.
display documents.
display file label.
/* Done.
_ATEOF
{ set +x
$as_echo "$at_srcdir/title.at:59: pspp -o pspp.csv file-label.sps"
at_fn_check_prepare_trace "title.at:59"
( $at_check_trace; pspp -o pspp.csv file-label.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/title.at:59"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/title.at:61: sed 's/(Entered [^)]*)/(Entered )/' pspp.csv"
at_fn_check_prepare_trace "title.at:61"
( $at_check_trace; sed 's/(Entered [^)]*)/(Entered )/' pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading 1 record from INLINE.
Variable,Record,Columns,Format
X,1,1- 1,F1.0
Y,1,2- 2,F1.0
Documents in the active dataset:
document First line of a document
Second line of a document
The last line should end with a period: .
(Entered )
File label: This is a test file label
Documents in the active dataset:
document First line of a document
Second line of a document
The last line should end with a period: .
(Entered )
Line one
Line two
(Entered )
File label: This is a test file label
Documents in the active dataset:
document First line of a document
Second line of a document
The last line should end with a period: .
(Entered )
Line one
Line two
(Entered )
document There should be another document now.
(Entered )
Documents in the active dataset:
document First line of a document
Second line of a document
The last line should end with a period: .
(Entered )
Line one
Line two
(Entered )
document There should be another document now.
(Entered )
File label: This is a test file label
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/title.at:61"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_679
#AT_START_680
at_fn_group_banner 680 'compute.at:3' \
"COMPUTE crash with SAVE" " " 96
at_xfail=no
(
$as_echo "680. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >compute.sps <<'_ATEOF'
INPUT PROGRAM.
COMPUTE num = 3.
END FILE.
END INPUT PROGRAM.
EXECUTE.
SAVE outfile='temp.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/compute.at:13: pspp -O format=csv compute.sps"
at_fn_check_prepare_trace "compute.at:13"
( $at_check_trace; pspp -O format=csv compute.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/compute.at:13"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >list.sps <<'_ATEOF'
GET FILE='temp.sav'.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/compute.at:18: pspp -O format=csv list.sps"
at_fn_check_prepare_trace "compute.at:18"
( $at_check_trace; pspp -O format=csv list.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/compute.at:18"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_680
#AT_START_681
at_fn_group_banner 681 'compute.at:22' \
"COMPUTE bug in long string UPCASE" " " 96
at_xfail=no
(
$as_echo "681. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >compute.sps <<'_ATEOF'
DATA LIST LIST
/A (A161)
B (A3).
BEGIN DATA
abc def
ghi jkl
END DATA.
COMPUTE A=upcase(A).
EXECUTE.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/compute.at:37: pspp -O format=csv compute.sps"
at_fn_check_prepare_trace "compute.at:37"
( $at_check_trace; pspp -O format=csv compute.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
A,A161
B,A3
Table: Data List
A,B
ABC ,def
GHI ,jkl
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/compute.at:37"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_681
#AT_START_682
at_fn_group_banner 682 'compute.at:50' \
"COMPUTE bug with long variable names" " " 96
at_xfail=no
(
$as_echo "682. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >compute.sps <<'_ATEOF'
DATA LIST LIST /longVariablename * x *.
BEGIN DATA.
1 2
3 4
END DATA.
COMPUTE longvariableName=100-longvariablename.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/compute.at:63: pspp -O format=csv compute.sps"
at_fn_check_prepare_trace "compute.at:63"
( $at_check_trace; pspp -O format=csv compute.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
longVariablename,F8.0
x,F8.0
Table: Data List
longVariablename,x
99.00,2.00
97.00,4.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/compute.at:63"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_682
#AT_START_683
at_fn_group_banner 683 'compute.at:76' \
"COMPUTE self-reference to new variable" " " 96
at_xfail=no
(
$as_echo "683. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >compute.sps <<'_ATEOF'
DATA LIST /ITEM 1-3.
COMPUTE SUM=SUM+ITEM.
PRINT OUTFILE='compute-sum.out' /ITEM SUM.
LEAVE SUM
BEGIN DATA.
123
404
555
999
END DATA.
_ATEOF
{ set +x
$as_echo "$at_srcdir/compute.at:89: pspp -O format=csv compute.sps"
at_fn_check_prepare_trace "compute.at:89"
( $at_check_trace; pspp -O format=csv compute.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading 1 record from INLINE.
Variable,Record,Columns,Format
ITEM,1,1- 3,F3.0
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/compute.at:89"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/compute.at:94: cat compute-sum.out"
at_fn_check_prepare_trace "compute.at:94"
( $at_check_trace; cat compute-sum.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 123 123.00
404 527.00
555 1082.00
999 2081.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/compute.at:94"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_683
#AT_START_684
at_fn_group_banner 684 'count.at:3' \
"COUNT -- numeric data" " " 97
at_xfail=no
(
$as_echo "684. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >count.sps <<'_ATEOF'
DATA LIST LIST /x y.
BEGIN DATA.
1 2
2 3
4 5
2 2
5 6
7 2
. 2
END DATA.
MISSING VALUES x(7)/y(3).
COUNT c=x y (2)/d=x y(7)/e=x y(missing)/f=x y(sysmis).
FORMATS ALL(F1).
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/count.at:24: pspp -O format=csv count.sps"
at_fn_check_prepare_trace "count.at:24"
( $at_check_trace; pspp -O format=csv count.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
x,F8.0
y,F8.0
Table: Data List
x,y,c,d,e,f
1,2,1,0,0,0
2,3,1,0,1,0
4,5,0,0,0,0
2,2,2,0,0,0
5,6,0,0,0,0
7,2,1,1,1,0
.,2,1,0,1,1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/count.at:24"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_684
#AT_START_685
at_fn_group_banner 685 'count.at:42' \
"COUNT -- string data" " " 97
at_xfail=no
(
$as_echo "685. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >count.sps <<'_ATEOF'
TITLE 'Test COUNT transformation'.
DATA LIST /v1 to v2 1-4(a).
BEGIN DATA.
1234
321
2 13
4121
1104
03 4
0193
END DATA.
COUNT c=v1 to v2('2',' 4','1').
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/count.at:59: pspp -O format=csv count.sps"
at_fn_check_prepare_trace "count.at:59"
( $at_check_trace; pspp -O format=csv count.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Title: Test COUNT transformation
Table: Reading 1 record from INLINE.
Variable,Record,Columns,Format
v1,1,1- 2,A2
v2,1,3- 4,A2
Table: Data List
v1,v2,c
12,34,.00
32,1 ,1.00
2 ,13,1.00
41,21,.00
11,04,.00
03,4,1.00
01,93,.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/count.at:59"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_685
#AT_START_686
at_fn_group_banner 686 'recode.at:21' \
"RECODE numeric to numeric, without INTO" " " 98
at_xfail=no
(
$as_echo "686. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >recode.sps <<'_ATEOF'
DATA LIST LIST NOTABLE/x (f1) s (a4) t (a10).
MISSING VALUES x(9)/s('xxx').
BEGIN DATA.
0, '', ''
1, a, a
2, ab, ab
3, abc, abc
4, abcd, abcd
5, 123, 123
6, ' 123', ' 123'
7, +1, +1
8, 1x, 1x
9, abcd, abcdefghi
, xxx, abcdefghij
END DATA.
NUMERIC x0 TO x8 (F3).
MISSING VALUES x0 to x8 (9).
COMPUTE x0=value(x).
RECODE x0 (1=9).
COMPUTE x1=value(x).
RECODE x1 (1=9)(3=8)(5=7).
COMPUTE x2=value(x).
RECODE x2 (1=8)(2,3,4,5,6,8=9)(9=1).
COMPUTE x3=value(x).
RECODE x3 (1 THRU 9=10)(MISSING=11).
COMPUTE x4=value(x).
RECODE x4 (MISSING=11)(1 THRU 9=10).
COMPUTE x5=value(x).
RECODE x5 (LOWEST THRU 5=1).
COMPUTE x6=value(x).
RECODE x6 (4 THRU HIGHEST=2).
COMPUTE x7=value(x).
RECODE x7 (LO THRU HI=3).
COMPUTE x8=value(x).
RECODE x8 (SYSMIS=4).
LIST x x0 TO x8.
_ATEOF
{ set +x
$as_echo "$at_srcdir/recode.at:46: pspp -O format=csv recode.sps"
at_fn_check_prepare_trace "recode.at:46"
( $at_check_trace; pspp -O format=csv recode.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
x,x0,x1,x2,x3,x4,x5,x6,x7,x8
0,0,0,0,0,0,1,0,3,0
1,9,9,8,10,10,1,1,3,1
2,2,2,9,10,10,1,2,3,2
3,3,8,9,10,10,1,3,3,3
4,4,4,9,10,10,1,2,3,4
5,5,7,9,10,10,1,2,3,5
6,6,6,9,10,10,6,2,3,6
7,7,7,7,10,10,7,2,3,7
8,8,8,9,10,10,8,2,3,8
9,9,9,1,10,11,9,2,3,9
.,.,.,.,11,11,.,.,.,4
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/recode.at:46"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_686
#AT_START_687
at_fn_group_banner 687 'recode.at:63' \
"RECODE numeric to numeric, with INTO, without COPY" "" 98
at_xfail=no
(
$as_echo "687. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >recode.sps <<'_ATEOF'
DATA LIST LIST NOTABLE/x (f1) s (a4) t (a10).
MISSING VALUES x(9)/s('xxx').
BEGIN DATA.
0, '', ''
1, a, a
2, ab, ab
3, abc, abc
4, abcd, abcd
5, 123, 123
6, ' 123', ' 123'
7, +1, +1
8, 1x, 1x
9, abcd, abcdefghi
, xxx, abcdefghij
END DATA.
NUMERIC ix0 TO ix8 (F3).
RECODE x (1=9) INTO ix0.
RECODE x (1=9)(3=8)(5=7) INTO ix1.
RECODE x (1=8)(2,3,4,5,6,8=9)(9=1) INTO ix2.
RECODE x (1 THRU 9=10)(MISSING=11) INTO ix3.
RECODE x (MISSING=11)(1 THRU 9=10) INTO ix4.
RECODE x (LOWEST THRU 5=1) INTO ix5.
RECODE x (4 THRU HIGHEST=2) INTO ix6.
RECODE x (LO THRU HI=3) INTO ix7.
RECODE x (SYSMIS=4) INTO ix8.
LIST x ix0 TO ix8.
_ATEOF
{ set +x
$as_echo "$at_srcdir/recode.at:78: pspp -O format=csv recode.sps"
at_fn_check_prepare_trace "recode.at:78"
( $at_check_trace; pspp -O format=csv recode.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
x,ix0,ix1,ix2,ix3,ix4,ix5,ix6,ix7,ix8
0,.,.,.,.,.,1,.,3,.
1,9,9,8,10,10,1,.,3,.
2,.,.,9,10,10,1,.,3,.
3,.,8,9,10,10,1,.,3,.
4,.,.,9,10,10,1,2,3,.
5,.,7,9,10,10,1,2,3,.
6,.,.,9,10,10,.,2,3,.
7,.,.,.,10,10,.,2,3,.
8,.,.,9,10,10,.,2,3,.
9,.,.,1,10,11,.,2,3,.
.,.,.,.,11,11,.,.,.,4
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/recode.at:78"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_687
#AT_START_688
at_fn_group_banner 688 'recode.at:95' \
"RECODE numeric to numeric, with INTO, with COPY" "" 98
at_xfail=no
(
$as_echo "688. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >recode.sps <<'_ATEOF'
DATA LIST LIST NOTABLE/x (f1) s (a4) t (a10).
MISSING VALUES x(9)/s('xxx').
BEGIN DATA.
0, '', ''
1, a, a
2, ab, ab
3, abc, abc
4, abcd, abcd
5, 123, 123
6, ' 123', ' 123'
7, +1, +1
8, 1x, 1x
9, abcd, abcdefghi
, xxx, abcdefghij
END DATA.
NUMERIC cx0 TO cx8 (F3).
RECODE x (1=9)(ELSE=COPY) INTO cx0.
RECODE x (1=9)(3=8)(5=7)(ELSE=COPY) INTO cx1.
RECODE x (1=8)(2,3,4,5,6,8=9)(9=1)(ELSE=COPY) INTO cx2.
RECODE x (1 THRU 9=10)(MISSING=11)(ELSE=COPY) INTO cx3.
RECODE x (MISSING=11)(1 THRU 9=10)(ELSE=COPY) INTO cx4.
RECODE x (LOWEST THRU 5=1)(ELSE=COPY) INTO cx5.
RECODE x (4 THRU HIGHEST=2)(ELSE=COPY) INTO cx6.
RECODE x (LO THRU HI=3)(ELSE=COPY) INTO cx7.
RECODE x (SYSMIS=4)(ELSE=COPY) INTO cx8.
RECODE x (5=COPY)(ELSE=22) INTO cx9.
LIST x cx0 TO cx9.
_ATEOF
{ set +x
$as_echo "$at_srcdir/recode.at:111: pspp -O format=csv recode.sps"
at_fn_check_prepare_trace "recode.at:111"
( $at_check_trace; pspp -O format=csv recode.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
x,cx0,cx1,cx2,cx3,cx4,cx5,cx6,cx7,cx8,cx9
0,0,0,0,0,0,1,0,3,0,22.00
1,9,9,8,10,10,1,1,3,1,22.00
2,2,2,9,10,10,1,2,3,2,22.00
3,3,8,9,10,10,1,3,3,3,22.00
4,4,4,9,10,10,1,2,3,4,22.00
5,5,7,9,10,10,1,2,3,5,5.00
6,6,6,9,10,10,6,2,3,6,22.00
7,7,7,7,10,10,7,2,3,7,22.00
8,8,8,9,10,10,8,2,3,8,22.00
9,9,9,1,10,11,9,2,3,9,22.00
.,.,.,.,11,11,.,.,.,4,22.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/recode.at:111"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_688
#AT_START_689
at_fn_group_banner 689 'recode.at:128' \
"RECODE string to string, with INTO, without COPY" "" 98
at_xfail=no
(
$as_echo "689. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >recode.sps <<'_ATEOF'
DATA LIST LIST NOTABLE/x (f1) s (a4) t (a10).
MISSING VALUES x(9)/s('xxx').
BEGIN DATA.
0, '', ''
1, a, a
2, ab, ab
3, abc, abc
4, abcd, abcd
5, 123, 123
6, ' 123', ' 123'
7, +1, +1
8, 1x, 1x
9, abcd, abcdefghi
, xxx, abcdefghij
END DATA.
STRING s0 TO s3 (A4)/t0 TO t3 (A10).
RECODE s t ('a'='b')('ab'='bc') INTO s0 t0.
RECODE s t ('abcd'='xyzw') INTO s1 t1.
RECODE s t ('abc'='def')(ELSE='xyz') INTO s2 t2.
RECODE t ('a'='b')('abcdefghi'='xyz')('abcdefghij'='jklmnopqr') INTO t3.
RECODE s (MISSING='gone') INTO s3.
LIST s t s0 TO s3 t0 TO t3.
_ATEOF
{ set +x
$as_echo "$at_srcdir/recode.at:139: pspp -O format=csv recode.sps"
at_fn_check_prepare_trace "recode.at:139"
( $at_check_trace; pspp -O format=csv recode.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
s,t,s0,s1,s2,s3,t0,t1,t2,t3
,,,,xyz ,,,,xyz ,
a ,a ,b ,,xyz ,,b ,,xyz ,b
ab ,ab ,bc ,,xyz ,,bc ,,xyz ,
abc ,abc ,,,def ,,,,def ,
abcd,abcd ,,xyzw,xyz ,,,xyzw ,xyz ,
123 ,123 ,,,xyz ,,,,xyz ,
123,123 ,,,xyz ,,,,xyz ,
+1 ,+1 ,,,xyz ,,,,xyz ,
1x ,1x ,,,xyz ,,,,xyz ,
abcd,abcdefghi ,,xyzw,xyz ,,,,xyz ,xyz
xxx ,abcdefghij,,,xyz ,gone,,,xyz ,jklmnopqr
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/recode.at:139"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_689
#AT_START_690
at_fn_group_banner 690 'recode.at:156' \
"RECODE string to string" " " 98
at_xfail=no
(
$as_echo "690. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >recode.sps <<'_ATEOF'
DATA LIST LIST NOTABLE/x (f1) s (a4) t (a10).
MISSING VALUES x(9)/s('xxx').
BEGIN DATA.
0, '', ''
1, a, a
2, ab, ab
3, abc, abc
4, abcd, abcd
5, 123, 123
6, ' 123', ' 123'
7, +1, +1
8, 1x, 1x
9, abcd, abcdefghi
, xxx, abcdefghij
END DATA.
STRING cs0 TO cs2 (A4)/ct0 TO ct3 (A10).
RECODE s t ('a'='b')('ab'='bc')(ELSE=COPY) INTO cs0 ct0.
RECODE s t ('abcd'='xyzw')(ELSE=COPY) INTO cs1 ct1.
RECODE s t ('abc'='def')(ELSE='xyz')(ELSE=COPY) INTO cs2 ct2.
RECODE t ('a'='b')('abcdefghi'='xyz')('abcdefghij'='jklmnopqr')(ELSE=COPY)
INTO ct3.
LIST s t cs0 TO cs2 ct0 TO ct3.
_ATEOF
{ set +x
$as_echo "$at_srcdir/recode.at:167: pspp -O format=csv recode.sps"
at_fn_check_prepare_trace "recode.at:167"
( $at_check_trace; pspp -O format=csv recode.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
s,t,cs0,cs1,cs2,ct0,ct1,ct2,ct3
,,,,xyz ,,,xyz ,
a ,a ,b ,a ,xyz ,b ,a ,xyz ,b
ab ,ab ,bc ,ab ,xyz ,bc ,ab ,xyz ,ab
abc ,abc ,abc ,abc ,def ,abc ,abc ,def ,abc
abcd,abcd ,abcd,xyzw,xyz ,abcd ,xyzw ,xyz ,abcd
123 ,123 ,123 ,123 ,xyz ,123 ,123 ,xyz ,123
123,123 ,123,123,xyz ,123 ,123 ,xyz ,123
+1 ,+1 ,+1 ,+1 ,xyz ,+1 ,+1 ,xyz ,+1
1x ,1x ,1x ,1x ,xyz ,1x ,1x ,xyz ,1x
abcd,abcdefghi ,abcd,xyzw,xyz ,abcdefghi ,abcdefghi ,xyz ,xyz
xxx ,abcdefghij,xxx ,xxx ,xyz ,abcdefghij,abcdefghij,xyz ,jklmnopqr
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/recode.at:167"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_690
#AT_START_691
at_fn_group_banner 691 'recode.at:184' \
"RECODE string to numeric" " " 98
at_xfail=no
(
$as_echo "691. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >recode.sps <<'_ATEOF'
DATA LIST LIST NOTABLE/x (f1) s (a4) t (a10).
MISSING VALUES x(9)/s('xxx').
BEGIN DATA.
0, '', ''
1, a, a
2, ab, ab
3, abc, abc
4, abcd, abcd
5, 123, 123
6, ' 123', ' 123'
7, +1, +1
8, 1x, 1x
9, abcd, abcdefghi
, xxx, abcdefghij
END DATA.
NUMERIC ns0 TO ns2 (F3)/nt0 TO nt2 (F3).
RECODE s t (CONVERT)(' '=0)('abcd'=1) INTO ns0 nt0.
RECODE s t (' '=0)(CONVERT)('abcd'=1) INTO ns1 nt1.
RECODE s t ('1x'=1)('abcd'=2)(ELSE=3) INTO ns2 nt2.
LIST s t ns0 TO ns2 nt0 TO nt2.
_ATEOF
{ set +x
$as_echo "$at_srcdir/recode.at:193: pspp -O format=csv recode.sps"
at_fn_check_prepare_trace "recode.at:193"
( $at_check_trace; pspp -O format=csv recode.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
s,t,ns0,ns1,ns2,nt0,nt1,nt2
,,.,0,3,.,0,3
a ,a ,.,.,3,.,.,3
ab ,ab ,.,.,3,.,.,3
abc ,abc ,.,.,3,.,.,3
abcd,abcd ,1,1,2,1,1,2
123 ,123 ,123,123,3,123,123,3
123,123 ,123,123,3,123,123,3
+1 ,+1 ,1,1,3,1,1,3
1x ,1x ,.,.,1,.,.,1
abcd,abcdefghi ,1,1,2,.,.,3
xxx ,abcdefghij,.,.,3,.,.,3
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/recode.at:193"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_691
#AT_START_692
at_fn_group_banner 692 'recode.at:210' \
"RECODE numeric to string" " " 98
at_xfail=no
(
$as_echo "692. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >recode.sps <<'_ATEOF'
DATA LIST LIST NOTABLE/x (f1) s (a4) t (a10).
MISSING VALUES x(9)/s('xxx').
BEGIN DATA.
0, '', ''
1, a, a
2, ab, ab
3, abc, abc
4, abcd, abcd
5, 123, 123
6, ' 123', ' 123'
7, +1, +1
8, 1x, 1x
9, abcd, abcdefghi
, xxx, abcdefghij
END DATA.
STRING sx0 TO sx2 (a10).
RECODE x (1 THRU 9='abcdefghij') INTO sx0.
RECODE x (0,1,3,5,7,MISSING='xxx') INTO sx1.
RECODE x (2 THRU 6,SYSMIS='xyz')(ELSE='foobar') INTO sx2.
LIST x sx0 TO sx2.
_ATEOF
{ set +x
$as_echo "$at_srcdir/recode.at:219: pspp -O format=csv recode.sps"
at_fn_check_prepare_trace "recode.at:219"
( $at_check_trace; pspp -O format=csv recode.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
x,sx0,sx1,sx2
0,,xxx ,foobar
1,abcdefghij,xxx ,foobar
2,abcdefghij,,xyz
3,abcdefghij,xxx ,xyz
4,abcdefghij,,xyz
5,abcdefghij,xxx ,xyz
6,abcdefghij,,xyz
7,abcdefghij,xxx ,foobar
8,abcdefghij,,foobar
9,abcdefghij,xxx ,foobar
.,,xxx ,xyz
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/recode.at:219"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_692
#AT_START_693
at_fn_group_banner 693 'recode.at:236' \
"RECODE bug in COPY" " " 98
at_xfail=no
(
$as_echo "693. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >recode.sps <<'_ATEOF'
DATA LIST LIST
/A (A1)
B (A1).
BEGIN DATA
1 2
2 3
3 4
END DATA.
** Clearly, the else=copy is superfluous here
RECODE A ("1"="3") ("3"="1") (ELSE=COPY).
EXECUTE.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/recode.at:253: pspp -O format=csv recode.sps"
at_fn_check_prepare_trace "recode.at:253"
( $at_check_trace; pspp -O format=csv recode.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
A,A1
B,A1
Table: Data List
A,B
3,2
2,3
1,4
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/recode.at:253"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_693
#AT_START_694
at_fn_group_banner 694 'recode.at:267' \
"RECODE bug in COPY with INTO" " " 98
at_xfail=no
(
$as_echo "694. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >recode.sps <<'_ATEOF'
DATA LIST LIST
/A (A1)
B (A1).
BEGIN DATA
1 2
2 3
3 4
END DATA.
STRING A1 (A1).
RECODE A ("1"="3") ("3"="1") (ELSE=COPY) INTO a1.
EXECUTE.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/recode.at:284: pspp -O format=csv recode.sps"
at_fn_check_prepare_trace "recode.at:284"
( $at_check_trace; pspp -O format=csv recode.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
A,A1
B,A1
Table: Data List
A,B,A1
1,2,3
2,3,2
3,4,1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/recode.at:284"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_694
#AT_START_695
at_fn_group_banner 695 'recode.at:300' \
"RECODE increased string widths" " " 98
at_xfail=no
(
$as_echo "695. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >recode.sps <<'_ATEOF'
data list notable list /x (a1) y (a8) z *.
begin data.
a a 2
a two 2
b three 2
c b 2
end data.
recode x y ("a" = "first") .
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/recode.at:316: pspp -O format=csv recode.sps"
at_fn_check_prepare_trace "recode.at:316"
( $at_check_trace; pspp -O format=csv recode.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"error: Cannot recode because the variable x would require a width of 5 bytes or greater, but it has a width of only 1 bytes.\"
Table: Data List
x,y,z
a,a ,2.00
a,two ,2.00
b,three ,2.00
c,b ,2.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/recode.at:316"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_695
#AT_START_696
at_fn_group_banner 696 'sample.at:3' \
"SAMPLE" " " 99
at_xfail=no
(
$as_echo "696. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >sample.sps <<'_ATEOF'
set seed=3
data list notable /A 1-2.
begin data.
1
2
3
4
5
6
7
8
9
10
end data.
sample .5.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/sample.at:23: pspp -o pspp.csv sample.sps"
at_fn_check_prepare_trace "sample.at:23"
( $at_check_trace; pspp -o pspp.csv sample.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sample.at:23"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/sample.at:25: n=0
while read line; do
n=\`expr \$n + 1\`
case \$line in # (
\"Table: Data List\" | A | [0-9] | 10) ;; # (
*) echo \$line; exit 1;
esac
done < pspp.csv
if test \$n -ge 11; then exit 1; fi
"
at_fn_check_prepare_notrace 'a `...` command substitution' "sample.at:25"
( $at_check_trace; n=0
while read line; do
n=`expr $n + 1`
case $line in # (
"Table: Data List" | A | [0-9] | 10) ;; # (
*) echo $line; exit 1;
esac
done < pspp.csv
if test $n -ge 11; then exit 1; fi
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sample.at:25"
$at_failed && at_fn_log_failure \
"pspp.csv"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_696
#AT_START_697
at_fn_group_banner 697 'select-if.at:3' \
"FILTER" " " 100
at_xfail=no
(
$as_echo "697. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >filter.sps <<'_ATEOF'
data list notable /X 1-2.
begin data.
1
2
3
4
5
6
7
8
9
10
end data.
compute FILTER_$ = mod(x,2).
filter by filter_$.
list.
filter off.
list.
compute filter_$ = 1 - filter_$.
filter by filter_$.
list.
_ATEOF
{ set +x
$as_echo "$at_srcdir/select-if.at:28: pspp -o pspp.csv filter.sps"
at_fn_check_prepare_trace "select-if.at:28"
( $at_check_trace; pspp -o pspp.csv filter.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/select-if.at:28"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/select-if.at:29: cat pspp.csv"
at_fn_check_prepare_trace "select-if.at:29"
( $at_check_trace; cat pspp.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Data List
X,FILTER_\$
1,1.00
3,1.00
5,1.00
7,1.00
9,1.00
Table: Data List
X,FILTER_\$
1,1.00
2,.00
3,1.00
4,.00
5,1.00
6,.00
7,1.00
8,.00
9,1.00
10,.00
Table: Data List
X,FILTER_\$
2,1.00
4,1.00
6,1.00
8,1.00
10,1.00
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/select-if.at:29"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_697
#AT_START_698
at_fn_group_banner 698 'abt.at:8' \
"ABT -- insert-any-remove-any" " " 101
at_xfail=no
(
$as_echo "698. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/abt.at:8: abt-test insert-any-remove-any"
at_fn_check_prepare_trace "abt.at:8"
( $at_check_trace; abt-test insert-any-remove-any
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/abt.at:8"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_698
#AT_START_699
at_fn_group_banner 699 'abt.at:9' \
"ABT -- insert-any-remove-same" " " 101
at_xfail=no
(
$as_echo "699. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/abt.at:9: abt-test insert-any-remove-same"
at_fn_check_prepare_trace "abt.at:9"
( $at_check_trace; abt-test insert-any-remove-same
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/abt.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_699
#AT_START_700
at_fn_group_banner 700 'abt.at:10' \
"ABT -- insert-any-remove-reverse" " " 101
at_xfail=no
(
$as_echo "700. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/abt.at:10: abt-test insert-any-remove-reverse"
at_fn_check_prepare_trace "abt.at:10"
( $at_check_trace; abt-test insert-any-remove-reverse
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/abt.at:10"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_700
#AT_START_701
at_fn_group_banner 701 'abt.at:11' \
"ABT -- random-sequence" " " 101
at_xfail=no
(
$as_echo "701. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/abt.at:11: abt-test random-sequence"
at_fn_check_prepare_trace "abt.at:11"
( $at_check_trace; abt-test random-sequence
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/abt.at:11"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_701
#AT_START_702
at_fn_group_banner 702 'abt.at:12' \
"ABT -- insert-ordered" " " 101
at_xfail=no
(
$as_echo "702. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/abt.at:12: abt-test insert-ordered"
at_fn_check_prepare_trace "abt.at:12"
( $at_check_trace; abt-test insert-ordered
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/abt.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_702
#AT_START_703
at_fn_group_banner 703 'abt.at:13' \
"ABT -- moved" " " 101
at_xfail=no
(
$as_echo "703. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/abt.at:13: abt-test moved"
at_fn_check_prepare_trace "abt.at:13"
( $at_check_trace; abt-test moved
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/abt.at:13"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_703
#AT_START_704
at_fn_group_banner 704 'abt.at:14' \
"ABT -- changed" " " 101
at_xfail=no
(
$as_echo "704. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/abt.at:14: abt-test changed"
at_fn_check_prepare_trace "abt.at:14"
( $at_check_trace; abt-test changed
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/abt.at:14"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_704
#AT_START_705
at_fn_group_banner 705 'bt.at:8' \
"BT -- insert-any-remove-any" " " 102
at_xfail=no
(
$as_echo "705. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/bt.at:8: bt-test insert-any-remove-any"
at_fn_check_prepare_trace "bt.at:8"
( $at_check_trace; bt-test insert-any-remove-any
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/bt.at:8"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_705
#AT_START_706
at_fn_group_banner 706 'bt.at:9' \
"BT -- insert-any-remove-same" " " 102
at_xfail=no
(
$as_echo "706. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/bt.at:9: bt-test insert-any-remove-same"
at_fn_check_prepare_trace "bt.at:9"
( $at_check_trace; bt-test insert-any-remove-same
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/bt.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_706
#AT_START_707
at_fn_group_banner 707 'bt.at:10' \
"BT -- insert-any-remove-reverse" " " 102
at_xfail=no
(
$as_echo "707. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/bt.at:10: bt-test insert-any-remove-reverse"
at_fn_check_prepare_trace "bt.at:10"
( $at_check_trace; bt-test insert-any-remove-reverse
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/bt.at:10"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_707
#AT_START_708
at_fn_group_banner 708 'bt.at:11' \
"BT -- random-sequence" " " 102
at_xfail=no
(
$as_echo "708. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/bt.at:11: bt-test random-sequence"
at_fn_check_prepare_trace "bt.at:11"
( $at_check_trace; bt-test random-sequence
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/bt.at:11"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_708
#AT_START_709
at_fn_group_banner 709 'bt.at:12' \
"BT -- insert-ordered" " " 102
at_xfail=no
(
$as_echo "709. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/bt.at:12: bt-test insert-ordered"
at_fn_check_prepare_trace "bt.at:12"
( $at_check_trace; bt-test insert-ordered
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/bt.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_709
#AT_START_710
at_fn_group_banner 710 'bt.at:13' \
"BT -- find-ge-le" " " 102
at_xfail=no
(
$as_echo "710. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/bt.at:13: bt-test find-ge-le"
at_fn_check_prepare_trace "bt.at:13"
( $at_check_trace; bt-test find-ge-le
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/bt.at:13"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_710
#AT_START_711
at_fn_group_banner 711 'bt.at:14' \
"BT -- moved" " " 102
at_xfail=no
(
$as_echo "711. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/bt.at:14: bt-test moved"
at_fn_check_prepare_trace "bt.at:14"
( $at_check_trace; bt-test moved
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/bt.at:14"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_711
#AT_START_712
at_fn_group_banner 712 'bt.at:15' \
"BT -- changed" " " 102
at_xfail=no
(
$as_echo "712. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/bt.at:15: bt-test changed"
at_fn_check_prepare_trace "bt.at:15"
( $at_check_trace; bt-test changed
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/bt.at:15"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_712
#AT_START_713
at_fn_group_banner 713 'encoding-guesser.at:3' \
"ASCII" " " 103
at_xfail=no
(
$as_echo "713. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:5: echo string | encoding-guesser-test Auto,ISO-8859-1"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:5"
( $at_check_trace; echo string | encoding-guesser-test Auto,ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "ASCII
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:5"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_713
#AT_START_714
at_fn_group_banner 714 'encoding-guesser.at:9' \
"UTF-8" " " 103
at_xfail=no
(
$as_echo "714. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:11: i18n-test supports_encodings ISO-8859-1"
at_fn_check_prepare_trace "encoding-guesser.at:11"
( $at_check_trace; i18n-test supports_encodings ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:11"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:12: printf '\\346\\227\\245\\346\\234\\254\\350\\252\\236\\n' | encoding-guesser-test Auto,ISO-8859-1"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:12"
( $at_check_trace; printf '\346\227\245\346\234\254\350\252\236\n' | encoding-guesser-test Auto,ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "UTF-8
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_714
#AT_START_715
at_fn_group_banner 715 'encoding-guesser.at:16' \
"UTF-8 starting with ASCII" " " 103
at_xfail=no
(
$as_echo "715. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:18: i18n-test supports_encodings ISO-8859-1"
at_fn_check_prepare_trace "encoding-guesser.at:18"
( $at_check_trace; i18n-test supports_encodings ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:18"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:19: printf 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\\346\\227\\245\\346\\234\\254\\350\\252\\236\\n' | encoding-guesser-test Auto,ISO-8859-1 32"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:19"
( $at_check_trace; printf 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\346\227\245\346\234\254\350\252\236\n' | encoding-guesser-test Auto,ISO-8859-1 32
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "UTF-8
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:19"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_715
#AT_START_716
at_fn_group_banner 716 'encoding-guesser.at:23' \
"UTF-16 with big-endian byte order mark" " " 103
at_xfail=no
(
$as_echo "716. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:25: printf '\\376\\377' | encoding-guesser-test Auto,ISO-8859-1"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:25"
( $at_check_trace; printf '\376\377' | encoding-guesser-test Auto,ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "UTF-16
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:25"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_716
#AT_START_717
at_fn_group_banner 717 'encoding-guesser.at:30' \
"UTF-16 with little-endian byte order mark" " " 103
at_xfail=no
(
$as_echo "717. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:32: printf '\\377\\376' | encoding-guesser-test Auto,ISO-8859-1"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:32"
( $at_check_trace; printf '\377\376' | encoding-guesser-test Auto,ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "UTF-16
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:32"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_717
#AT_START_718
at_fn_group_banner 718 'encoding-guesser.at:37' \
"UTF-16BE" " " 103
at_xfail=no
(
$as_echo "718. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:39: printf '\\0e\\0n\\0t\\0r\\0\\351\\0e\\0\\n' | encoding-guesser-test Auto,ISO-8859-1"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:39"
( $at_check_trace; printf '\0e\0n\0t\0r\0\351\0e\0\n' | encoding-guesser-test Auto,ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "UTF-16BE
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:39"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_718
#AT_START_719
at_fn_group_banner 719 'encoding-guesser.at:46' \
"UTF-16BE starting with U+0100" " " 103
at_xfail=no
(
$as_echo "719. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:48: printf '\\1\\0\\0e\\0n\\0t\\0r\\0\\351\\0e\\0\\n' | encoding-guesser-test Auto,ISO-8859-1"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:48"
( $at_check_trace; printf '\1\0\0e\0n\0t\0r\0\351\0e\0\n' | encoding-guesser-test Auto,ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "UTF-16BE
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:48"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_719
#AT_START_720
at_fn_group_banner 720 'encoding-guesser.at:53' \
"UTF-16LE" " " 103
at_xfail=no
(
$as_echo "720. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:55: printf 'e\\0n\\0t\\0r\\0\\351\\0e\\0\\n\\0' | encoding-guesser-test Auto,ISO-8859-1"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:55"
( $at_check_trace; printf 'e\0n\0t\0r\0\351\0e\0\n\0' | encoding-guesser-test Auto,ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "UTF-16LE
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:55"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_720
#AT_START_721
at_fn_group_banner 721 'encoding-guesser.at:62' \
"UTF-16LE starting with U+0100" " " 103
at_xfail=no
(
$as_echo "721. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:64: printf '\\0\\1e\\0n\\0t\\0r\\0\\351\\0e\\0\\n\\0' | encoding-guesser-test Auto,ISO-8859-1"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:64"
( $at_check_trace; printf '\0\1e\0n\0t\0r\0\351\0e\0\n\0' | encoding-guesser-test Auto,ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "UTF-16LE
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:64"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_721
#AT_START_722
at_fn_group_banner 722 'encoding-guesser.at:69' \
"UTF-32 with big-endian byte order mark" " " 103
at_xfail=no
(
$as_echo "722. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:71: printf '\\0\\0\\376\\377' | encoding-guesser-test Auto,ISO-8859-1"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:71"
( $at_check_trace; printf '\0\0\376\377' | encoding-guesser-test Auto,ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "UTF-32
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:71"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_722
#AT_START_723
at_fn_group_banner 723 'encoding-guesser.at:76' \
"UTF-32 with little-endian byte order mark" " " 103
at_xfail=no
(
$as_echo "723. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:78: printf '\\377\\376\\0\\0' | encoding-guesser-test Auto,ISO-8859-1"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:78"
( $at_check_trace; printf '\377\376\0\0' | encoding-guesser-test Auto,ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "UTF-32
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:78"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_723
#AT_START_724
at_fn_group_banner 724 'encoding-guesser.at:83' \
"UTF-32BE" " " 103
at_xfail=no
(
$as_echo "724. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:85: printf '\\0\\0\\0e\\0\\0\\0n\\0\\0\\0t\\0\\0\\0r\\0\\0\\0\\351\\0\\0\\0e\\0\\0\\0\\n' | encoding-guesser-test Auto,ISO-8859-1"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:85"
( $at_check_trace; printf '\0\0\0e\0\0\0n\0\0\0t\0\0\0r\0\0\0\351\0\0\0e\0\0\0\n' | encoding-guesser-test Auto,ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "UTF-32BE
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:85"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_724
#AT_START_725
at_fn_group_banner 725 'encoding-guesser.at:90' \
"UTF-32LE" " " 103
at_xfail=no
(
$as_echo "725. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:92: printf 'e\\0\\0\\0n\\0\\0\\0t\\0\\0\\0r\\0\\0\\0\\351\\0\\0\\0e\\0\\0\\0\\n\\0\\0\\0' | encoding-guesser-test Auto,ISO-8859-1"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:92"
( $at_check_trace; printf 'e\0\0\0n\0\0\0t\0\0\0r\0\0\0\351\0\0\0e\0\0\0\n\0\0\0' | encoding-guesser-test Auto,ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "UTF-32LE
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:92"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_725
#AT_START_726
at_fn_group_banner 726 'encoding-guesser.at:97' \
"ISO-8859-1" " " 103
at_xfail=no
(
$as_echo "726. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:99: i18n-test supports_encodings ISO-8859-1"
at_fn_check_prepare_trace "encoding-guesser.at:99"
( $at_check_trace; i18n-test supports_encodings ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:99"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:100: printf 'entr\\351e\\n' | encoding-guesser-test Auto,ISO-8859-1"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:100"
( $at_check_trace; printf 'entr\351e\n' | encoding-guesser-test Auto,ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "ISO-8859-1
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:100"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_726
#AT_START_727
at_fn_group_banner 727 'encoding-guesser.at:105' \
"GB-18030 with byte order mark" " " 103
at_xfail=no
(
$as_echo "727. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:107: i18n-test supports_encodings ISO-8859-1"
at_fn_check_prepare_trace "encoding-guesser.at:107"
( $at_check_trace; i18n-test supports_encodings ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:107"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:108: printf '\\204\\061\\225\\063' | encoding-guesser-test Auto,ISO-8859-1"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:108"
( $at_check_trace; printf '\204\061\225\063' | encoding-guesser-test Auto,ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GB-18030
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:108"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_727
#AT_START_728
at_fn_group_banner 728 'encoding-guesser.at:113' \
"UTF-EBCDIC with byte order mark" " " 103
at_xfail=no
(
$as_echo "728. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:115: i18n-test supports_encodings ISO-8859-1"
at_fn_check_prepare_trace "encoding-guesser.at:115"
( $at_check_trace; i18n-test supports_encodings ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:115"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:116: printf '\\335\\163\\146\\163' | encoding-guesser-test Auto,ISO-8859-1"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:116"
( $at_check_trace; printf '\335\163\146\163' | encoding-guesser-test Auto,ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "UTF-EBCDIC
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:116"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_728
#AT_START_729
at_fn_group_banner 729 'encoding-guesser.at:121' \
"EUC-JP as Auto,EUC-JP" " " 103
at_xfail=no
(
$as_echo "729. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:123: i18n-test supports_encodings EUC-JP"
at_fn_check_prepare_trace "encoding-guesser.at:123"
( $at_check_trace; i18n-test supports_encodings EUC-JP
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:123"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:124: printf '\\244\\241 \\244\\242 \\244\\243 \\244\\244 \\244\\245 \\244\\246 \\244\\247 \\244\\250 \\244\\251 \\244\\252\\n' | encoding-guesser-test Auto,EUC-JP"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:124"
( $at_check_trace; printf '\244\241 \244\242 \244\243 \244\244 \244\245 \244\246 \244\247 \244\250 \244\251 \244\252\n' | encoding-guesser-test Auto,EUC-JP
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "EUC-JP
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:124"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_729
#AT_START_730
at_fn_group_banner 730 'encoding-guesser.at:129' \
"EUC-JP starting with ASCII as Auto,EUC-JP" " " 103
at_xfail=no
(
$as_echo "730. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:131: i18n-test supports_encodings EUC-JP"
at_fn_check_prepare_trace "encoding-guesser.at:131"
( $at_check_trace; i18n-test supports_encodings EUC-JP
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:131"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:132: printf 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx \\244\\241 \\244\\242 \\244\\243 \\244\\244 \\244\\245 \\244\\246 \\244\\247 \\244\\250 \\244\\251 \\244\\252\\n' | encoding-guesser-test Auto,EUC-JP 32"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:132"
( $at_check_trace; printf 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx \244\241 \244\242 \244\243 \244\244 \244\245 \244\246 \244\247 \244\250 \244\251 \244\252\n' | encoding-guesser-test Auto,EUC-JP 32
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "EUC-JP
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:132"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_730
#AT_START_731
at_fn_group_banner 731 'encoding-guesser.at:137' \
"UTF-8 with character split across input buffers" "" 103
at_xfail=no
(
$as_echo "731. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:139: i18n-test supports_encodings ISO-8859-1"
at_fn_check_prepare_trace "encoding-guesser.at:139"
( $at_check_trace; i18n-test supports_encodings ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:139"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:140: printf '\\343\\201\\201\\343\\201\\202\\343\\201\\203\\343\\201\\204\\343\\201\\205\\343\\201\\206\\343\\201\\207\\343\\201\\210\\343\\201\\211\\343\\201\\212\\343\\201\\201\\343\\201\\202\\343\\201\\203\\343\\201\\204\\343\\201\\205\\343\\201\\206\\343\\201\\207\\343\\201\\210\\343\\201\\211\\343\\201\\212\\n' | encoding-guesser-test Auto,ISO-8859-1 32"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:140"
( $at_check_trace; printf '\343\201\201\343\201\202\343\201\203\343\201\204\343\201\205\343\201\206\343\201\207\343\201\210\343\201\211\343\201\212\343\201\201\343\201\202\343\201\203\343\201\204\343\201\205\343\201\206\343\201\207\343\201\210\343\201\211\343\201\212\n' | encoding-guesser-test Auto,ISO-8859-1 32
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "UTF-8
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:140"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_731
#AT_START_732
at_fn_group_banner 732 'encoding-guesser.at:145' \
"windows-1252 as Auto,UTF-8" " " 103
at_xfail=no
(
$as_echo "732. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:147: i18n-test supports_encodings windows-1252"
at_fn_check_prepare_trace "encoding-guesser.at:147"
( $at_check_trace; i18n-test supports_encodings windows-1252
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:147"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/encoding-guesser.at:148: printf 'entr\\351e' | encoding-guesser-test Auto,UTF-8 32"
at_fn_check_prepare_notrace 'a shell pipeline' "encoding-guesser.at:148"
( $at_check_trace; printf 'entr\351e' | encoding-guesser-test Auto,UTF-8 32
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "windows-1252
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/encoding-guesser.at:148"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_732
#AT_START_733
at_fn_group_banner 733 'float-format.at:3' \
"floating point format conversions" " " 104
at_xfail=no
(
$as_echo "733. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >float-format.txt <<'_ATEOF'
# Each of the tests below checks that conversion between
# floating-point formats works correctly. Comparisons that use ==
# require that conversion from any format on the line to any other
# format on the line work losslessly. Comparisons that use => only
# check that conversions work losslessly in the given direction.
# Key to format names:
# isl: IEEE single-precision, little endian
# isb: IEEE single-precision, big endian
# idl: IEEE double-precision, little endian
# idb: IEEE double-precision, big endian
# vf: VAX F
# vd: VAX D
# vg: VAX G
# zs: Z architecture short
# zl: Z architecture long
# x: hexadecimal digits
# IEEE special values.
0 == isb('00000000')
x('Infinity') == isb('7f800000')
x('-Infinity') == isb('ff800000')
x('NaN:') => isb('7f800001') # NaN requires nonzero fraction.
x('NaN:e000000000000000') == isb('7ff00000') == idb('7ffe000000000000')
x('NaN:5a5a5e0000000000') == isb('7fad2d2f') == idb('7ff5a5a5e0000000')
x('NaN:975612abcdef4000') == idb('7ff975612abcdef4')
x('-NaN:e000000000000000') == isb('fff00000') == idb('fffe000000000000')
x('-NaN:5a5a5e0000000000') == isb('ffad2d2f') == idb('fff5a5a5e0000000')
x('-NaN:975612abcdef4000') == idb('fff975612abcdef4')
# PSPP special values.
x('Missing') == isb('ff7fffff') == idb('ffefffffffffffff') == isl('ffff7fff') == idl('ffffffffffffefff') == vf('ffffffff') == vd('ffffffffffffffff') == vg('ffffffffffffffff') == zs('ffffffff') == zl('ffffffffffffffff')
x('Lowest') == isb('ff7ffffe') == idb('ffeffffffffffffe') == isl('feff7fff') == idl('feffffffffffefff') == vf('fffffeff') == vd('fffffeffffffffff') == vg('fffffeffffffffff') == zs('fffffffe') == zl('fffffffffffffffe')
x('Highest') == isb('7f7fffff') == idb('7fefffffffffffff') == isl('ffff7f7f') == idl('ffffffffffffef7f') == vf('ff7fffff') == vd('ffffffffff7fffff') == vg('ffffffffff7fffff') == zs('7fffffff') == zl('7fffffffffffffff')
# From Wikipedia.
0.15625 == isb('3e200000')
-118.625 == isb('c2ed4000')
# http://www.psc.edu/general/software/packages/ieee/ieee.html
x('NaN:0400000000000000') == isb('7f820000')
x('-NaN:2225540000000000') == isb('ff9112aa')
2 == isb('40000000')
6.5 == isb('40d00000')
-6.5 == isb('c0d00000')
x('.4p-124') == isb('00800000')
x('.2p-124') == isb('00400000')
# Using converter at http://babbage.cs.qc.edu/IEEE-754/Decimal.html
# plus Emacs 'calc' to convert decimal to hexadecimal
x('.7b74bc6a7ef9db23p8') => isb('42f6e979') # 123.456
x('.7b74bc6a7ef9db23p8') => idb('405edd2f1a9fbe77')
x('.817427d2d4642004p-12') => isb('39017428') # .0001234567
x('.817427d2d4642004p-12') => idb('3f202e84fa5a8c84')
x('.446c3b15f9926688p168') => isb('7f800000') # 1e50; overflow
x('.446c3b15f9926688p168') => idb('4a511b0ec57e649a')
# From multiple editions of the z/Architecture Principles of Operation
# manual.
1.0 == zs('41100000') == isb('3f800000')
0.5 == zs('40800000') == isb('3f000000')
x('.4p-4') == zs('3f400000') == isb('3c800000')
0 == zs('00000000') == isb('00000000')
zs('80000000') == isb('80000000')
-15 == zs('c1f00000') == isb('c1700000')
# x('.ffffffp252') == zs('7fffffff')
x('.3b4p8') == zs('423b4000')
x('.1p-256') == zs('00100000')
x('.4p-124') == zs('21400000') == isb('00800000')
x('.8p-148') == zs('1b800000') == isb('00000001')
# x('.ffffffp128') == zs('60ffffff') == isb('7f7fffff')
x('.1p-256') == zs('00100000')
x('.1p-256') => isb('00000000') # Underflow to zero.
x('.ffffffp248') == zs('7effffff')
x('.ffffffp248') => isb('7f800000') # Overflow to +Infinity.
x('.4p-1020') => zl('0000000000000000') # Underflow to zero.
x('.4p-1020') == idb('0010000000000000')
x('.4p-1072') => zl('0000000000000000') # Underflow to zero.
x('.4p-1072') => idb('0000000000000001')
x('.fffffffffffff8p1024') => zl('7fffffffffffffff') # Overflow to maxval.
x('.fffffffffffff8p1024') => idb('7fefffffffffffff')
x('.1p-256') == zl('0010000000000000') == idb('2fb0000000000000')
x('.ffffffffffffffp248') == zl('7effffffffffffff')
x('.ffffffffffffffp248') => idb('4f70000000000000') # Loses precision.
_ATEOF
{ set +x
$as_echo "$at_srcdir/float-format.at:91: sed 's/#.*//
s/^ *//
s/ *\$//
/^\$/d
s/^\\(..*\\)\$/DEBUG FLOAT FORMAT \\1./' < float-format.txt > float-format.sps"
at_fn_check_prepare_notrace 'an embedded newline' "float-format.at:91"
( $at_check_trace; sed 's/#.*//
s/^ *//
s/ *$//
/^$/d
s/^\(..*\)$/DEBUG FLOAT FORMAT \1./' < float-format.txt > float-format.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/float-format.at:91"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/float-format.at:97: pspp --testing-mode -O format=csv float-format.sps"
at_fn_check_prepare_trace "float-format.at:97"
( $at_check_trace; pspp --testing-mode -O format=csv float-format.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/float-format.at:97"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_733
#AT_START_734
at_fn_group_banner 734 'heap.at:8' \
"heap -- insert-no-dups-delete-min" " " 105
at_xfail=no
(
$as_echo "734. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/heap.at:8: heap-test insert-no-dups-delete-min"
at_fn_check_prepare_trace "heap.at:8"
( $at_check_trace; heap-test insert-no-dups-delete-min
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/heap.at:8"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_734
#AT_START_735
at_fn_group_banner 735 'heap.at:9' \
"heap -- insert-with-dups-delete-min" " " 105
at_xfail=no
(
$as_echo "735. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/heap.at:9: heap-test insert-with-dups-delete-min"
at_fn_check_prepare_trace "heap.at:9"
( $at_check_trace; heap-test insert-with-dups-delete-min
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/heap.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_735
#AT_START_736
at_fn_group_banner 736 'heap.at:10' \
"heap -- insert-no-dups-delete-random" " " 105
at_xfail=no
(
$as_echo "736. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/heap.at:10: heap-test insert-no-dups-delete-random"
at_fn_check_prepare_trace "heap.at:10"
( $at_check_trace; heap-test insert-no-dups-delete-random
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/heap.at:10"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_736
#AT_START_737
at_fn_group_banner 737 'heap.at:11' \
"heap -- inc-dec" " " 105
at_xfail=no
(
$as_echo "737. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/heap.at:11: heap-test inc-dec"
at_fn_check_prepare_trace "heap.at:11"
( $at_check_trace; heap-test inc-dec
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/heap.at:11"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_737
#AT_START_738
at_fn_group_banner 738 'heap.at:12' \
"heap -- random-insert-delete" " " 105
at_xfail=no
(
$as_echo "738. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/heap.at:12: heap-test random-insert-delete"
at_fn_check_prepare_trace "heap.at:12"
( $at_check_trace; heap-test random-insert-delete
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/heap.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_738
#AT_START_739
at_fn_group_banner 739 'hmap.at:8' \
"hmap -- insert-any-remove-any-random-hash" " " 106
at_xfail=no
(
$as_echo "739. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:8: hmap-test insert-any-remove-any-random-hash"
at_fn_check_prepare_trace "hmap.at:8"
( $at_check_trace; hmap-test insert-any-remove-any-random-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:8"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_739
#AT_START_740
at_fn_group_banner 740 'hmap.at:9' \
"hmap -- insert-any-remove-any-identity-hash" " " 106
at_xfail=no
(
$as_echo "740. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:9: hmap-test insert-any-remove-any-identity-hash"
at_fn_check_prepare_trace "hmap.at:9"
( $at_check_trace; hmap-test insert-any-remove-any-identity-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_740
#AT_START_741
at_fn_group_banner 741 'hmap.at:10' \
"hmap -- insert-any-remove-any-constant-hash" " " 106
at_xfail=no
(
$as_echo "741. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:10: hmap-test insert-any-remove-any-constant-hash"
at_fn_check_prepare_trace "hmap.at:10"
( $at_check_trace; hmap-test insert-any-remove-any-constant-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:10"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_741
#AT_START_742
at_fn_group_banner 742 'hmap.at:11' \
"hmap -- insert-any-remove-same-random-hash" " " 106
at_xfail=no
(
$as_echo "742. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:11: hmap-test insert-any-remove-same-random-hash"
at_fn_check_prepare_trace "hmap.at:11"
( $at_check_trace; hmap-test insert-any-remove-same-random-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:11"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_742
#AT_START_743
at_fn_group_banner 743 'hmap.at:12' \
"hmap -- insert-any-remove-same-identity-hash" " " 106
at_xfail=no
(
$as_echo "743. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:12: hmap-test insert-any-remove-same-identity-hash"
at_fn_check_prepare_trace "hmap.at:12"
( $at_check_trace; hmap-test insert-any-remove-same-identity-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_743
#AT_START_744
at_fn_group_banner 744 'hmap.at:13' \
"hmap -- insert-any-remove-same-constant-hash" " " 106
at_xfail=no
(
$as_echo "744. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:13: hmap-test insert-any-remove-same-constant-hash"
at_fn_check_prepare_trace "hmap.at:13"
( $at_check_trace; hmap-test insert-any-remove-same-constant-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:13"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_744
#AT_START_745
at_fn_group_banner 745 'hmap.at:14' \
"hmap -- insert-any-remove-reverse-random-hash" " " 106
at_xfail=no
(
$as_echo "745. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:14: hmap-test insert-any-remove-reverse-random-hash"
at_fn_check_prepare_trace "hmap.at:14"
( $at_check_trace; hmap-test insert-any-remove-reverse-random-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:14"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_745
#AT_START_746
at_fn_group_banner 746 'hmap.at:15' \
"hmap -- insert-any-remove-reverse-identity-hash" "" 106
at_xfail=no
(
$as_echo "746. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:15: hmap-test insert-any-remove-reverse-identity-hash"
at_fn_check_prepare_trace "hmap.at:15"
( $at_check_trace; hmap-test insert-any-remove-reverse-identity-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:15"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_746
#AT_START_747
at_fn_group_banner 747 'hmap.at:16' \
"hmap -- insert-any-remove-reverse-constant-hash" "" 106
at_xfail=no
(
$as_echo "747. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:16: hmap-test insert-any-remove-reverse-constant-hash"
at_fn_check_prepare_trace "hmap.at:16"
( $at_check_trace; hmap-test insert-any-remove-reverse-constant-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:16"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_747
#AT_START_748
at_fn_group_banner 748 'hmap.at:17' \
"hmap -- random-sequence-random-hash" " " 106
at_xfail=no
(
$as_echo "748. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:17: hmap-test random-sequence-random-hash"
at_fn_check_prepare_trace "hmap.at:17"
( $at_check_trace; hmap-test random-sequence-random-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:17"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_748
#AT_START_749
at_fn_group_banner 749 'hmap.at:18' \
"hmap -- random-sequence-identity-hash" " " 106
at_xfail=no
(
$as_echo "749. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:18: hmap-test random-sequence-identity-hash"
at_fn_check_prepare_trace "hmap.at:18"
( $at_check_trace; hmap-test random-sequence-identity-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:18"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_749
#AT_START_750
at_fn_group_banner 750 'hmap.at:19' \
"hmap -- random-sequence-constant-hash" " " 106
at_xfail=no
(
$as_echo "750. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:19: hmap-test random-sequence-constant-hash"
at_fn_check_prepare_trace "hmap.at:19"
( $at_check_trace; hmap-test random-sequence-constant-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:19"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_750
#AT_START_751
at_fn_group_banner 751 'hmap.at:20' \
"hmap -- insert-ordered-random-hash" " " 106
at_xfail=no
(
$as_echo "751. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:20: hmap-test insert-ordered-random-hash"
at_fn_check_prepare_trace "hmap.at:20"
( $at_check_trace; hmap-test insert-ordered-random-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:20"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_751
#AT_START_752
at_fn_group_banner 752 'hmap.at:21' \
"hmap -- insert-ordered-identity-hash" " " 106
at_xfail=no
(
$as_echo "752. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:21: hmap-test insert-ordered-identity-hash"
at_fn_check_prepare_trace "hmap.at:21"
( $at_check_trace; hmap-test insert-ordered-identity-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:21"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_752
#AT_START_753
at_fn_group_banner 753 'hmap.at:22' \
"hmap -- insert-ordered-constant-hash" " " 106
at_xfail=no
(
$as_echo "753. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:22: hmap-test insert-ordered-constant-hash"
at_fn_check_prepare_trace "hmap.at:22"
( $at_check_trace; hmap-test insert-ordered-constant-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:22"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_753
#AT_START_754
at_fn_group_banner 754 'hmap.at:23' \
"hmap -- moved-random-hash" " " 106
at_xfail=no
(
$as_echo "754. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:23: hmap-test moved-random-hash"
at_fn_check_prepare_trace "hmap.at:23"
( $at_check_trace; hmap-test moved-random-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:23"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_754
#AT_START_755
at_fn_group_banner 755 'hmap.at:24' \
"hmap -- moved-identity-hash" " " 106
at_xfail=no
(
$as_echo "755. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:24: hmap-test moved-identity-hash"
at_fn_check_prepare_trace "hmap.at:24"
( $at_check_trace; hmap-test moved-identity-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:24"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_755
#AT_START_756
at_fn_group_banner 756 'hmap.at:25' \
"hmap -- moved-constant-hash" " " 106
at_xfail=no
(
$as_echo "756. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:25: hmap-test moved-constant-hash"
at_fn_check_prepare_trace "hmap.at:25"
( $at_check_trace; hmap-test moved-constant-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:25"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_756
#AT_START_757
at_fn_group_banner 757 'hmap.at:26' \
"hmap -- changed-random-hash" " " 106
at_xfail=no
(
$as_echo "757. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:26: hmap-test changed-random-hash"
at_fn_check_prepare_trace "hmap.at:26"
( $at_check_trace; hmap-test changed-random-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:26"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_757
#AT_START_758
at_fn_group_banner 758 'hmap.at:27' \
"hmap -- changed-identity-hash" " " 106
at_xfail=no
(
$as_echo "758. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:27: hmap-test changed-identity-hash"
at_fn_check_prepare_trace "hmap.at:27"
( $at_check_trace; hmap-test changed-identity-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:27"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_758
#AT_START_759
at_fn_group_banner 759 'hmap.at:28' \
"hmap -- changed-constant-hash" " " 106
at_xfail=no
(
$as_echo "759. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:28: hmap-test changed-constant-hash"
at_fn_check_prepare_trace "hmap.at:28"
( $at_check_trace; hmap-test changed-constant-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:28"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_759
#AT_START_760
at_fn_group_banner 760 'hmap.at:29' \
"hmap -- swap-random-hash" " " 106
at_xfail=no
(
$as_echo "760. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:29: hmap-test swap-random-hash"
at_fn_check_prepare_trace "hmap.at:29"
( $at_check_trace; hmap-test swap-random-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:29"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_760
#AT_START_761
at_fn_group_banner 761 'hmap.at:30' \
"hmap -- clear" " " 106
at_xfail=no
(
$as_echo "761. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:30: hmap-test clear"
at_fn_check_prepare_trace "hmap.at:30"
( $at_check_trace; hmap-test clear
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:30"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_761
#AT_START_762
at_fn_group_banner 762 'hmap.at:31' \
"hmap -- destroy-null" " " 106
at_xfail=no
(
$as_echo "762. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:31: hmap-test destroy-null"
at_fn_check_prepare_trace "hmap.at:31"
( $at_check_trace; hmap-test destroy-null
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:31"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_762
#AT_START_763
at_fn_group_banner 763 'hmap.at:32' \
"hmap -- shrink-empty" " " 106
at_xfail=no
(
$as_echo "763. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmap.at:32: hmap-test shrink-empty"
at_fn_check_prepare_trace "hmap.at:32"
( $at_check_trace; hmap-test shrink-empty
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmap.at:32"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_763
#AT_START_764
at_fn_group_banner 764 'hmapx.at:8' \
"hmapx -- insert-any-remove-any-random-hash" " " 107
at_xfail=no
(
$as_echo "764. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:8: hmapx-test insert-any-remove-any-random-hash"
at_fn_check_prepare_trace "hmapx.at:8"
( $at_check_trace; hmapx-test insert-any-remove-any-random-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:8"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_764
#AT_START_765
at_fn_group_banner 765 'hmapx.at:9' \
"hmapx -- insert-any-remove-any-identity-hash" " " 107
at_xfail=no
(
$as_echo "765. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:9: hmapx-test insert-any-remove-any-identity-hash"
at_fn_check_prepare_trace "hmapx.at:9"
( $at_check_trace; hmapx-test insert-any-remove-any-identity-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_765
#AT_START_766
at_fn_group_banner 766 'hmapx.at:10' \
"hmapx -- insert-any-remove-any-constant-hash" " " 107
at_xfail=no
(
$as_echo "766. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:10: hmapx-test insert-any-remove-any-constant-hash"
at_fn_check_prepare_trace "hmapx.at:10"
( $at_check_trace; hmapx-test insert-any-remove-any-constant-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:10"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_766
#AT_START_767
at_fn_group_banner 767 'hmapx.at:11' \
"hmapx -- insert-any-remove-same-random-hash" " " 107
at_xfail=no
(
$as_echo "767. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:11: hmapx-test insert-any-remove-same-random-hash"
at_fn_check_prepare_trace "hmapx.at:11"
( $at_check_trace; hmapx-test insert-any-remove-same-random-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:11"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_767
#AT_START_768
at_fn_group_banner 768 'hmapx.at:12' \
"hmapx -- insert-any-remove-same-identity-hash" " " 107
at_xfail=no
(
$as_echo "768. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:12: hmapx-test insert-any-remove-same-identity-hash"
at_fn_check_prepare_trace "hmapx.at:12"
( $at_check_trace; hmapx-test insert-any-remove-same-identity-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_768
#AT_START_769
at_fn_group_banner 769 'hmapx.at:13' \
"hmapx -- insert-any-remove-same-constant-hash" " " 107
at_xfail=no
(
$as_echo "769. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:13: hmapx-test insert-any-remove-same-constant-hash"
at_fn_check_prepare_trace "hmapx.at:13"
( $at_check_trace; hmapx-test insert-any-remove-same-constant-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:13"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_769
#AT_START_770
at_fn_group_banner 770 'hmapx.at:14' \
"hmapx -- insert-any-remove-reverse-random-hash" " " 107
at_xfail=no
(
$as_echo "770. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:14: hmapx-test insert-any-remove-reverse-random-hash"
at_fn_check_prepare_trace "hmapx.at:14"
( $at_check_trace; hmapx-test insert-any-remove-reverse-random-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:14"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_770
#AT_START_771
at_fn_group_banner 771 'hmapx.at:15' \
"hmapx -- insert-any-remove-reverse-identity-hash" "" 107
at_xfail=no
(
$as_echo "771. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:15: hmapx-test insert-any-remove-reverse-identity-hash"
at_fn_check_prepare_trace "hmapx.at:15"
( $at_check_trace; hmapx-test insert-any-remove-reverse-identity-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:15"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_771
#AT_START_772
at_fn_group_banner 772 'hmapx.at:16' \
"hmapx -- insert-any-remove-reverse-constant-hash" "" 107
at_xfail=no
(
$as_echo "772. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:16: hmapx-test insert-any-remove-reverse-constant-hash"
at_fn_check_prepare_trace "hmapx.at:16"
( $at_check_trace; hmapx-test insert-any-remove-reverse-constant-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:16"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_772
#AT_START_773
at_fn_group_banner 773 'hmapx.at:17' \
"hmapx -- random-sequence-random-hash" " " 107
at_xfail=no
(
$as_echo "773. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:17: hmapx-test random-sequence-random-hash"
at_fn_check_prepare_trace "hmapx.at:17"
( $at_check_trace; hmapx-test random-sequence-random-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:17"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_773
#AT_START_774
at_fn_group_banner 774 'hmapx.at:18' \
"hmapx -- random-sequence-identity-hash" " " 107
at_xfail=no
(
$as_echo "774. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:18: hmapx-test random-sequence-identity-hash"
at_fn_check_prepare_trace "hmapx.at:18"
( $at_check_trace; hmapx-test random-sequence-identity-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:18"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_774
#AT_START_775
at_fn_group_banner 775 'hmapx.at:19' \
"hmapx -- random-sequence-constant-hash" " " 107
at_xfail=no
(
$as_echo "775. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:19: hmapx-test random-sequence-constant-hash"
at_fn_check_prepare_trace "hmapx.at:19"
( $at_check_trace; hmapx-test random-sequence-constant-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:19"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_775
#AT_START_776
at_fn_group_banner 776 'hmapx.at:20' \
"hmapx -- insert-ordered-random-hash" " " 107
at_xfail=no
(
$as_echo "776. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:20: hmapx-test insert-ordered-random-hash"
at_fn_check_prepare_trace "hmapx.at:20"
( $at_check_trace; hmapx-test insert-ordered-random-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:20"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_776
#AT_START_777
at_fn_group_banner 777 'hmapx.at:21' \
"hmapx -- insert-ordered-identity-hash" " " 107
at_xfail=no
(
$as_echo "777. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:21: hmapx-test insert-ordered-identity-hash"
at_fn_check_prepare_trace "hmapx.at:21"
( $at_check_trace; hmapx-test insert-ordered-identity-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:21"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_777
#AT_START_778
at_fn_group_banner 778 'hmapx.at:22' \
"hmapx -- insert-ordered-constant-hash" " " 107
at_xfail=no
(
$as_echo "778. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:22: hmapx-test insert-ordered-constant-hash"
at_fn_check_prepare_trace "hmapx.at:22"
( $at_check_trace; hmapx-test insert-ordered-constant-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:22"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_778
#AT_START_779
at_fn_group_banner 779 'hmapx.at:23' \
"hmapx -- moved-random-hash" " " 107
at_xfail=no
(
$as_echo "779. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:23: hmapx-test moved-random-hash"
at_fn_check_prepare_trace "hmapx.at:23"
( $at_check_trace; hmapx-test moved-random-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:23"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_779
#AT_START_780
at_fn_group_banner 780 'hmapx.at:24' \
"hmapx -- moved-identity-hash" " " 107
at_xfail=no
(
$as_echo "780. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:24: hmapx-test moved-identity-hash"
at_fn_check_prepare_trace "hmapx.at:24"
( $at_check_trace; hmapx-test moved-identity-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:24"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_780
#AT_START_781
at_fn_group_banner 781 'hmapx.at:25' \
"hmapx -- moved-constant-hash" " " 107
at_xfail=no
(
$as_echo "781. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:25: hmapx-test moved-constant-hash"
at_fn_check_prepare_trace "hmapx.at:25"
( $at_check_trace; hmapx-test moved-constant-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:25"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_781
#AT_START_782
at_fn_group_banner 782 'hmapx.at:26' \
"hmapx -- changed-random-hash" " " 107
at_xfail=no
(
$as_echo "782. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:26: hmapx-test changed-random-hash"
at_fn_check_prepare_trace "hmapx.at:26"
( $at_check_trace; hmapx-test changed-random-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:26"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_782
#AT_START_783
at_fn_group_banner 783 'hmapx.at:27' \
"hmapx -- changed-identity-hash" " " 107
at_xfail=no
(
$as_echo "783. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:27: hmapx-test changed-identity-hash"
at_fn_check_prepare_trace "hmapx.at:27"
( $at_check_trace; hmapx-test changed-identity-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:27"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_783
#AT_START_784
at_fn_group_banner 784 'hmapx.at:28' \
"hmapx -- changed-constant-hash" " " 107
at_xfail=no
(
$as_echo "784. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:28: hmapx-test changed-constant-hash"
at_fn_check_prepare_trace "hmapx.at:28"
( $at_check_trace; hmapx-test changed-constant-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:28"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_784
#AT_START_785
at_fn_group_banner 785 'hmapx.at:29' \
"hmapx -- change-random-hash" " " 107
at_xfail=no
(
$as_echo "785. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:29: hmapx-test change-random-hash"
at_fn_check_prepare_trace "hmapx.at:29"
( $at_check_trace; hmapx-test change-random-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:29"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_785
#AT_START_786
at_fn_group_banner 786 'hmapx.at:30' \
"hmapx -- change-identity-hash" " " 107
at_xfail=no
(
$as_echo "786. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:30: hmapx-test change-identity-hash"
at_fn_check_prepare_trace "hmapx.at:30"
( $at_check_trace; hmapx-test change-identity-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:30"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_786
#AT_START_787
at_fn_group_banner 787 'hmapx.at:31' \
"hmapx -- change-constant-hash" " " 107
at_xfail=no
(
$as_echo "787. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:31: hmapx-test change-constant-hash"
at_fn_check_prepare_trace "hmapx.at:31"
( $at_check_trace; hmapx-test change-constant-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:31"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_787
#AT_START_788
at_fn_group_banner 788 'hmapx.at:32' \
"hmapx -- swap-random-hash" " " 107
at_xfail=no
(
$as_echo "788. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:32: hmapx-test swap-random-hash"
at_fn_check_prepare_trace "hmapx.at:32"
( $at_check_trace; hmapx-test swap-random-hash
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:32"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_788
#AT_START_789
at_fn_group_banner 789 'hmapx.at:33' \
"hmapx -- clear" " " 107
at_xfail=no
(
$as_echo "789. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:33: hmapx-test clear"
at_fn_check_prepare_trace "hmapx.at:33"
( $at_check_trace; hmapx-test clear
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:33"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_789
#AT_START_790
at_fn_group_banner 790 'hmapx.at:34' \
"hmapx -- destroy-null" " " 107
at_xfail=no
(
$as_echo "790. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:34: hmapx-test destroy-null"
at_fn_check_prepare_trace "hmapx.at:34"
( $at_check_trace; hmapx-test destroy-null
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:34"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_790
#AT_START_791
at_fn_group_banner 791 'hmapx.at:35' \
"hmapx -- shrink-empty" " " 107
at_xfail=no
(
$as_echo "791. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/hmapx.at:35: hmapx-test shrink-empty"
at_fn_check_prepare_trace "hmapx.at:35"
( $at_check_trace; hmapx-test shrink-empty
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/hmapx.at:35"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_791
#AT_START_792
at_fn_group_banner 792 'i18n.at:20' \
"convert reflexively" " " 108
at_xfail=no
(
$as_echo "792. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:20: i18n-test supports_encodings 'ASCII' 'ASCII'"
at_fn_check_prepare_trace "i18n.at:20"
( $at_check_trace; i18n-test supports_encodings 'ASCII' 'ASCII'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:20"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:20: i18n-test recode 'ASCII' 'ASCII' \`printf 'abc'\`"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:20"
( $at_check_trace; i18n-test recode 'ASCII' 'ASCII' `printf 'abc'`
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'abc'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:20"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_792
#AT_START_793
at_fn_group_banner 793 'i18n.at:21' \
"convert without any change" " " 108
at_xfail=no
(
$as_echo "793. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:21: i18n-test supports_encodings 'ASCII' 'UTF-8'"
at_fn_check_prepare_trace "i18n.at:21"
( $at_check_trace; i18n-test supports_encodings 'ASCII' 'UTF-8'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:21"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:21: i18n-test recode 'ASCII' 'UTF-8' \`printf 'abc'\`"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:21"
( $at_check_trace; i18n-test recode 'ASCII' 'UTF-8' `printf 'abc'`
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'abc'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:21"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_793
#AT_START_794
at_fn_group_banner 794 'i18n.at:23' \
"convert from ISO-8859-1 to UTF-8" " " 108
at_xfail=no
(
$as_echo "794. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:23: i18n-test supports_encodings 'ISO-8859-1' 'UTF-8'"
at_fn_check_prepare_trace "i18n.at:23"
( $at_check_trace; i18n-test supports_encodings 'ISO-8859-1' 'UTF-8'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:23"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:23: i18n-test recode 'ISO-8859-1' 'UTF-8' \`printf '\\242'\`"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:23"
( $at_check_trace; i18n-test recode 'ISO-8859-1' 'UTF-8' `printf '\242'`
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf '\302\242'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:23"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_794
#AT_START_795
at_fn_group_banner 795 'i18n.at:25' \
"convert from UTF-8 to ISO-8859-1" " " 108
at_xfail=no
(
$as_echo "795. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:25: i18n-test supports_encodings 'UTF-8' 'ISO-8859-1'"
at_fn_check_prepare_trace "i18n.at:25"
( $at_check_trace; i18n-test supports_encodings 'UTF-8' 'ISO-8859-1'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:25"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:25: i18n-test recode 'UTF-8' 'ISO-8859-1' \`printf '\\302\\242'\`"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:25"
( $at_check_trace; i18n-test recode 'UTF-8' 'ISO-8859-1' `printf '\302\242'`
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf '\242'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:25"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_795
#AT_START_796
at_fn_group_banner 796 'i18n.at:29' \
"convert invalid UTF-8 to ISO-8859-1" " " 108
at_xfail=no
(
$as_echo "796. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:29: i18n-test supports_encodings 'UTF-8' 'ISO-8859-1'"
at_fn_check_prepare_trace "i18n.at:29"
( $at_check_trace; i18n-test supports_encodings 'UTF-8' 'ISO-8859-1'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:29"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:29: i18n-test recode 'UTF-8' 'ISO-8859-1' \`printf 'xy\\300z'\`"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:29"
( $at_check_trace; i18n-test recode 'UTF-8' 'ISO-8859-1' `printf 'xy\300z'`
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'xy?z'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:29"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_796
#AT_START_797
at_fn_group_banner 797 'i18n.at:32' \
"convert truncated UTF-8 to ISO-8559-1" " " 108
at_xfail=no
(
$as_echo "797. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:32: i18n-test supports_encodings 'UTF-8' 'ISO-8859-1'"
at_fn_check_prepare_trace "i18n.at:32"
( $at_check_trace; i18n-test supports_encodings 'UTF-8' 'ISO-8859-1'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:32"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:32: i18n-test recode 'UTF-8' 'ISO-8859-1' \`printf 'xy\\302'\`"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:32"
( $at_check_trace; i18n-test recode 'UTF-8' 'ISO-8859-1' `printf 'xy\302'`
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'xy?'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:32"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_797
#AT_START_798
at_fn_group_banner 798 'i18n.at:37' \
"convert dropped final character in windows-1258" "" 108
at_xfail=no
(
$as_echo "798. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:37: i18n-test supports_encodings 'windows-1258' 'UTF-8'"
at_fn_check_prepare_trace "i18n.at:37"
( $at_check_trace; i18n-test supports_encodings 'windows-1258' 'UTF-8'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:37"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:37: i18n-test recode 'windows-1258' 'UTF-8' \`printf 'aeiou'\`"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:37"
( $at_check_trace; i18n-test recode 'windows-1258' 'UTF-8' `printf 'aeiou'`
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'aeiou'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:37"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_798
#AT_START_799
at_fn_group_banner 799 'i18n.at:42' \
"convert from ISO-8859-1 to UTF-8 with overflow" " " 108
at_xfail=no
(
$as_echo "799. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:42: i18n-test supports_encodings 'ISO-8859-1' 'UTF-8'"
at_fn_check_prepare_trace "i18n.at:42"
( $at_check_trace; i18n-test supports_encodings 'ISO-8859-1' 'UTF-8'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:42"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:42: i18n-test recode 'ISO-8859-1' 'UTF-8' \`printf 'Tsch\\374\\337!'\`"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:42"
( $at_check_trace; i18n-test recode 'ISO-8859-1' 'UTF-8' `printf 'Tsch\374\337!'`
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'Tsch\303\274\303\237!'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:42"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_799
#AT_START_800
at_fn_group_banner 800 'i18n.at:46' \
"convert unknown encoding" " " 108
at_xfail=no
(
$as_echo "800. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:48: i18n-test recode nonexistent1 nonexistent2 asdf"
at_fn_check_prepare_trace "i18n.at:48"
( $at_check_trace; i18n-test recode nonexistent1 nonexistent2 asdf
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "Warning: cannot create a converter for \`nonexistent1' to \`nonexistent2': Invalid argument
" | \
$at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "asdf
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:48"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_800
#AT_START_801
at_fn_group_banner 801 'i18n.at:77' \
"truncate \"abc\" to 6 bytes in UTF-8" " " 109
at_xfail=no
(
$as_echo "801. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:77: i18n-test supports_encodings 'UTF-8'"
at_fn_check_prepare_trace "i18n.at:77"
( $at_check_trace; i18n-test supports_encodings 'UTF-8'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:77"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:77: i18n-test concat \"\`printf 'abc'\`\" \"\`printf ''\`\" 'UTF-8' '6'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:77"
( $at_check_trace; i18n-test concat "`printf 'abc'`" "`printf ''`" 'UTF-8' '6'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'abc'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:77"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_801
#AT_START_802
at_fn_group_banner 802 'i18n.at:78' \
"truncate \"\" + \"xyz\" to 6 bytes in UTF-8" " " 109
at_xfail=no
(
$as_echo "802. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:78: i18n-test supports_encodings 'UTF-8'"
at_fn_check_prepare_trace "i18n.at:78"
( $at_check_trace; i18n-test supports_encodings 'UTF-8'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:78"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:78: i18n-test concat \"\`printf ''\`\" \"\`printf 'xyz'\`\" 'UTF-8' '6'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:78"
( $at_check_trace; i18n-test concat "`printf ''`" "`printf 'xyz'`" 'UTF-8' '6'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'xyz'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:78"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_802
#AT_START_803
at_fn_group_banner 803 'i18n.at:79' \
"truncate \"\" to 6 bytes in UTF-8" " " 109
at_xfail=no
(
$as_echo "803. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:79: i18n-test supports_encodings 'UTF-8'"
at_fn_check_prepare_trace "i18n.at:79"
( $at_check_trace; i18n-test supports_encodings 'UTF-8'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:79"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:79: i18n-test concat \"\`printf ''\`\" \"\`printf ''\`\" 'UTF-8' '6'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:79"
( $at_check_trace; i18n-test concat "`printf ''`" "`printf ''`" 'UTF-8' '6'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf ''`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:79"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_803
#AT_START_804
at_fn_group_banner 804 'i18n.at:80' \
"truncate \"abcdefghij\" to 6 bytes in UTF-8" " " 109
at_xfail=no
(
$as_echo "804. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:80: i18n-test supports_encodings 'UTF-8'"
at_fn_check_prepare_trace "i18n.at:80"
( $at_check_trace; i18n-test supports_encodings 'UTF-8'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:80"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:80: i18n-test concat \"\`printf 'abcdefghij'\`\" \"\`printf ''\`\" 'UTF-8' '6'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:80"
( $at_check_trace; i18n-test concat "`printf 'abcdefghij'`" "`printf ''`" 'UTF-8' '6'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'abcdef'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:80"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_804
#AT_START_805
at_fn_group_banner 805 'i18n.at:81' \
"truncate \"\" + \"tuvwxyz\" to 6 bytes in UTF-8" " " 109
at_xfail=no
(
$as_echo "805. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:81: i18n-test supports_encodings 'UTF-8'"
at_fn_check_prepare_trace "i18n.at:81"
( $at_check_trace; i18n-test supports_encodings 'UTF-8'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:81"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:81: i18n-test concat \"\`printf ''\`\" \"\`printf 'tuvwxyz'\`\" 'UTF-8' '6'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:81"
( $at_check_trace; i18n-test concat "`printf ''`" "`printf 'tuvwxyz'`" 'UTF-8' '6'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'tuvwxyz'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:81"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_805
#AT_START_806
at_fn_group_banner 806 'i18n.at:83' \
"truncate \"abc\" + \"xyz\" to 6 bytes in UTF-8" " " 109
at_xfail=no
(
$as_echo "806. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:83: i18n-test supports_encodings 'UTF-8'"
at_fn_check_prepare_trace "i18n.at:83"
( $at_check_trace; i18n-test supports_encodings 'UTF-8'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:83"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:83: i18n-test concat \"\`printf 'abc'\`\" \"\`printf 'xyz'\`\" 'UTF-8' '6'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:83"
( $at_check_trace; i18n-test concat "`printf 'abc'`" "`printf 'xyz'`" 'UTF-8' '6'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'abcxyz'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:83"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_806
#AT_START_807
at_fn_group_banner 807 'i18n.at:84' \
"truncate \"abcd\" + \"xyz\" to 6 bytes in UTF-8" " " 109
at_xfail=no
(
$as_echo "807. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:84: i18n-test supports_encodings 'UTF-8'"
at_fn_check_prepare_trace "i18n.at:84"
( $at_check_trace; i18n-test supports_encodings 'UTF-8'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:84"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:84: i18n-test concat \"\`printf 'abcd'\`\" \"\`printf 'xyz'\`\" 'UTF-8' '6'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:84"
( $at_check_trace; i18n-test concat "`printf 'abcd'`" "`printf 'xyz'`" 'UTF-8' '6'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'abcxyz'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:84"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_807
#AT_START_808
at_fn_group_banner 808 'i18n.at:85' \
"truncate \"abc\" + \"uvwxyz\" to 6 bytes in UTF-8" " " 109
at_xfail=no
(
$as_echo "808. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:85: i18n-test supports_encodings 'UTF-8'"
at_fn_check_prepare_trace "i18n.at:85"
( $at_check_trace; i18n-test supports_encodings 'UTF-8'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:85"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:85: i18n-test concat \"\`printf 'abc'\`\" \"\`printf 'uvwxyz'\`\" 'UTF-8' '6'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:85"
( $at_check_trace; i18n-test concat "`printf 'abc'`" "`printf 'uvwxyz'`" 'UTF-8' '6'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'uvwxyz'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:85"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_808
#AT_START_809
at_fn_group_banner 809 'i18n.at:89' \
"truncate \"x\\342\\203\\236\" + \"y\" to 0 bytes in UTF-8" "" 109
at_xfail=no
(
$as_echo "809. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:89: i18n-test supports_encodings 'UTF-8'"
at_fn_check_prepare_trace "i18n.at:89"
( $at_check_trace; i18n-test supports_encodings 'UTF-8'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:89"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:89: i18n-test concat \"\`printf 'x\\342\\203\\236'\`\" \"\`printf 'y'\`\" 'UTF-8' '0'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:89"
( $at_check_trace; i18n-test concat "`printf 'x\342\203\236'`" "`printf 'y'`" 'UTF-8' '0'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'y'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:89"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_809
#AT_START_810
at_fn_group_banner 810 'i18n.at:90' \
"truncate \"x\\342\\203\\236\" + \"y\" to 1 bytes in UTF-8" "" 109
at_xfail=no
(
$as_echo "810. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:90: i18n-test supports_encodings 'UTF-8'"
at_fn_check_prepare_trace "i18n.at:90"
( $at_check_trace; i18n-test supports_encodings 'UTF-8'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:90"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:90: i18n-test concat \"\`printf 'x\\342\\203\\236'\`\" \"\`printf 'y'\`\" 'UTF-8' '1'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:90"
( $at_check_trace; i18n-test concat "`printf 'x\342\203\236'`" "`printf 'y'`" 'UTF-8' '1'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'y'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:90"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_810
#AT_START_811
at_fn_group_banner 811 'i18n.at:91' \
"truncate \"x\\342\\203\\236\" + \"y\" to 2 bytes in UTF-8" "" 109
at_xfail=no
(
$as_echo "811. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:91: i18n-test supports_encodings 'UTF-8'"
at_fn_check_prepare_trace "i18n.at:91"
( $at_check_trace; i18n-test supports_encodings 'UTF-8'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:91"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:91: i18n-test concat \"\`printf 'x\\342\\203\\236'\`\" \"\`printf 'y'\`\" 'UTF-8' '2'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:91"
( $at_check_trace; i18n-test concat "`printf 'x\342\203\236'`" "`printf 'y'`" 'UTF-8' '2'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'y'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:91"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_811
#AT_START_812
at_fn_group_banner 812 'i18n.at:92' \
"truncate \"x\\342\\203\\236\" + \"y\" to 3 bytes in UTF-8" "" 109
at_xfail=no
(
$as_echo "812. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:92: i18n-test supports_encodings 'UTF-8'"
at_fn_check_prepare_trace "i18n.at:92"
( $at_check_trace; i18n-test supports_encodings 'UTF-8'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:92"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:92: i18n-test concat \"\`printf 'x\\342\\203\\236'\`\" \"\`printf 'y'\`\" 'UTF-8' '3'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:92"
( $at_check_trace; i18n-test concat "`printf 'x\342\203\236'`" "`printf 'y'`" 'UTF-8' '3'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'y'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:92"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_812
#AT_START_813
at_fn_group_banner 813 'i18n.at:93' \
"truncate \"x\\342\\203\\236\" + \"y\" to 4 bytes in UTF-8" "" 109
at_xfail=no
(
$as_echo "813. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:93: i18n-test supports_encodings 'UTF-8'"
at_fn_check_prepare_trace "i18n.at:93"
( $at_check_trace; i18n-test supports_encodings 'UTF-8'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:93"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:93: i18n-test concat \"\`printf 'x\\342\\203\\236'\`\" \"\`printf 'y'\`\" 'UTF-8' '4'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:93"
( $at_check_trace; i18n-test concat "`printf 'x\342\203\236'`" "`printf 'y'`" 'UTF-8' '4'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'y'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:93"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_813
#AT_START_814
at_fn_group_banner 814 'i18n.at:94' \
"truncate \"x\\342\\203\\236\" + \"y\" to 5 bytes in UTF-8" "" 109
at_xfail=no
(
$as_echo "814. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:94: i18n-test supports_encodings 'UTF-8'"
at_fn_check_prepare_trace "i18n.at:94"
( $at_check_trace; i18n-test supports_encodings 'UTF-8'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:94"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:94: i18n-test concat \"\`printf 'x\\342\\203\\236'\`\" \"\`printf 'y'\`\" 'UTF-8' '5'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:94"
( $at_check_trace; i18n-test concat "`printf 'x\342\203\236'`" "`printf 'y'`" 'UTF-8' '5'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'x\342\203\236y'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:94"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_814
#AT_START_815
at_fn_group_banner 815 'i18n.at:97' \
"truncate \"\\303\\251\\303\\250\\303\\244\" + \"xyz\" to 0 bytes in ISO-8859-1" "" 109
at_xfail=no
(
$as_echo "815. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:97: i18n-test supports_encodings 'ISO-8859-1'"
at_fn_check_prepare_trace "i18n.at:97"
( $at_check_trace; i18n-test supports_encodings 'ISO-8859-1'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:97"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:97: i18n-test concat \"\`printf '\\303\\251\\303\\250\\303\\244'\`\" \"\`printf 'xyz'\`\" 'ISO-8859-1' '0'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:97"
( $at_check_trace; i18n-test concat "`printf '\303\251\303\250\303\244'`" "`printf 'xyz'`" 'ISO-8859-1' '0'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'xyz'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:97"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_815
#AT_START_816
at_fn_group_banner 816 'i18n.at:98' \
"truncate \"\\303\\251\\303\\250\\303\\244\" + \"xyz\" to 1 bytes in ISO-8859-1" "" 109
at_xfail=no
(
$as_echo "816. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:98: i18n-test supports_encodings 'ISO-8859-1'"
at_fn_check_prepare_trace "i18n.at:98"
( $at_check_trace; i18n-test supports_encodings 'ISO-8859-1'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:98"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:98: i18n-test concat \"\`printf '\\303\\251\\303\\250\\303\\244'\`\" \"\`printf 'xyz'\`\" 'ISO-8859-1' '1'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:98"
( $at_check_trace; i18n-test concat "`printf '\303\251\303\250\303\244'`" "`printf 'xyz'`" 'ISO-8859-1' '1'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'xyz'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:98"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_816
#AT_START_817
at_fn_group_banner 817 'i18n.at:99' \
"truncate \"\\303\\251\\303\\250\\303\\244\" + \"xyz\" to 2 bytes in ISO-8859-1" "" 109
at_xfail=no
(
$as_echo "817. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:99: i18n-test supports_encodings 'ISO-8859-1'"
at_fn_check_prepare_trace "i18n.at:99"
( $at_check_trace; i18n-test supports_encodings 'ISO-8859-1'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:99"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:99: i18n-test concat \"\`printf '\\303\\251\\303\\250\\303\\244'\`\" \"\`printf 'xyz'\`\" 'ISO-8859-1' '2'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:99"
( $at_check_trace; i18n-test concat "`printf '\303\251\303\250\303\244'`" "`printf 'xyz'`" 'ISO-8859-1' '2'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'xyz'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:99"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_817
#AT_START_818
at_fn_group_banner 818 'i18n.at:100' \
"truncate \"\\303\\251\\303\\250\\303\\244\" + \"xyz\" to 3 bytes in ISO-8859-1" "" 109
at_xfail=no
(
$as_echo "818. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:100: i18n-test supports_encodings 'ISO-8859-1'"
at_fn_check_prepare_trace "i18n.at:100"
( $at_check_trace; i18n-test supports_encodings 'ISO-8859-1'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:100"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:100: i18n-test concat \"\`printf '\\303\\251\\303\\250\\303\\244'\`\" \"\`printf 'xyz'\`\" 'ISO-8859-1' '3'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:100"
( $at_check_trace; i18n-test concat "`printf '\303\251\303\250\303\244'`" "`printf 'xyz'`" 'ISO-8859-1' '3'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf 'xyz'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:100"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_818
#AT_START_819
at_fn_group_banner 819 'i18n.at:101' \
"truncate \"\\303\\251\\303\\250\\303\\244\" + \"xyz\" to 4 bytes in ISO-8859-1" "" 109
at_xfail=no
(
$as_echo "819. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:101: i18n-test supports_encodings 'ISO-8859-1'"
at_fn_check_prepare_trace "i18n.at:101"
( $at_check_trace; i18n-test supports_encodings 'ISO-8859-1'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:101"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:101: i18n-test concat \"\`printf '\\303\\251\\303\\250\\303\\244'\`\" \"\`printf 'xyz'\`\" 'ISO-8859-1' '4'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:101"
( $at_check_trace; i18n-test concat "`printf '\303\251\303\250\303\244'`" "`printf 'xyz'`" 'ISO-8859-1' '4'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf '\303\251xyz'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:101"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_819
#AT_START_820
at_fn_group_banner 820 'i18n.at:103' \
"truncate \"\\303\\251\\303\\250\\303\\244\" + \"xyz\" to 5 bytes in ISO-8859-1" "" 109
at_xfail=no
(
$as_echo "820. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:103: i18n-test supports_encodings 'ISO-8859-1'"
at_fn_check_prepare_trace "i18n.at:103"
( $at_check_trace; i18n-test supports_encodings 'ISO-8859-1'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:103"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:103: i18n-test concat \"\`printf '\\303\\251\\303\\250\\303\\244'\`\" \"\`printf 'xyz'\`\" 'ISO-8859-1' '5'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:103"
( $at_check_trace; i18n-test concat "`printf '\303\251\303\250\303\244'`" "`printf 'xyz'`" 'ISO-8859-1' '5'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf '\303\251\303\250xyz'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:103"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_820
#AT_START_821
at_fn_group_banner 821 'i18n.at:105' \
"truncate \"\\303\\251\\303\\250\\303\\244\" + \"xyz\" to 6 bytes in ISO-8859-1" "" 109
at_xfail=no
(
$as_echo "821. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/i18n.at:105: i18n-test supports_encodings 'ISO-8859-1'"
at_fn_check_prepare_trace "i18n.at:105"
( $at_check_trace; i18n-test supports_encodings 'ISO-8859-1'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:105"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/i18n.at:105: i18n-test concat \"\`printf '\\303\\251\\303\\250\\303\\244'\`\" \"\`printf 'xyz'\`\" 'ISO-8859-1' '6'"
at_fn_check_prepare_notrace 'a `...` command substitution' "i18n.at:105"
( $at_check_trace; i18n-test concat "`printf '\303\251\303\250\303\244'`" "`printf 'xyz'`" 'ISO-8859-1' '6'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "`printf '\303\251\303\250\303\244xyz'`
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/i18n.at:105"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_821
#AT_START_822
at_fn_group_banner 822 'line-reader.at:3' \
"read ASCII" " " 110
at_xfail=no
(
$as_echo "822. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/line-reader.at:5: i18n-test supports_encodings ASCII"
at_fn_check_prepare_trace "line-reader.at:5"
( $at_check_trace; i18n-test supports_encodings ASCII
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/line-reader.at:5"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/line-reader.at:6: echo string | line-reader-test read - ASCII"
at_fn_check_prepare_notrace 'a shell pipeline' "line-reader.at:6"
( $at_check_trace; echo string | line-reader-test read - ASCII
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "encoded in ASCII
\"string\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/line-reader.at:6"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_822
#AT_START_823
at_fn_group_banner 823 'line-reader.at:12' \
"read UTF-8" " " 110
at_xfail=no
(
$as_echo "823. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/line-reader.at:14: printf '\\346\\227\\245\\346\\234\\254\\350\\252\\236\\n' | line-reader-test read - UTF-8"
at_fn_check_prepare_notrace 'a shell pipeline' "line-reader.at:14"
( $at_check_trace; printf '\346\227\245\346\234\254\350\252\236\n' | line-reader-test read - UTF-8
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "encoded in UTF-8
\"日本語\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/line-reader.at:14"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_823
#AT_START_824
at_fn_group_banner 824 'line-reader.at:20' \
"read EUC-JP" " " 110
at_xfail=no
(
$as_echo "824. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/line-reader.at:22: i18n-test supports_encodings EUC-JP"
at_fn_check_prepare_trace "line-reader.at:22"
( $at_check_trace; i18n-test supports_encodings EUC-JP
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/line-reader.at:22"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/line-reader.at:23: printf '\\244\\241 \\244\\242 \\244\\243 \\244\\244 \\244\\245 \\244\\246 \\244\\247 \\244\\250 \\244\\251 \\244\\252\\n' | line-reader-test read - EUC-JP"
at_fn_check_prepare_notrace 'a shell pipeline' "line-reader.at:23"
( $at_check_trace; printf '\244\241 \244\242 \244\243 \244\244 \244\245 \244\246 \244\247 \244\250 \244\251 \244\252\n' | line-reader-test read - EUC-JP
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "encoded in EUC-JP
\"ぁ あ ぃ い ぅ う ぇ え ぉ お\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/line-reader.at:23"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_824
#AT_START_825
at_fn_group_banner 825 'line-reader.at:29' \
"read ASCII as Auto" " " 110
at_xfail=no
(
$as_echo "825. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/line-reader.at:31: echo string | line-reader-test read - Auto"
at_fn_check_prepare_notrace 'a shell pipeline' "line-reader.at:31"
( $at_check_trace; echo string | line-reader-test read - Auto
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "encoded in ASCII (auto)
\"string\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/line-reader.at:31"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_825
#AT_START_826
at_fn_group_banner 826 'line-reader.at:37' \
"read UTF-8 as Auto" " " 110
at_xfail=no
(
$as_echo "826. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/line-reader.at:39: printf 'entr\\303\\251e\\n' | line-reader-test read - Auto"
at_fn_check_prepare_notrace 'a shell pipeline' "line-reader.at:39"
( $at_check_trace; printf 'entr\303\251e\n' | line-reader-test read - Auto
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "encoded in ASCII (auto)
encoded in UTF-8
\"entrée\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/line-reader.at:39"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_826
#AT_START_827
at_fn_group_banner 827 'line-reader.at:46' \
"read ISO-8859-1 as Auto,ISO-8859-1" " " 110
at_xfail=no
(
$as_echo "827. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/line-reader.at:48: i18n-test supports_encodings ISO-8859-1"
at_fn_check_prepare_trace "line-reader.at:48"
( $at_check_trace; i18n-test supports_encodings ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/line-reader.at:48"
$at_failed && at_fn_log_failure
$at_traceon; }
buffer_size=`line-reader-test buffer-size`
($PERL -e "print 'x' x ($buffer_size - 2)"
printf '\none line\ntwo lines\nentr\351e\nfour lines\n') > input
(printf 'encoded in ASCII (auto)\n\"'
$PERL -e "print 'x' x ($buffer_size - 2)"
printf '\"\n"one line"\n"two lines"\nencoded in ISO-8859-1\n"entr\303\251e"\n"four lines"\n') > expout
{ set +x
$as_echo "$at_srcdir/line-reader.at:55: line-reader-test read input Auto,ISO-8859-1"
at_fn_check_prepare_trace "line-reader.at:55"
( $at_check_trace; line-reader-test read input Auto,ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/line-reader.at:55"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_827
#AT_START_828
at_fn_group_banner 828 'line-reader.at:58' \
"read UTF-16BE as Auto,UTF-16BE" " " 110
at_xfail=no
(
$as_echo "828. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/line-reader.at:60: i18n-test supports_encodings UTF-16BE"
at_fn_check_prepare_trace "line-reader.at:60"
( $at_check_trace; i18n-test supports_encodings UTF-16BE
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/line-reader.at:60"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/line-reader.at:61: printf '\\0e\\0n\\0t\\0r\\0\\351\\0e\\0\\n' | line-reader-test read - Auto,UTF-16BE"
at_fn_check_prepare_notrace 'a shell pipeline' "line-reader.at:61"
( $at_check_trace; printf '\0e\0n\0t\0r\0\351\0e\0\n' | line-reader-test read - Auto,UTF-16BE
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "encoded in UTF-16BE
\"entrée\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/line-reader.at:61"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_828
#AT_START_829
at_fn_group_banner 829 'line-reader.at:67' \
"read EUC-JP as Auto,EUC-JP" " " 110
at_xfail=no
(
$as_echo "829. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/line-reader.at:69: i18n-test supports_encodings EUC-JP"
at_fn_check_prepare_trace "line-reader.at:69"
( $at_check_trace; i18n-test supports_encodings EUC-JP
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/line-reader.at:69"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/line-reader.at:70: printf 'entr\\217\\253\\261e\\n' | line-reader-test read - Auto,EUC-JP"
at_fn_check_prepare_notrace 'a shell pipeline' "line-reader.at:70"
( $at_check_trace; printf 'entr\217\253\261e\n' | line-reader-test read - Auto,EUC-JP
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "encoded in EUC-JP
\"entrée\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/line-reader.at:70"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_829
#AT_START_830
at_fn_group_banner 830 'll.at:8' \
"ll -- push-pop" " " 111
at_xfail=no
(
$as_echo "830. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:8: ll-test push-pop"
at_fn_check_prepare_trace "ll.at:8"
( $at_check_trace; ll-test push-pop
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:8"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_830
#AT_START_831
at_fn_group_banner 831 'll.at:9' \
"ll -- insert-remove" " " 111
at_xfail=no
(
$as_echo "831. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:9: ll-test insert-remove"
at_fn_check_prepare_trace "ll.at:9"
( $at_check_trace; ll-test insert-remove
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_831
#AT_START_832
at_fn_group_banner 832 'll.at:10' \
"ll -- swap" " " 111
at_xfail=no
(
$as_echo "832. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:10: ll-test swap"
at_fn_check_prepare_trace "ll.at:10"
( $at_check_trace; ll-test swap
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:10"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_832
#AT_START_833
at_fn_group_banner 833 'll.at:11' \
"ll -- swap-range" " " 111
at_xfail=no
(
$as_echo "833. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:11: ll-test swap-range"
at_fn_check_prepare_trace "ll.at:11"
( $at_check_trace; ll-test swap-range
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:11"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_833
#AT_START_834
at_fn_group_banner 834 'll.at:12' \
"ll -- remove-range" " " 111
at_xfail=no
(
$as_echo "834. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:12: ll-test remove-range"
at_fn_check_prepare_trace "ll.at:12"
( $at_check_trace; ll-test remove-range
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_834
#AT_START_835
at_fn_group_banner 835 'll.at:13' \
"ll -- remove-equal" " " 111
at_xfail=no
(
$as_echo "835. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:13: ll-test remove-equal"
at_fn_check_prepare_trace "ll.at:13"
( $at_check_trace; ll-test remove-equal
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:13"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_835
#AT_START_836
at_fn_group_banner 836 'll.at:14' \
"ll -- remove-if" " " 111
at_xfail=no
(
$as_echo "836. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:14: ll-test remove-if"
at_fn_check_prepare_trace "ll.at:14"
( $at_check_trace; ll-test remove-if
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:14"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_836
#AT_START_837
at_fn_group_banner 837 'll.at:15' \
"ll -- moved" " " 111
at_xfail=no
(
$as_echo "837. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:15: ll-test moved"
at_fn_check_prepare_trace "ll.at:15"
( $at_check_trace; ll-test moved
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:15"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_837
#AT_START_838
at_fn_group_banner 838 'll.at:16' \
"ll -- find-equal" " " 111
at_xfail=no
(
$as_echo "838. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:16: ll-test find-equal"
at_fn_check_prepare_trace "ll.at:16"
( $at_check_trace; ll-test find-equal
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:16"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_838
#AT_START_839
at_fn_group_banner 839 'll.at:17' \
"ll -- find-if" " " 111
at_xfail=no
(
$as_echo "839. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:17: ll-test find-if"
at_fn_check_prepare_trace "ll.at:17"
( $at_check_trace; ll-test find-if
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:17"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_839
#AT_START_840
at_fn_group_banner 840 'll.at:18' \
"ll -- find-adjacent-equal" " " 111
at_xfail=no
(
$as_echo "840. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:18: ll-test find-adjacent-equal"
at_fn_check_prepare_trace "ll.at:18"
( $at_check_trace; ll-test find-adjacent-equal
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:18"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_840
#AT_START_841
at_fn_group_banner 841 'll.at:19' \
"ll -- count-range" " " 111
at_xfail=no
(
$as_echo "841. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:19: ll-test count-range"
at_fn_check_prepare_trace "ll.at:19"
( $at_check_trace; ll-test count-range
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:19"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_841
#AT_START_842
at_fn_group_banner 842 'll.at:20' \
"ll -- count-equal" " " 111
at_xfail=no
(
$as_echo "842. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:20: ll-test count-equal"
at_fn_check_prepare_trace "ll.at:20"
( $at_check_trace; ll-test count-equal
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:20"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_842
#AT_START_843
at_fn_group_banner 843 'll.at:21' \
"ll -- count-if" " " 111
at_xfail=no
(
$as_echo "843. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:21: ll-test count-if"
at_fn_check_prepare_trace "ll.at:21"
( $at_check_trace; ll-test count-if
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:21"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_843
#AT_START_844
at_fn_group_banner 844 'll.at:22' \
"ll -- min-max" " " 111
at_xfail=no
(
$as_echo "844. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:22: ll-test min-max"
at_fn_check_prepare_trace "ll.at:22"
( $at_check_trace; ll-test min-max
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:22"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_844
#AT_START_845
at_fn_group_banner 845 'll.at:23' \
"ll -- lexicographical-compare-3way" " " 111
at_xfail=no
(
$as_echo "845. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:23: ll-test lexicographical-compare-3way"
at_fn_check_prepare_trace "ll.at:23"
( $at_check_trace; ll-test lexicographical-compare-3way
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:23"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_845
#AT_START_846
at_fn_group_banner 846 'll.at:24' \
"ll -- apply" " " 111
at_xfail=no
(
$as_echo "846. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:24: ll-test apply"
at_fn_check_prepare_trace "ll.at:24"
( $at_check_trace; ll-test apply
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:24"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_846
#AT_START_847
at_fn_group_banner 847 'll.at:25' \
"ll -- reverse" " " 111
at_xfail=no
(
$as_echo "847. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:25: ll-test reverse"
at_fn_check_prepare_trace "ll.at:25"
( $at_check_trace; ll-test reverse
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:25"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_847
#AT_START_848
at_fn_group_banner 848 'll.at:26' \
"ll -- permutations-no-dups" " " 111
at_xfail=no
(
$as_echo "848. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:26: ll-test permutations-no-dups"
at_fn_check_prepare_trace "ll.at:26"
( $at_check_trace; ll-test permutations-no-dups
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:26"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_848
#AT_START_849
at_fn_group_banner 849 'll.at:27' \
"ll -- permutations-with-dups" " " 111
at_xfail=no
(
$as_echo "849. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:27: ll-test permutations-with-dups"
at_fn_check_prepare_trace "ll.at:27"
( $at_check_trace; ll-test permutations-with-dups
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:27"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_849
#AT_START_850
at_fn_group_banner 850 'll.at:28' \
"ll -- merge-no-dups" " " 111
at_xfail=no
(
$as_echo "850. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:28: ll-test merge-no-dups"
at_fn_check_prepare_trace "ll.at:28"
( $at_check_trace; ll-test merge-no-dups
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:28"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_850
#AT_START_851
at_fn_group_banner 851 'll.at:29' \
"ll -- merge-with-dups" " " 111
at_xfail=no
(
$as_echo "851. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:29: ll-test merge-with-dups"
at_fn_check_prepare_trace "ll.at:29"
( $at_check_trace; ll-test merge-with-dups
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:29"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_851
#AT_START_852
at_fn_group_banner 852 'll.at:30' \
"ll -- sort-exhaustive" " " 111
at_xfail=no
(
$as_echo "852. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:30: ll-test sort-exhaustive"
at_fn_check_prepare_trace "ll.at:30"
( $at_check_trace; ll-test sort-exhaustive
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:30"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_852
#AT_START_853
at_fn_group_banner 853 'll.at:31' \
"ll -- sort-stable" " " 111
at_xfail=no
(
$as_echo "853. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:31: ll-test sort-stable"
at_fn_check_prepare_trace "ll.at:31"
( $at_check_trace; ll-test sort-stable
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:31"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_853
#AT_START_854
at_fn_group_banner 854 'll.at:32' \
"ll -- sort-subset" " " 111
at_xfail=no
(
$as_echo "854. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:32: ll-test sort-subset"
at_fn_check_prepare_trace "ll.at:32"
( $at_check_trace; ll-test sort-subset
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:32"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_854
#AT_START_855
at_fn_group_banner 855 'll.at:33' \
"ll -- sort-big" " " 111
at_xfail=no
(
$as_echo "855. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:33: ll-test sort-big"
at_fn_check_prepare_trace "ll.at:33"
( $at_check_trace; ll-test sort-big
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:33"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_855
#AT_START_856
at_fn_group_banner 856 'll.at:34' \
"ll -- unique" " " 111
at_xfail=no
(
$as_echo "856. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:34: ll-test unique"
at_fn_check_prepare_trace "ll.at:34"
( $at_check_trace; ll-test unique
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:34"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_856
#AT_START_857
at_fn_group_banner 857 'll.at:35' \
"ll -- sort-unique" " " 111
at_xfail=no
(
$as_echo "857. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:35: ll-test sort-unique"
at_fn_check_prepare_trace "ll.at:35"
( $at_check_trace; ll-test sort-unique
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:35"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_857
#AT_START_858
at_fn_group_banner 858 'll.at:36' \
"ll -- insert-ordered" " " 111
at_xfail=no
(
$as_echo "858. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:36: ll-test insert-ordered"
at_fn_check_prepare_trace "ll.at:36"
( $at_check_trace; ll-test insert-ordered
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:36"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_858
#AT_START_859
at_fn_group_banner 859 'll.at:37' \
"ll -- partition" " " 111
at_xfail=no
(
$as_echo "859. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/ll.at:37: ll-test partition"
at_fn_check_prepare_trace "ll.at:37"
( $at_check_trace; ll-test partition
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ll.at:37"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_859
#AT_START_860
at_fn_group_banner 860 'llx.at:8' \
"llx -- push-pop" " " 112
at_xfail=no
(
$as_echo "860. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:8: llx-test push-pop"
at_fn_check_prepare_trace "llx.at:8"
( $at_check_trace; llx-test push-pop
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:8"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_860
#AT_START_861
at_fn_group_banner 861 'llx.at:9' \
"llx -- insert-remove" " " 112
at_xfail=no
(
$as_echo "861. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:9: llx-test insert-remove"
at_fn_check_prepare_trace "llx.at:9"
( $at_check_trace; llx-test insert-remove
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_861
#AT_START_862
at_fn_group_banner 862 'llx.at:10' \
"llx -- swap" " " 112
at_xfail=no
(
$as_echo "862. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:10: llx-test swap"
at_fn_check_prepare_trace "llx.at:10"
( $at_check_trace; llx-test swap
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:10"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_862
#AT_START_863
at_fn_group_banner 863 'llx.at:11' \
"llx -- swap-range" " " 112
at_xfail=no
(
$as_echo "863. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:11: llx-test swap-range"
at_fn_check_prepare_trace "llx.at:11"
( $at_check_trace; llx-test swap-range
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:11"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_863
#AT_START_864
at_fn_group_banner 864 'llx.at:12' \
"llx -- remove-range" " " 112
at_xfail=no
(
$as_echo "864. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:12: llx-test remove-range"
at_fn_check_prepare_trace "llx.at:12"
( $at_check_trace; llx-test remove-range
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_864
#AT_START_865
at_fn_group_banner 865 'llx.at:13' \
"llx -- remove-equal" " " 112
at_xfail=no
(
$as_echo "865. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:13: llx-test remove-equal"
at_fn_check_prepare_trace "llx.at:13"
( $at_check_trace; llx-test remove-equal
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:13"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_865
#AT_START_866
at_fn_group_banner 866 'llx.at:14' \
"llx -- remove-if" " " 112
at_xfail=no
(
$as_echo "866. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:14: llx-test remove-if"
at_fn_check_prepare_trace "llx.at:14"
( $at_check_trace; llx-test remove-if
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:14"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_866
#AT_START_867
at_fn_group_banner 867 'llx.at:15' \
"llx -- find-equal" " " 112
at_xfail=no
(
$as_echo "867. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:15: llx-test find-equal"
at_fn_check_prepare_trace "llx.at:15"
( $at_check_trace; llx-test find-equal
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:15"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_867
#AT_START_868
at_fn_group_banner 868 'llx.at:16' \
"llx -- find" " " 112
at_xfail=no
(
$as_echo "868. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:16: llx-test find"
at_fn_check_prepare_trace "llx.at:16"
( $at_check_trace; llx-test find
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:16"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_868
#AT_START_869
at_fn_group_banner 869 'llx.at:17' \
"llx -- find-if" " " 112
at_xfail=no
(
$as_echo "869. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:17: llx-test find-if"
at_fn_check_prepare_trace "llx.at:17"
( $at_check_trace; llx-test find-if
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:17"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_869
#AT_START_870
at_fn_group_banner 870 'llx.at:18' \
"llx -- find-adjacent-equal" " " 112
at_xfail=no
(
$as_echo "870. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:18: llx-test find-adjacent-equal"
at_fn_check_prepare_trace "llx.at:18"
( $at_check_trace; llx-test find-adjacent-equal
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:18"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_870
#AT_START_871
at_fn_group_banner 871 'llx.at:19' \
"llx -- count-range" " " 112
at_xfail=no
(
$as_echo "871. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:19: llx-test count-range"
at_fn_check_prepare_trace "llx.at:19"
( $at_check_trace; llx-test count-range
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:19"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_871
#AT_START_872
at_fn_group_banner 872 'llx.at:20' \
"llx -- count-equal" " " 112
at_xfail=no
(
$as_echo "872. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:20: llx-test count-equal"
at_fn_check_prepare_trace "llx.at:20"
( $at_check_trace; llx-test count-equal
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:20"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_872
#AT_START_873
at_fn_group_banner 873 'llx.at:21' \
"llx -- count-if" " " 112
at_xfail=no
(
$as_echo "873. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:21: llx-test count-if"
at_fn_check_prepare_trace "llx.at:21"
( $at_check_trace; llx-test count-if
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:21"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_873
#AT_START_874
at_fn_group_banner 874 'llx.at:22' \
"llx -- min-max" " " 112
at_xfail=no
(
$as_echo "874. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:22: llx-test min-max"
at_fn_check_prepare_trace "llx.at:22"
( $at_check_trace; llx-test min-max
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:22"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_874
#AT_START_875
at_fn_group_banner 875 'llx.at:23' \
"llx -- lexicographical-compare-3way" " " 112
at_xfail=no
(
$as_echo "875. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:23: llx-test lexicographical-compare-3way"
at_fn_check_prepare_trace "llx.at:23"
( $at_check_trace; llx-test lexicographical-compare-3way
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:23"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_875
#AT_START_876
at_fn_group_banner 876 'llx.at:24' \
"llx -- apply" " " 112
at_xfail=no
(
$as_echo "876. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:24: llx-test apply"
at_fn_check_prepare_trace "llx.at:24"
( $at_check_trace; llx-test apply
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:24"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_876
#AT_START_877
at_fn_group_banner 877 'llx.at:25' \
"llx -- destroy" " " 112
at_xfail=no
(
$as_echo "877. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:25: llx-test destroy"
at_fn_check_prepare_trace "llx.at:25"
( $at_check_trace; llx-test destroy
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:25"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_877
#AT_START_878
at_fn_group_banner 878 'llx.at:26' \
"llx -- reverse" " " 112
at_xfail=no
(
$as_echo "878. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:26: llx-test reverse"
at_fn_check_prepare_trace "llx.at:26"
( $at_check_trace; llx-test reverse
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:26"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_878
#AT_START_879
at_fn_group_banner 879 'llx.at:27' \
"llx -- permutations-no-dups" " " 112
at_xfail=no
(
$as_echo "879. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:27: llx-test permutations-no-dups"
at_fn_check_prepare_trace "llx.at:27"
( $at_check_trace; llx-test permutations-no-dups
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:27"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_879
#AT_START_880
at_fn_group_banner 880 'llx.at:28' \
"llx -- permutations-with-dups" " " 112
at_xfail=no
(
$as_echo "880. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:28: llx-test permutations-with-dups"
at_fn_check_prepare_trace "llx.at:28"
( $at_check_trace; llx-test permutations-with-dups
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:28"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_880
#AT_START_881
at_fn_group_banner 881 'llx.at:29' \
"llx -- merge-no-dups" " " 112
at_xfail=no
(
$as_echo "881. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:29: llx-test merge-no-dups"
at_fn_check_prepare_trace "llx.at:29"
( $at_check_trace; llx-test merge-no-dups
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:29"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_881
#AT_START_882
at_fn_group_banner 882 'llx.at:30' \
"llx -- merge-with-dups" " " 112
at_xfail=no
(
$as_echo "882. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:30: llx-test merge-with-dups"
at_fn_check_prepare_trace "llx.at:30"
( $at_check_trace; llx-test merge-with-dups
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:30"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_882
#AT_START_883
at_fn_group_banner 883 'llx.at:31' \
"llx -- sort-exhaustive" " " 112
at_xfail=no
(
$as_echo "883. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:31: llx-test sort-exhaustive"
at_fn_check_prepare_trace "llx.at:31"
( $at_check_trace; llx-test sort-exhaustive
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:31"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_883
#AT_START_884
at_fn_group_banner 884 'llx.at:32' \
"llx -- sort-stable" " " 112
at_xfail=no
(
$as_echo "884. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:32: llx-test sort-stable"
at_fn_check_prepare_trace "llx.at:32"
( $at_check_trace; llx-test sort-stable
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:32"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_884
#AT_START_885
at_fn_group_banner 885 'llx.at:33' \
"llx -- sort-subset" " " 112
at_xfail=no
(
$as_echo "885. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:33: llx-test sort-subset"
at_fn_check_prepare_trace "llx.at:33"
( $at_check_trace; llx-test sort-subset
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:33"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_885
#AT_START_886
at_fn_group_banner 886 'llx.at:34' \
"llx -- sort-big" " " 112
at_xfail=no
(
$as_echo "886. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:34: llx-test sort-big"
at_fn_check_prepare_trace "llx.at:34"
( $at_check_trace; llx-test sort-big
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:34"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_886
#AT_START_887
at_fn_group_banner 887 'llx.at:35' \
"llx -- unique" " " 112
at_xfail=no
(
$as_echo "887. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:35: llx-test unique"
at_fn_check_prepare_trace "llx.at:35"
( $at_check_trace; llx-test unique
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:35"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_887
#AT_START_888
at_fn_group_banner 888 'llx.at:36' \
"llx -- sort-unique" " " 112
at_xfail=no
(
$as_echo "888. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:36: llx-test sort-unique"
at_fn_check_prepare_trace "llx.at:36"
( $at_check_trace; llx-test sort-unique
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:36"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_888
#AT_START_889
at_fn_group_banner 889 'llx.at:37' \
"llx -- insert-ordered" " " 112
at_xfail=no
(
$as_echo "889. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:37: llx-test insert-ordered"
at_fn_check_prepare_trace "llx.at:37"
( $at_check_trace; llx-test insert-ordered
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:37"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_889
#AT_START_890
at_fn_group_banner 890 'llx.at:38' \
"llx -- partition" " " 112
at_xfail=no
(
$as_echo "890. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:38: llx-test partition"
at_fn_check_prepare_trace "llx.at:38"
( $at_check_trace; llx-test partition
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:38"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_890
#AT_START_891
at_fn_group_banner 891 'llx.at:39' \
"llx -- allocation-failure" " " 112
at_xfail=no
(
$as_echo "891. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/llx.at:39: llx-test allocation-failure"
at_fn_check_prepare_trace "llx.at:39"
( $at_check_trace; llx-test allocation-failure
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/llx.at:39"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_891
#AT_START_892
at_fn_group_banner 892 'range-map.at:8' \
"range-map -- insert" " " 113
at_xfail=no
(
$as_echo "892. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/range-map.at:8: range-map-test insert"
at_fn_check_prepare_trace "range-map.at:8"
( $at_check_trace; range-map-test insert
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/range-map.at:8"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_892
#AT_START_893
at_fn_group_banner 893 'range-map.at:9' \
"range-map -- delete-contiguous" " " 113
at_xfail=no
(
$as_echo "893. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/range-map.at:9: range-map-test delete-contiguous"
at_fn_check_prepare_trace "range-map.at:9"
( $at_check_trace; range-map-test delete-contiguous
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/range-map.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_893
#AT_START_894
at_fn_group_banner 894 'range-map.at:10' \
"range-map -- delete-gaps" " " 113
at_xfail=no
(
$as_echo "894. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/range-map.at:10: range-map-test delete-gaps"
at_fn_check_prepare_trace "range-map.at:10"
( $at_check_trace; range-map-test delete-gaps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/range-map.at:10"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_894
#AT_START_895
at_fn_group_banner 895 'range-set.at:8' \
"range-set -- insert" " " 114
at_xfail=no
(
$as_echo "895. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/range-set.at:8: range-set-test insert"
at_fn_check_prepare_trace "range-set.at:8"
( $at_check_trace; range-set-test insert
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/range-set.at:8"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_895
#AT_START_896
at_fn_group_banner 896 'range-set.at:9' \
"range-set -- delete" " " 114
at_xfail=no
(
$as_echo "896. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/range-set.at:9: range-set-test delete"
at_fn_check_prepare_trace "range-set.at:9"
( $at_check_trace; range-set-test delete
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/range-set.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_896
#AT_START_897
at_fn_group_banner 897 'range-set.at:10' \
"range-set -- allocate" " " 114
at_xfail=no
(
$as_echo "897. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/range-set.at:10: range-set-test allocate"
at_fn_check_prepare_trace "range-set.at:10"
( $at_check_trace; range-set-test allocate
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/range-set.at:10"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_897
#AT_START_898
at_fn_group_banner 898 'range-set.at:11' \
"range-set -- allocate-fully" " " 114
at_xfail=no
(
$as_echo "898. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/range-set.at:11: range-set-test allocate-fully"
at_fn_check_prepare_trace "range-set.at:11"
( $at_check_trace; range-set-test allocate-fully
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/range-set.at:11"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_898
#AT_START_899
at_fn_group_banner 899 'range-set.at:12' \
"range-set -- pool" " " 114
at_xfail=no
(
$as_echo "899. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/range-set.at:12: range-set-test pool"
at_fn_check_prepare_trace "range-set.at:12"
( $at_check_trace; range-set-test pool
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/range-set.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_899
#AT_START_900
at_fn_group_banner 900 'range-set.at:13' \
"range-set -- destroy-null" " " 114
at_xfail=no
(
$as_echo "900. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/range-set.at:13: range-set-test destroy-null"
at_fn_check_prepare_trace "range-set.at:13"
( $at_check_trace; range-set-test destroy-null
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/range-set.at:13"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_900
#AT_START_901
at_fn_group_banner 901 'range-tower.at:8' \
"range-tower -- set1" " " 115
at_xfail=no
(
$as_echo "901. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/range-tower.at:8: range-tower-test set1"
at_fn_check_prepare_trace "range-tower.at:8"
( $at_check_trace; range-tower-test set1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/range-tower.at:8"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_901
#AT_START_902
at_fn_group_banner 902 'range-tower.at:9' \
"range-tower -- set0" " " 115
at_xfail=no
(
$as_echo "902. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/range-tower.at:9: range-tower-test set0"
at_fn_check_prepare_trace "range-tower.at:9"
( $at_check_trace; range-tower-test set0
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/range-tower.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_902
#AT_START_903
at_fn_group_banner 903 'range-tower.at:10' \
"range-tower -- insert0" " " 115
at_xfail=no
(
$as_echo "903. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/range-tower.at:10: range-tower-test insert0"
at_fn_check_prepare_trace "range-tower.at:10"
( $at_check_trace; range-tower-test insert0
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/range-tower.at:10"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_903
#AT_START_904
at_fn_group_banner 904 'range-tower.at:11' \
"range-tower -- insert1" " " 115
at_xfail=no
(
$as_echo "904. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/range-tower.at:11: range-tower-test insert1"
at_fn_check_prepare_trace "range-tower.at:11"
( $at_check_trace; range-tower-test insert1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/range-tower.at:11"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_904
#AT_START_905
at_fn_group_banner 905 'range-tower.at:12' \
"range-tower -- delete" " " 115
at_xfail=no
(
$as_echo "905. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/range-tower.at:12: range-tower-test delete"
at_fn_check_prepare_trace "range-tower.at:12"
( $at_check_trace; range-tower-test delete
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/range-tower.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_905
#AT_START_906
at_fn_group_banner 906 'range-tower.at:13' \
"range-tower -- move" " " 115
at_xfail=no
(
$as_echo "906. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/range-tower.at:13: range-tower-test move"
at_fn_check_prepare_trace "range-tower.at:13"
( $at_check_trace; range-tower-test move
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/range-tower.at:13"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_906
#AT_START_907
at_fn_group_banner 907 'range-tower.at:14' \
"range-tower -- pool" " " 115
at_xfail=no
(
$as_echo "907. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/range-tower.at:14: range-tower-test pool"
at_fn_check_prepare_trace "range-tower.at:14"
( $at_check_trace; range-tower-test pool
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/range-tower.at:14"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_907
#AT_START_908
at_fn_group_banner 908 'range-tower.at:15' \
"range-tower -- destroy-null" " " 115
at_xfail=no
(
$as_echo "908. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/range-tower.at:15: range-tower-test destroy-null"
at_fn_check_prepare_trace "range-tower.at:15"
( $at_check_trace; range-tower-test destroy-null
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/range-tower.at:15"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_908
#AT_START_909
at_fn_group_banner 909 'sparse-array.at:9' \
"sparse array -- random-insert-delete" " " 116
at_xfail=no
(
$as_echo "909. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sparse-array.at:9: sparse-array-test random-insert-delete"
at_fn_check_prepare_trace "sparse-array.at:9"
( $at_check_trace; sparse-array-test random-insert-delete
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sparse-array.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_909
#AT_START_910
at_fn_group_banner 910 'sparse-array.at:11' \
"sparse array -- insert and delete with strides" " " 116
at_xfail=no
(
$as_echo "910. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sparse-array.at:13: sparse-array-test insert-delete-strides"
at_fn_check_prepare_trace "sparse-array.at:13"
( $at_check_trace; sparse-array-test insert-delete-strides
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1
2
4
16
64
4096
262144
16777216
3
5
17
67
4099
262147
16777259
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/sparse-array.at:13"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_910
#AT_START_911
at_fn_group_banner 911 'sparse-xarray-test.at:42' \
"in-memory sparse_xarray" " " 117
at_xfail=no
(
$as_echo "911. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sparse-xarray-test.at:44: sparse-xarray-test\$EXEEXT \\
--verbosity=0 --queue-limit=\`sparse_xarray_queue_limit\` \\
--columns=3 --max-rows=3 --max-memory-rows=3 --values=2"
at_fn_check_prepare_notrace 'a `...` command substitution' "sparse-xarray-test.at:44"
( $at_check_trace; sparse-xarray-test$EXEEXT \
--verbosity=0 --queue-limit=`sparse_xarray_queue_limit` \
--columns=3 --max-rows=3 --max-memory-rows=3 --values=2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/sparse-xarray-test.at:44"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_911
#AT_START_912
at_fn_group_banner 912 'sparse-xarray-test.at:57' \
"on-disk sparse_xarray max-memory-rows=0" " " 117
at_xfail=no
(
$as_echo "912. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sparse-xarray-test.at:57: sparse-xarray-test\$EXEEXT \\
--verbosity=0 --queue-limit=\`sparse_xarray_queue_limit\` \\
--columns=2 --max-rows=3 --max-memory-rows=0 --values=2"
at_fn_check_prepare_notrace 'a `...` command substitution' "sparse-xarray-test.at:57"
( $at_check_trace; sparse-xarray-test$EXEEXT \
--verbosity=0 --queue-limit=`sparse_xarray_queue_limit` \
--columns=2 --max-rows=3 --max-memory-rows=0 --values=2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/sparse-xarray-test.at:57"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_912
#AT_START_913
at_fn_group_banner 913 'sparse-xarray-test.at:58' \
"on-disk sparse_xarray max-memory-rows=1" " " 117
at_xfail=no
(
$as_echo "913. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sparse-xarray-test.at:58: sparse-xarray-test\$EXEEXT \\
--verbosity=0 --queue-limit=\`sparse_xarray_queue_limit\` \\
--columns=2 --max-rows=3 --max-memory-rows=1 --values=2"
at_fn_check_prepare_notrace 'a `...` command substitution' "sparse-xarray-test.at:58"
( $at_check_trace; sparse-xarray-test$EXEEXT \
--verbosity=0 --queue-limit=`sparse_xarray_queue_limit` \
--columns=2 --max-rows=3 --max-memory-rows=1 --values=2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/sparse-xarray-test.at:58"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_913
#AT_START_914
at_fn_group_banner 914 'sparse-xarray-test.at:59' \
"on-disk sparse_xarray max-memory-rows=2" " " 117
at_xfail=no
(
$as_echo "914. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sparse-xarray-test.at:59: sparse-xarray-test\$EXEEXT \\
--verbosity=0 --queue-limit=\`sparse_xarray_queue_limit\` \\
--columns=2 --max-rows=3 --max-memory-rows=2 --values=2"
at_fn_check_prepare_notrace 'a `...` command substitution' "sparse-xarray-test.at:59"
( $at_check_trace; sparse-xarray-test$EXEEXT \
--verbosity=0 --queue-limit=`sparse_xarray_queue_limit` \
--columns=2 --max-rows=3 --max-memory-rows=2 --values=2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/sparse-xarray-test.at:59"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_914
#AT_START_915
at_fn_group_banner 915 'sparse-xarray-test.at:61' \
"copying between in-memory sparse_xarrays" " " 117
at_xfail=no
(
$as_echo "915. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/sparse-xarray-test.at:63: sparse-xarray-test\$EXEEXT \\
--verbosity=0 --queue-limit=\`sparse_xarray_queue_limit\` \\
--columns=2 --max-rows=2 --max-memory-rows=2 --values=2 \\
--xarrays=2 --no-write-rows --no-copy-columns"
at_fn_check_prepare_notrace 'a `...` command substitution' "sparse-xarray-test.at:63"
( $at_check_trace; sparse-xarray-test$EXEEXT \
--verbosity=0 --queue-limit=`sparse_xarray_queue_limit` \
--columns=2 --max-rows=2 --max-memory-rows=2 --values=2 \
--xarrays=2 --no-write-rows --no-copy-columns
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/sparse-xarray-test.at:63"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_915
#AT_START_916
at_fn_group_banner 916 'sparse-xarray-test.at:82' \
"copying between on-disk sparse_xarrays max-memory-rows=0" "" 117
at_xfail=no
(
$as_echo "916. $at_setup_line: testing $at_desc ..."
$at_traceon
limit=`sparse_xarray_queue_limit`
{ set +x
$as_echo "$at_srcdir/sparse-xarray-test.at:82: sparse-xarray-test\$EXEEXT \\
--verbosity=0 --queue-limit=\`expr \$limit / 2\` \\
--columns=1 --max-rows=2 --max-memory-rows=\$max_memory_rows \\
--values=2 --xarrays=2 --no-write-rows --no-copy-columns"
at_fn_check_prepare_notrace 'a `...` command substitution' "sparse-xarray-test.at:82"
( $at_check_trace; sparse-xarray-test$EXEEXT \
--verbosity=0 --queue-limit=`expr $limit / 2` \
--columns=1 --max-rows=2 --max-memory-rows=$max_memory_rows \
--values=2 --xarrays=2 --no-write-rows --no-copy-columns
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/sparse-xarray-test.at:82"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_916
#AT_START_917
at_fn_group_banner 917 'sparse-xarray-test.at:83' \
"copying between on-disk sparse_xarrays max-memory-rows=1" "" 117
at_xfail=no
(
$as_echo "917. $at_setup_line: testing $at_desc ..."
$at_traceon
limit=`sparse_xarray_queue_limit`
{ set +x
$as_echo "$at_srcdir/sparse-xarray-test.at:83: sparse-xarray-test\$EXEEXT \\
--verbosity=0 --queue-limit=\`expr \$limit / 2\` \\
--columns=1 --max-rows=2 --max-memory-rows=\$max_memory_rows \\
--values=2 --xarrays=2 --no-write-rows --no-copy-columns"
at_fn_check_prepare_notrace 'a `...` command substitution' "sparse-xarray-test.at:83"
( $at_check_trace; sparse-xarray-test$EXEEXT \
--verbosity=0 --queue-limit=`expr $limit / 2` \
--columns=1 --max-rows=2 --max-memory-rows=$max_memory_rows \
--values=2 --xarrays=2 --no-write-rows --no-copy-columns
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/sparse-xarray-test.at:83"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_917
#AT_START_918
at_fn_group_banner 918 'str.at:3' \
"26-adic string formatting" " " 118
at_xfail=no
(
$as_echo "918. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/str.at:4: str-test format-26adic"
at_fn_check_prepare_trace "str.at:4"
( $at_check_trace; str-test format-26adic
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/str.at:4"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_918
#AT_START_919
at_fn_group_banner 919 'string-map.at:9' \
"string map -- insert-any-remove-any" " " 119
at_xfail=no
(
$as_echo "919. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-map.at:9: string-map-test insert-any-remove-any"
at_fn_check_prepare_trace "string-map.at:9"
( $at_check_trace; string-map-test insert-any-remove-any
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-map.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_919
#AT_START_920
at_fn_group_banner 920 'string-map.at:10' \
"string map -- insert-any-remove-same" " " 119
at_xfail=no
(
$as_echo "920. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-map.at:10: string-map-test insert-any-remove-same"
at_fn_check_prepare_trace "string-map.at:10"
( $at_check_trace; string-map-test insert-any-remove-same
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-map.at:10"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_920
#AT_START_921
at_fn_group_banner 921 'string-map.at:11' \
"string map -- insert-any-remove-reverse" " " 119
at_xfail=no
(
$as_echo "921. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-map.at:11: string-map-test insert-any-remove-reverse"
at_fn_check_prepare_trace "string-map.at:11"
( $at_check_trace; string-map-test insert-any-remove-reverse
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-map.at:11"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_921
#AT_START_922
at_fn_group_banner 922 'string-map.at:12' \
"string map -- random-sequence" " " 119
at_xfail=no
(
$as_echo "922. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-map.at:12: string-map-test random-sequence"
at_fn_check_prepare_trace "string-map.at:12"
( $at_check_trace; string-map-test random-sequence
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-map.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_922
#AT_START_923
at_fn_group_banner 923 'string-map.at:13' \
"string map -- replace" " " 119
at_xfail=no
(
$as_echo "923. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-map.at:13: string-map-test replace"
at_fn_check_prepare_trace "string-map.at:13"
( $at_check_trace; string-map-test replace
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-map.at:13"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_923
#AT_START_924
at_fn_group_banner 924 'string-map.at:14' \
"string map -- insert-ordered" " " 119
at_xfail=no
(
$as_echo "924. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-map.at:14: string-map-test insert-ordered"
at_fn_check_prepare_trace "string-map.at:14"
( $at_check_trace; string-map-test insert-ordered
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-map.at:14"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_924
#AT_START_925
at_fn_group_banner 925 'string-map.at:15' \
"string map -- clear" " " 119
at_xfail=no
(
$as_echo "925. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-map.at:15: string-map-test clear"
at_fn_check_prepare_trace "string-map.at:15"
( $at_check_trace; string-map-test clear
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-map.at:15"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_925
#AT_START_926
at_fn_group_banner 926 'string-map.at:16' \
"string map -- clone" " " 119
at_xfail=no
(
$as_echo "926. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-map.at:16: string-map-test clone"
at_fn_check_prepare_trace "string-map.at:16"
( $at_check_trace; string-map-test clone
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-map.at:16"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_926
#AT_START_927
at_fn_group_banner 927 'string-map.at:17' \
"string map -- swap" " " 119
at_xfail=no
(
$as_echo "927. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-map.at:17: string-map-test swap"
at_fn_check_prepare_trace "string-map.at:17"
( $at_check_trace; string-map-test swap
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-map.at:17"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_927
#AT_START_928
at_fn_group_banner 928 'string-map.at:18' \
"string map -- node-swap-value" " " 119
at_xfail=no
(
$as_echo "928. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-map.at:18: string-map-test node-swap-value"
at_fn_check_prepare_trace "string-map.at:18"
( $at_check_trace; string-map-test node-swap-value
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-map.at:18"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_928
#AT_START_929
at_fn_group_banner 929 'string-map.at:19' \
"string map -- insert-map" " " 119
at_xfail=no
(
$as_echo "929. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-map.at:19: string-map-test insert-map"
at_fn_check_prepare_trace "string-map.at:19"
( $at_check_trace; string-map-test insert-map
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-map.at:19"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_929
#AT_START_930
at_fn_group_banner 930 'string-map.at:20' \
"string map -- replace-map" " " 119
at_xfail=no
(
$as_echo "930. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-map.at:20: string-map-test replace-map"
at_fn_check_prepare_trace "string-map.at:20"
( $at_check_trace; string-map-test replace-map
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-map.at:20"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_930
#AT_START_931
at_fn_group_banner 931 'string-map.at:21' \
"string map -- get-keys-and-values" " " 119
at_xfail=no
(
$as_echo "931. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-map.at:21: string-map-test get-keys-and-values"
at_fn_check_prepare_trace "string-map.at:21"
( $at_check_trace; string-map-test get-keys-and-values
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-map.at:21"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_931
#AT_START_932
at_fn_group_banner 932 'string-map.at:22' \
"string map -- destroy-null" " " 119
at_xfail=no
(
$as_echo "932. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-map.at:22: string-map-test destroy-null"
at_fn_check_prepare_trace "string-map.at:22"
( $at_check_trace; string-map-test destroy-null
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-map.at:22"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_932
#AT_START_933
at_fn_group_banner 933 'stringi-map.at:9' \
"case-insensitive string map -- insert-any-remove-any" "" 120
at_xfail=no
(
$as_echo "933. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-map.at:9: stringi-map-test insert-any-remove-any"
at_fn_check_prepare_trace "stringi-map.at:9"
( $at_check_trace; stringi-map-test insert-any-remove-any
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-map.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_933
#AT_START_934
at_fn_group_banner 934 'stringi-map.at:10' \
"case-insensitive string map -- insert-any-remove-same" "" 120
at_xfail=no
(
$as_echo "934. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-map.at:10: stringi-map-test insert-any-remove-same"
at_fn_check_prepare_trace "stringi-map.at:10"
( $at_check_trace; stringi-map-test insert-any-remove-same
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-map.at:10"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_934
#AT_START_935
at_fn_group_banner 935 'stringi-map.at:11' \
"case-insensitive string map -- insert-any-remove-reverse" "" 120
at_xfail=no
(
$as_echo "935. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-map.at:11: stringi-map-test insert-any-remove-reverse"
at_fn_check_prepare_trace "stringi-map.at:11"
( $at_check_trace; stringi-map-test insert-any-remove-reverse
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-map.at:11"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_935
#AT_START_936
at_fn_group_banner 936 'stringi-map.at:12' \
"case-insensitive string map -- random-sequence" " " 120
at_xfail=no
(
$as_echo "936. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-map.at:12: stringi-map-test random-sequence"
at_fn_check_prepare_trace "stringi-map.at:12"
( $at_check_trace; stringi-map-test random-sequence
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-map.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_936
#AT_START_937
at_fn_group_banner 937 'stringi-map.at:13' \
"case-insensitive string map -- replace" " " 120
at_xfail=no
(
$as_echo "937. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-map.at:13: stringi-map-test replace"
at_fn_check_prepare_trace "stringi-map.at:13"
( $at_check_trace; stringi-map-test replace
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-map.at:13"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_937
#AT_START_938
at_fn_group_banner 938 'stringi-map.at:14' \
"case-insensitive string map -- insert-ordered" " " 120
at_xfail=no
(
$as_echo "938. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-map.at:14: stringi-map-test insert-ordered"
at_fn_check_prepare_trace "stringi-map.at:14"
( $at_check_trace; stringi-map-test insert-ordered
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-map.at:14"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_938
#AT_START_939
at_fn_group_banner 939 'stringi-map.at:15' \
"case-insensitive string map -- clear" " " 120
at_xfail=no
(
$as_echo "939. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-map.at:15: stringi-map-test clear"
at_fn_check_prepare_trace "stringi-map.at:15"
( $at_check_trace; stringi-map-test clear
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-map.at:15"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_939
#AT_START_940
at_fn_group_banner 940 'stringi-map.at:16' \
"case-insensitive string map -- clone" " " 120
at_xfail=no
(
$as_echo "940. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-map.at:16: stringi-map-test clone"
at_fn_check_prepare_trace "stringi-map.at:16"
( $at_check_trace; stringi-map-test clone
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-map.at:16"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_940
#AT_START_941
at_fn_group_banner 941 'stringi-map.at:17' \
"case-insensitive string map -- swap" " " 120
at_xfail=no
(
$as_echo "941. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-map.at:17: stringi-map-test swap"
at_fn_check_prepare_trace "stringi-map.at:17"
( $at_check_trace; stringi-map-test swap
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-map.at:17"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_941
#AT_START_942
at_fn_group_banner 942 'stringi-map.at:18' \
"case-insensitive string map -- node-swap-value" " " 120
at_xfail=no
(
$as_echo "942. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-map.at:18: stringi-map-test node-swap-value"
at_fn_check_prepare_trace "stringi-map.at:18"
( $at_check_trace; stringi-map-test node-swap-value
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-map.at:18"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_942
#AT_START_943
at_fn_group_banner 943 'stringi-map.at:19' \
"case-insensitive string map -- insert-map" " " 120
at_xfail=no
(
$as_echo "943. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-map.at:19: stringi-map-test insert-map"
at_fn_check_prepare_trace "stringi-map.at:19"
( $at_check_trace; stringi-map-test insert-map
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-map.at:19"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_943
#AT_START_944
at_fn_group_banner 944 'stringi-map.at:20' \
"case-insensitive string map -- replace-map" " " 120
at_xfail=no
(
$as_echo "944. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-map.at:20: stringi-map-test replace-map"
at_fn_check_prepare_trace "stringi-map.at:20"
( $at_check_trace; stringi-map-test replace-map
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-map.at:20"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_944
#AT_START_945
at_fn_group_banner 945 'stringi-map.at:21' \
"case-insensitive string map -- get-keys-and-values" "" 120
at_xfail=no
(
$as_echo "945. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-map.at:21: stringi-map-test get-keys-and-values"
at_fn_check_prepare_trace "stringi-map.at:21"
( $at_check_trace; stringi-map-test get-keys-and-values
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-map.at:21"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_945
#AT_START_946
at_fn_group_banner 946 'stringi-map.at:22' \
"case-insensitive string map -- destroy-null" " " 120
at_xfail=no
(
$as_echo "946. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-map.at:22: stringi-map-test destroy-null"
at_fn_check_prepare_trace "stringi-map.at:22"
( $at_check_trace; stringi-map-test destroy-null
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-map.at:22"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_946
#AT_START_947
at_fn_group_banner 947 'string-set.at:9' \
"string set -- insert-any-remove-any" " " 121
at_xfail=no
(
$as_echo "947. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-set.at:9: string-set-test insert-any-remove-any"
at_fn_check_prepare_trace "string-set.at:9"
( $at_check_trace; string-set-test insert-any-remove-any
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-set.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_947
#AT_START_948
at_fn_group_banner 948 'string-set.at:10' \
"string set -- insert-any-remove-same" " " 121
at_xfail=no
(
$as_echo "948. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-set.at:10: string-set-test insert-any-remove-same"
at_fn_check_prepare_trace "string-set.at:10"
( $at_check_trace; string-set-test insert-any-remove-same
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-set.at:10"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_948
#AT_START_949
at_fn_group_banner 949 'string-set.at:11' \
"string set -- insert-any-remove-reverse" " " 121
at_xfail=no
(
$as_echo "949. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-set.at:11: string-set-test insert-any-remove-reverse"
at_fn_check_prepare_trace "string-set.at:11"
( $at_check_trace; string-set-test insert-any-remove-reverse
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-set.at:11"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_949
#AT_START_950
at_fn_group_banner 950 'string-set.at:12' \
"string set -- random-sequence" " " 121
at_xfail=no
(
$as_echo "950. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-set.at:12: string-set-test random-sequence"
at_fn_check_prepare_trace "string-set.at:12"
( $at_check_trace; string-set-test random-sequence
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-set.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_950
#AT_START_951
at_fn_group_banner 951 'string-set.at:13' \
"string set -- insert-ordered" " " 121
at_xfail=no
(
$as_echo "951. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-set.at:13: string-set-test insert-ordered"
at_fn_check_prepare_trace "string-set.at:13"
( $at_check_trace; string-set-test insert-ordered
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-set.at:13"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_951
#AT_START_952
at_fn_group_banner 952 'string-set.at:14' \
"string set -- union" " " 121
at_xfail=no
(
$as_echo "952. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-set.at:14: string-set-test union"
at_fn_check_prepare_trace "string-set.at:14"
( $at_check_trace; string-set-test union
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-set.at:14"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_952
#AT_START_953
at_fn_group_banner 953 'string-set.at:15' \
"string set -- union-and-intersection" " " 121
at_xfail=no
(
$as_echo "953. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-set.at:15: string-set-test union-and-intersection"
at_fn_check_prepare_trace "string-set.at:15"
( $at_check_trace; string-set-test union-and-intersection
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-set.at:15"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_953
#AT_START_954
at_fn_group_banner 954 'string-set.at:16' \
"string set -- intersect" " " 121
at_xfail=no
(
$as_echo "954. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-set.at:16: string-set-test intersect"
at_fn_check_prepare_trace "string-set.at:16"
( $at_check_trace; string-set-test intersect
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-set.at:16"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_954
#AT_START_955
at_fn_group_banner 955 'string-set.at:17' \
"string set -- subtract" " " 121
at_xfail=no
(
$as_echo "955. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-set.at:17: string-set-test subtract"
at_fn_check_prepare_trace "string-set.at:17"
( $at_check_trace; string-set-test subtract
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-set.at:17"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_955
#AT_START_956
at_fn_group_banner 956 'string-set.at:18' \
"string set -- swap" " " 121
at_xfail=no
(
$as_echo "956. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-set.at:18: string-set-test swap"
at_fn_check_prepare_trace "string-set.at:18"
( $at_check_trace; string-set-test swap
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-set.at:18"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_956
#AT_START_957
at_fn_group_banner 957 'string-set.at:19' \
"string set -- clear" " " 121
at_xfail=no
(
$as_echo "957. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-set.at:19: string-set-test clear"
at_fn_check_prepare_trace "string-set.at:19"
( $at_check_trace; string-set-test clear
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-set.at:19"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_957
#AT_START_958
at_fn_group_banner 958 'string-set.at:20' \
"string set -- clone" " " 121
at_xfail=no
(
$as_echo "958. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-set.at:20: string-set-test clone"
at_fn_check_prepare_trace "string-set.at:20"
( $at_check_trace; string-set-test clone
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-set.at:20"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_958
#AT_START_959
at_fn_group_banner 959 'string-set.at:21' \
"string set -- destroy-null" " " 121
at_xfail=no
(
$as_echo "959. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/string-set.at:21: string-set-test destroy-null"
at_fn_check_prepare_trace "string-set.at:21"
( $at_check_trace; string-set-test destroy-null
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/string-set.at:21"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_959
#AT_START_960
at_fn_group_banner 960 'stringi-set.at:9' \
"case-insensitive string set -- insert-any-remove-any" "" 122
at_xfail=no
(
$as_echo "960. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-set.at:9: stringi-set-test insert-any-remove-any"
at_fn_check_prepare_trace "stringi-set.at:9"
( $at_check_trace; stringi-set-test insert-any-remove-any
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-set.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_960
#AT_START_961
at_fn_group_banner 961 'stringi-set.at:10' \
"case-insensitive string set -- insert-any-remove-same" "" 122
at_xfail=no
(
$as_echo "961. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-set.at:10: stringi-set-test insert-any-remove-same"
at_fn_check_prepare_trace "stringi-set.at:10"
( $at_check_trace; stringi-set-test insert-any-remove-same
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-set.at:10"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_961
#AT_START_962
at_fn_group_banner 962 'stringi-set.at:11' \
"case-insensitive string set -- insert-any-remove-reverse" "" 122
at_xfail=no
(
$as_echo "962. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-set.at:11: stringi-set-test insert-any-remove-reverse"
at_fn_check_prepare_trace "stringi-set.at:11"
( $at_check_trace; stringi-set-test insert-any-remove-reverse
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-set.at:11"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_962
#AT_START_963
at_fn_group_banner 963 'stringi-set.at:12' \
"case-insensitive string set -- random-sequence" " " 122
at_xfail=no
(
$as_echo "963. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-set.at:12: stringi-set-test random-sequence"
at_fn_check_prepare_trace "stringi-set.at:12"
( $at_check_trace; stringi-set-test random-sequence
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-set.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_963
#AT_START_964
at_fn_group_banner 964 'stringi-set.at:13' \
"case-insensitive string set -- insert-ordered" " " 122
at_xfail=no
(
$as_echo "964. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-set.at:13: stringi-set-test insert-ordered"
at_fn_check_prepare_trace "stringi-set.at:13"
( $at_check_trace; stringi-set-test insert-ordered
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-set.at:13"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_964
#AT_START_965
at_fn_group_banner 965 'stringi-set.at:14' \
"case-insensitive string set -- union" " " 122
at_xfail=no
(
$as_echo "965. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-set.at:14: stringi-set-test union"
at_fn_check_prepare_trace "stringi-set.at:14"
( $at_check_trace; stringi-set-test union
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-set.at:14"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_965
#AT_START_966
at_fn_group_banner 966 'stringi-set.at:15' \
"case-insensitive string set -- union-and-intersection" "" 122
at_xfail=no
(
$as_echo "966. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-set.at:15: stringi-set-test union-and-intersection"
at_fn_check_prepare_trace "stringi-set.at:15"
( $at_check_trace; stringi-set-test union-and-intersection
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-set.at:15"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_966
#AT_START_967
at_fn_group_banner 967 'stringi-set.at:16' \
"case-insensitive string set -- intersect" " " 122
at_xfail=no
(
$as_echo "967. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-set.at:16: stringi-set-test intersect"
at_fn_check_prepare_trace "stringi-set.at:16"
( $at_check_trace; stringi-set-test intersect
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-set.at:16"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_967
#AT_START_968
at_fn_group_banner 968 'stringi-set.at:17' \
"case-insensitive string set -- subtract" " " 122
at_xfail=no
(
$as_echo "968. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-set.at:17: stringi-set-test subtract"
at_fn_check_prepare_trace "stringi-set.at:17"
( $at_check_trace; stringi-set-test subtract
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-set.at:17"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_968
#AT_START_969
at_fn_group_banner 969 'stringi-set.at:18' \
"case-insensitive string set -- swap" " " 122
at_xfail=no
(
$as_echo "969. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-set.at:18: stringi-set-test swap"
at_fn_check_prepare_trace "stringi-set.at:18"
( $at_check_trace; stringi-set-test swap
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-set.at:18"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_969
#AT_START_970
at_fn_group_banner 970 'stringi-set.at:19' \
"case-insensitive string set -- clear" " " 122
at_xfail=no
(
$as_echo "970. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-set.at:19: stringi-set-test clear"
at_fn_check_prepare_trace "stringi-set.at:19"
( $at_check_trace; stringi-set-test clear
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-set.at:19"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_970
#AT_START_971
at_fn_group_banner 971 'stringi-set.at:20' \
"case-insensitive string set -- clone" " " 122
at_xfail=no
(
$as_echo "971. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-set.at:20: stringi-set-test clone"
at_fn_check_prepare_trace "stringi-set.at:20"
( $at_check_trace; stringi-set-test clone
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-set.at:20"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_971
#AT_START_972
at_fn_group_banner 972 'stringi-set.at:21' \
"case-insensitive string set -- destroy-null" " " 122
at_xfail=no
(
$as_echo "972. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/stringi-set.at:21: stringi-set-test destroy-null"
at_fn_check_prepare_trace "stringi-set.at:21"
( $at_check_trace; stringi-set-test destroy-null
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/stringi-set.at:21"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_972
#AT_START_973
at_fn_group_banner 973 'tower.at:8' \
"tower -- insert" " " 123
at_xfail=no
(
$as_echo "973. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/tower.at:8: tower-test insert"
at_fn_check_prepare_trace "tower.at:8"
( $at_check_trace; tower-test insert
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/tower.at:8"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_973
#AT_START_974
at_fn_group_banner 974 'tower.at:9' \
"tower -- delete" " " 123
at_xfail=no
(
$as_echo "974. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/tower.at:9: tower-test delete"
at_fn_check_prepare_trace "tower.at:9"
( $at_check_trace; tower-test delete
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/tower.at:9"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_974
#AT_START_975
at_fn_group_banner 975 'tower.at:10' \
"tower -- resize" " " 123
at_xfail=no
(
$as_echo "975. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/tower.at:10: tower-test resize"
at_fn_check_prepare_trace "tower.at:10"
( $at_check_trace; tower-test resize
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/tower.at:10"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_975
#AT_START_976
at_fn_group_banner 976 'tower.at:11' \
"tower -- splice-out" " " 123
at_xfail=no
(
$as_echo "976. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/tower.at:11: tower-test splice-out"
at_fn_check_prepare_trace "tower.at:11"
( $at_check_trace; tower-test splice-out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/tower.at:11"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_976
#AT_START_977
at_fn_group_banner 977 'tower.at:12' \
"tower -- splice-in" " " 123
at_xfail=no
(
$as_echo "977. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/tower.at:12: tower-test splice-in"
at_fn_check_prepare_trace "tower.at:12"
( $at_check_trace; tower-test splice-in
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/tower.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_977
#AT_START_978
at_fn_group_banner 978 'u8-istream.at:3' \
"read ASCII" " " 124
at_xfail=no
(
$as_echo "978. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/u8-istream.at:5: i18n-test supports_encodings ASCII"
at_fn_check_prepare_trace "u8-istream.at:5"
( $at_check_trace; i18n-test supports_encodings ASCII
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:5"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/u8-istream.at:6: echo string | u8-istream-test read - ASCII"
at_fn_check_prepare_notrace 'a shell pipeline' "u8-istream.at:6"
( $at_check_trace; echo string | u8-istream-test read - ASCII
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "string
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:6"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_978
#AT_START_979
at_fn_group_banner 979 'u8-istream.at:10' \
"read UTF-8" " " 124
at_xfail=no
(
$as_echo "979. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/u8-istream.at:12: printf '\\346\\227\\245\\346\\234\\254\\350\\252\\236\\n' | u8-istream-test read - UTF-8"
at_fn_check_prepare_notrace 'a shell pipeline' "u8-istream.at:12"
( $at_check_trace; printf '\346\227\245\346\234\254\350\252\236\n' | u8-istream-test read - UTF-8
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "UTF-8 mode
日本語
UTF-8 mode
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:12"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_979
#AT_START_980
at_fn_group_banner 980 'u8-istream.at:19' \
"read EUC-JP" " " 124
at_xfail=no
(
$as_echo "980. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/u8-istream.at:21: i18n-test supports_encodings EUC-JP"
at_fn_check_prepare_trace "u8-istream.at:21"
( $at_check_trace; i18n-test supports_encodings EUC-JP
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:21"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/u8-istream.at:22: printf '\\244\\241 \\244\\242 \\244\\243 \\244\\244 \\244\\245 \\244\\246 \\244\\247 \\244\\250 \\244\\251 \\244\\252\\n' | u8-istream-test read - EUC-JP"
at_fn_check_prepare_notrace 'a shell pipeline' "u8-istream.at:22"
( $at_check_trace; printf '\244\241 \244\242 \244\243 \244\244 \244\245 \244\246 \244\247 \244\250 \244\251 \244\252\n' | u8-istream-test read - EUC-JP
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "ぁ あ ぃ い ぅ う ぇ え ぉ お
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:22"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_980
#AT_START_981
at_fn_group_banner 981 'u8-istream.at:28' \
"read UTF-8 with character split across input buffers" "" 124
at_xfail=no
(
$as_echo "981. $at_setup_line: testing $at_desc ..."
$at_traceon
buffer_size=`u8-istream-test buffer-size`
($PERL -e "print 'x' x ($buffer_size - 16)"
printf '\343\201\201\343\201\202\343\201\203\343\201\204\343\201\205\343\201\206\343\201\207\343\201\210\343\201\211\343\201\212\n') > input
(echo "UTF-8 mode"
cat input
echo "UTF-8 mode") > expout
{ set +x
$as_echo "$at_srcdir/u8-istream.at:36: u8-istream-test read input UTF-8 16"
at_fn_check_prepare_trace "u8-istream.at:36"
( $at_check_trace; u8-istream-test read input UTF-8 16
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:36"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_981
#AT_START_982
at_fn_group_banner 982 'u8-istream.at:39' \
"read UTF-8 with character split across output buffers" "" 124
at_xfail=no
(
$as_echo "982. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/u8-istream.at:41: printf '\\343\\201\\201\\343\\201\\202\\343\\201\\203\\343\\201\\204\\343\\201\\205\\343\\201\\206\\343\\201\\207\\343\\201\\210\\343\\201\\211\\343\\201\\212\\n' | u8-istream-test read - UTF-8 16"
at_fn_check_prepare_notrace 'a shell pipeline' "u8-istream.at:41"
( $at_check_trace; printf '\343\201\201\343\201\202\343\201\203\343\201\204\343\201\205\343\201\206\343\201\207\343\201\210\343\201\211\343\201\212\n' | u8-istream-test read - UTF-8 16
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "UTF-8 mode
ぁあぃいぅうぇえぉお
UTF-8 mode
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:41"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_982
#AT_START_983
at_fn_group_banner 983 'u8-istream.at:48' \
"read UTF-8 with character split across input and output buffers" "" 124
at_xfail=no
(
$as_echo "983. $at_setup_line: testing $at_desc ..."
$at_traceon
buffer_size=`u8-istream-test buffer-size`
($PERL -e "print 'x' x ($buffer_size - 16)"
printf '\343\201\201\343\201\202\343\201\203\343\201\204\343\201\205\343\201\206\343\201\207\343\201\210\343\201\211\343\201\212\n') > input
(echo "UTF-8 mode"
cat input
echo "UTF-8 mode") > expout
{ set +x
$as_echo "$at_srcdir/u8-istream.at:56: u8-istream-test read input UTF-8 16"
at_fn_check_prepare_trace "u8-istream.at:56"
( $at_check_trace; u8-istream-test read input UTF-8 16
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:56"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_983
#AT_START_984
at_fn_group_banner 984 'u8-istream.at:59' \
"read EUC-JP with character split across input buffers" "" 124
at_xfail=no
(
$as_echo "984. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/u8-istream.at:61: i18n-test supports_encodings EUC-JP"
at_fn_check_prepare_trace "u8-istream.at:61"
( $at_check_trace; i18n-test supports_encodings EUC-JP
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:61"
$at_failed && at_fn_log_failure
$at_traceon; }
buffer_size=`u8-istream-test buffer-size`
($PERL -e "print 'x' x ($buffer_size - 16)"
printf '\244\241 \244\242 \244\243 \244\244 \244\245 \244\246 \244\247 '
printf '\244\250 \244\251 \244\252\n') > input
($PERL -e "print 'x' x ($buffer_size - 16)"
printf '\343\201\201\040\343\201\202\040\343\201\203\040\343\201\204\040'
printf '\343\201\205\040\343\201\206\040\343\201\207\040\343\201\210\040'
printf '\343\201\211\040\343\201\212\n') > expout
{ set +x
$as_echo "$at_srcdir/u8-istream.at:70: u8-istream-test read input EUC-JP"
at_fn_check_prepare_trace "u8-istream.at:70"
( $at_check_trace; u8-istream-test read input EUC-JP
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:70"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_984
#AT_START_985
at_fn_group_banner 985 'u8-istream.at:73' \
"read EUC-JP with character split across output buffers" "" 124
at_xfail=no
(
$as_echo "985. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/u8-istream.at:75: i18n-test supports_encodings EUC-JP"
at_fn_check_prepare_trace "u8-istream.at:75"
( $at_check_trace; i18n-test supports_encodings EUC-JP
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:75"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/u8-istream.at:76: printf '\\244\\241\\244\\242\\244\\243\\244\\244\\244\\245\\244\\246\\244\\247\\244\\250\\244\\251\\244\\252\\n' | u8-istream-test read - EUC-JP 16"
at_fn_check_prepare_notrace 'a shell pipeline' "u8-istream.at:76"
( $at_check_trace; printf '\244\241\244\242\244\243\244\244\244\245\244\246\244\247\244\250\244\251\244\252\n' | u8-istream-test read - EUC-JP 16
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "ぁあぃいぅうぇえぉお
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:76"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_985
#AT_START_986
at_fn_group_banner 986 'u8-istream.at:82' \
"read EUC-JP with character split across input and output buffers" "" 124
at_xfail=no
(
$as_echo "986. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/u8-istream.at:84: i18n-test supports_encodings EUC-JP"
at_fn_check_prepare_trace "u8-istream.at:84"
( $at_check_trace; i18n-test supports_encodings EUC-JP
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:84"
$at_failed && at_fn_log_failure
$at_traceon; }
buffer_size=`u8-istream-test buffer-size`
($PERL -e "print 'x' x ($buffer_size - 16)"
printf 'xyz\244\241\244\242\244\243\244\244\244\245\244\246\244\247\244\250'
printf '\244\251\244\252\n') > input
($PERL -e "print 'x' x ($buffer_size - 16)"
printf '\170\171\172\343\201\201\343\201\202\343\201\203\343\201\204\343'
printf '\201\205\343\201\206\343\201\207\343\201\210\343\201\211\343\201'
printf '\212\n') > expout
{ set +x
$as_echo "$at_srcdir/u8-istream.at:93: u8-istream-test read input EUC-JP 16"
at_fn_check_prepare_trace "u8-istream.at:93"
( $at_check_trace; u8-istream-test read input EUC-JP 16
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:93"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_986
#AT_START_987
at_fn_group_banner 987 'u8-istream.at:96' \
"read ASCII as Auto" " " 124
at_xfail=no
(
$as_echo "987. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/u8-istream.at:98: echo string | u8-istream-test read - Auto"
at_fn_check_prepare_notrace 'a shell pipeline' "u8-istream.at:98"
( $at_check_trace; echo string | u8-istream-test read - Auto
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Auto mode
string
Auto mode
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:98"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_987
#AT_START_988
at_fn_group_banner 988 'u8-istream.at:105' \
"read UTF-8 as Auto" " " 124
at_xfail=no
(
$as_echo "988. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/u8-istream.at:107: printf 'entr\\303\\251e\\n' | u8-istream-test read - Auto"
at_fn_check_prepare_notrace 'a shell pipeline' "u8-istream.at:107"
( $at_check_trace; printf 'entr\303\251e\n' | u8-istream-test read - Auto
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Auto mode
entrée
UTF-8 mode
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:107"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/u8-istream.at:112: printf '\\357\\273\\277entr\\303\\251e\\n' | u8-istream-test read - Auto"
at_fn_check_prepare_notrace 'a shell pipeline' "u8-istream.at:112"
( $at_check_trace; printf '\357\273\277entr\303\251e\n' | u8-istream-test read - Auto
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "UTF-8 mode
entrée
UTF-8 mode
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:112"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_988
#AT_START_989
at_fn_group_banner 989 'u8-istream.at:119' \
"read ISO-8859-1 as Auto,ISO-8859-1" " " 124
at_xfail=no
(
$as_echo "989. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/u8-istream.at:121: i18n-test supports_encodings ISO-8859-1"
at_fn_check_prepare_trace "u8-istream.at:121"
( $at_check_trace; i18n-test supports_encodings ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:121"
$at_failed && at_fn_log_failure
$at_traceon; }
buffer_size=`u8-istream-test buffer-size`
($PERL -e 'print "xyzzy\n" x int('$buffer_size' * 2.5 / 7)'; printf 'entr\351e\n') > input
(echo "Auto mode"
$PERL -e 'print "xyzzy\n" x int('$buffer_size' * 2.5 / 7)'
printf 'entr\303\251e\n') > expout
{ set +x
$as_echo "$at_srcdir/u8-istream.at:127: u8-istream-test read input Auto,ISO-8859-1"
at_fn_check_prepare_trace "u8-istream.at:127"
( $at_check_trace; u8-istream-test read input Auto,ISO-8859-1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:127"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_989
#AT_START_990
at_fn_group_banner 990 'u8-istream.at:131' \
"read UTF-16BE as Auto,UTF-16BE" " " 124
at_xfail=no
(
$as_echo "990. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/u8-istream.at:133: i18n-test supports_encodings UTF-16BE"
at_fn_check_prepare_trace "u8-istream.at:133"
( $at_check_trace; i18n-test supports_encodings UTF-16BE
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:133"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/u8-istream.at:134: printf '\\0e\\0n\\0t\\0r\\0\\351\\0e\\0\\n' | u8-istream-test read - Auto,UTF-16BE"
at_fn_check_prepare_notrace 'a shell pipeline' "u8-istream.at:134"
( $at_check_trace; printf '\0e\0n\0t\0r\0\351\0e\0\n' | u8-istream-test read - Auto,UTF-16BE
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "entrée
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:134"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_990
#AT_START_991
at_fn_group_banner 991 'u8-istream.at:140' \
"read UTF-16 as Auto" " " 124
at_xfail=no
(
$as_echo "991. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/u8-istream.at:142: i18n-test supports_encodings UTF-16 UTF-16BE UTF-16LE"
at_fn_check_prepare_trace "u8-istream.at:142"
( $at_check_trace; i18n-test supports_encodings UTF-16 UTF-16BE UTF-16LE
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:142"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/u8-istream.at:145: { printf '\\0e\\0n\\0t\\0'; sleep 1; printf 'r\\0\\351\\0e\\0\\n'; } | u8-istream-test read - Auto"
at_fn_check_prepare_notrace 'a shell pipeline' "u8-istream.at:145"
( $at_check_trace; { printf '\0e\0n\0t\0'; sleep 1; printf 'r\0\351\0e\0\n'; } | u8-istream-test read - Auto
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "entrée
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:145"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/u8-istream.at:148: printf 'e\\0n\\0t\\0r\\0\\351\\0e\\0\\n\\0' | u8-istream-test read - Auto"
at_fn_check_prepare_notrace 'a shell pipeline' "u8-istream.at:148"
( $at_check_trace; printf 'e\0n\0t\0r\0\351\0e\0\n\0' | u8-istream-test read - Auto
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "entrée
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:148"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/u8-istream.at:151: printf '\\376\\377\\0e\\0n\\0t\\0r\\0\\351\\0e\\0\\n' | u8-istream-test read - Auto"
at_fn_check_prepare_notrace 'a shell pipeline' "u8-istream.at:151"
( $at_check_trace; printf '\376\377\0e\0n\0t\0r\0\351\0e\0\n' | u8-istream-test read - Auto
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "entrée
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:151"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/u8-istream.at:154: printf '\\377\\376e\\0n\\0t\\0r\\0\\351\\0e\\0\\n\\0' | u8-istream-test read - Auto"
at_fn_check_prepare_notrace 'a shell pipeline' "u8-istream.at:154"
( $at_check_trace; printf '\377\376e\0n\0t\0r\0\351\0e\0\n\0' | u8-istream-test read - Auto
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "entrée
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_991
#AT_START_992
at_fn_group_banner 992 'u8-istream.at:159' \
"read UTF-32 as Auto" " " 124
at_xfail=no
(
$as_echo "992. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/u8-istream.at:161: i18n-test supports_encodings UTF-16 UTF-16BE UTF-16LE"
at_fn_check_prepare_trace "u8-istream.at:161"
( $at_check_trace; i18n-test supports_encodings UTF-16 UTF-16BE UTF-16LE
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:161"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/u8-istream.at:162: printf '\\0\\0\\0e\\0\\0\\0n\\0\\0\\0t\\0\\0\\0r\\0\\0\\0\\351\\0\\0\\0e\\0\\0\\0\\n' | u8-istream-test read - Auto"
at_fn_check_prepare_notrace 'a shell pipeline' "u8-istream.at:162"
( $at_check_trace; printf '\0\0\0e\0\0\0n\0\0\0t\0\0\0r\0\0\0\351\0\0\0e\0\0\0\n' | u8-istream-test read - Auto
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "entrée
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:162"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/u8-istream.at:165: printf 'e\\0\\0\\0n\\0\\0\\0t\\0\\0\\0r\\0\\0\\0\\351\\0\\0\\0e\\0\\0\\0\\n\\0\\0\\0' | u8-istream-test read - Auto"
at_fn_check_prepare_notrace 'a shell pipeline' "u8-istream.at:165"
( $at_check_trace; printf 'e\0\0\0n\0\0\0t\0\0\0r\0\0\0\351\0\0\0e\0\0\0\n\0\0\0' | u8-istream-test read - Auto
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "entrée
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:165"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/u8-istream.at:168: printf '\\0\\0\\376\\377\\0\\0\\0e\\0\\0\\0n\\0\\0\\0t\\0\\0\\0r\\0\\0\\0\\351\\0\\0\\0e\\0\\0\\0\\n' | u8-istream-test read - Auto"
at_fn_check_prepare_notrace 'a shell pipeline' "u8-istream.at:168"
( $at_check_trace; printf '\0\0\376\377\0\0\0e\0\0\0n\0\0\0t\0\0\0r\0\0\0\351\0\0\0e\0\0\0\n' | u8-istream-test read - Auto
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "entrée
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:168"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/u8-istream.at:171: printf '\\377\\376\\0\\0e\\0\\0\\0n\\0\\0\\0t\\0\\0\\0r\\0\\0\\0\\351\\0\\0\\0e\\0\\0\\0\\n\\0\\0\\0' | u8-istream-test read - Auto"
at_fn_check_prepare_notrace 'a shell pipeline' "u8-istream.at:171"
( $at_check_trace; printf '\377\376\0\0e\0\0\0n\0\0\0t\0\0\0r\0\0\0\351\0\0\0e\0\0\0\n\0\0\0' | u8-istream-test read - Auto
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "entrée
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:171"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_992
#AT_START_993
at_fn_group_banner 993 'u8-istream.at:176' \
"read EUC-JP as Auto,EUC-JP" " " 124
at_xfail=no
(
$as_echo "993. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/u8-istream.at:178: i18n-test supports_encodings EUC-JP"
at_fn_check_prepare_trace "u8-istream.at:178"
( $at_check_trace; i18n-test supports_encodings EUC-JP
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:178"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/u8-istream.at:179: printf 'entr\\217\\253\\261e\\n' | u8-istream-test read - Auto,EUC-JP"
at_fn_check_prepare_notrace 'a shell pipeline' "u8-istream.at:179"
( $at_check_trace; printf 'entr\217\253\261e\n' | u8-istream-test read - Auto,EUC-JP
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "entrée
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/u8-istream.at:179"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_993
#AT_START_994
at_fn_group_banner 994 'zip.at:3' \
"Basic zip - unzip test" " " 125
at_xfail=no
(
$as_echo "994. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/zip.at:6: here=\`pwd\`
dir1=\$here/original
dir2=\$here/recovered
mkdir -p \$dir1
# Generate files of differing sizes with random data in them
names=\"\"
s=1;
while test \$s -le 8192 ; do
name=\$dir1/\$s
dd if=/dev/urandom of=\$name count=1 bs=\$s 2> /dev/null
s=\$((\$s * 2));
bn=\`basename \$name\`;
names=\"\$names \$bn\";
done
(cd \$dir1 && \$abs_top_builddir/tests/libpspp/zip-test w foo.zip \$names)
mkdir -p \$dir2
cp \$dir1/foo.zip \$dir2
cd \$dir2
\$abs_top_builddir/tests/libpspp/zip-test r foo.zip \$names
# Compare the files to their originals
for f in \$names; do
diff \$dir1/\$f \$dir2/\$f;
if test \$? -ne 0 ; then exit 1; fi;
done
exit 0
"
at_fn_check_prepare_notrace 'a `...` command substitution' "zip.at:6"
( $at_check_trace; here=`pwd`
dir1=$here/original
dir2=$here/recovered
mkdir -p $dir1
# Generate files of differing sizes with random data in them
names=""
s=1;
while test $s -le 8192 ; do
name=$dir1/$s
dd if=/dev/urandom of=$name count=1 bs=$s 2> /dev/null
s=$(($s * 2));
bn=`basename $name`;
names="$names $bn";
done
(cd $dir1 && $abs_top_builddir/tests/libpspp/zip-test w foo.zip $names)
mkdir -p $dir2
cp $dir1/foo.zip $dir2
cd $dir2
$abs_top_builddir/tests/libpspp/zip-test r foo.zip $names
# Compare the files to their originals
for f in $names; do
diff $dir1/$f $dir2/$f;
if test $? -ne 0 ; then exit 1; fi;
done
exit 0
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/zip.at:6"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_994
#AT_START_995
at_fn_group_banner 995 'chart-geometry.at:3' \
"Chart Scale" " " 126
at_xfail=no
(
$as_echo "995. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/chart-geometry.at:4: ../../math/chart-get-scale-test"
at_fn_check_prepare_trace "chart-geometry.at:4"
( $at_check_trace; ../../math/chart-get-scale-test
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/chart-geometry.at:4"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_995
#AT_START_996
at_fn_group_banner 996 'chart-geometry.at:7' \
"Chart Ticks Format" " " 126
at_xfail=no
(
$as_echo "996. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/chart-geometry.at:8: ../../math/chart-get-ticks-format-test"
at_fn_check_prepare_trace "chart-geometry.at:8"
( $at_check_trace; ../../math/chart-get-ticks-format-test
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "lower: 1000, interval: 10, nticks: 10, fs: %.0lf, scale: 1, ex: 1030, ex 2: 1040
lower: 10000, interval: 10, nticks: 10, fs: %.0lf, scale: 1, ex: 10030, ex 2: 10040
lower: 100000, interval: 10, nticks: 10, fs: %.0lf, scale: 1, ex: 100030, ex 2: 100040
lower: 1e+06, interval: 10, nticks: 10, fs: %.0lf, scale: 1, ex: 1000030, ex 2: 1000040
lower: 1e+07, interval: 10, nticks: 10, fs: %.0lf, scale: 1, ex: 10000030, ex 2: 10000040
lower: 1e+08, interval: 10, nticks: 10, fs: %.0lf, scale: 1, ex: 100000030, ex 2: 100000040
lower: 0.1, interval: 0.01, nticks: 10, fs: %.2lf, scale: 1, ex: 0.13, ex 2: 0.14
lower: 0.01, interval: 0.001, nticks: 10, fs: %.3lf, scale: 1, ex: 0.013, ex 2: 0.014
lower: 0.001, interval: 0.0001, nticks: 10, fs: %.4lf, scale: 1, ex: 0.0013, ex 2: 0.0014
lower: 0.0001, interval: 1e-05, nticks: 10, fs: %.1lf×10-4, scale: 10000, ex: 1.3×10-4, ex 2: 1.4×10-4
lower: 1e-05, interval: 1e-07, nticks: 10, fs: %.2lf×10-5, scale: 100000, ex: 1.03×10-5, ex 2: 1.04×10-5
lower: 1e-07, interval: 1e-08, nticks: 10, fs: %.1lf×10-7, scale: 1e+07, ex: 1.3×10-7, ex 2: 1.4×10-7
lower: -5, interval: 1, nticks: 10, fs: %.0lf, scale: 1, ex: -2, ex 2: -1
lower: -5, interval: 0.5, nticks: 10, fs: %.1lf, scale: 1, ex: -3.5, ex 2: -3.0
lower: -5, interval: 0.2, nticks: 9, fs: %.1lf, scale: 1, ex: -4.4, ex 2: -4.2
lower: -5, interval: 2, nticks: 10, fs: %.0lf, scale: 1, ex: 1, ex 2: 3
lower: -0.5, interval: 0.1, nticks: 9, fs: %.1lf, scale: 1, ex: -0.2, ex 2: -0.1
lower: 9.75e+08, interval: 5e+06, nticks: 9, fs: %.3lf×109, scale: 1e-09, ex: 0.990×109, ex 2: 0.995×109
lower: 9.7e+08, interval: 1e+07, nticks: 9, fs: %.2lf×109, scale: 1e-09, ex: 1.00×109, ex 2: 1.01×109
lower: -4e+07, interval: 1e+07, nticks: 9, fs: %.0lf×107, scale: 1e-07, ex: -1×107, ex 2: 0×107
lower: -3e+07, interval: 5e+06, nticks: 9, fs: %.1lf×107, scale: 1e-07, ex: -1.5×107, ex 2: -1.0×107
lower: 1.001e-95, interval: 2e-99, nticks: 10, fs: %.4lf×10-95, scale: 1e+95, ex: 1.0016×10-95, ex 2: 1.0018×10-95
lower: 1.001e+98, interval: 2e+94, nticks: 10, fs: %.4lf×1098, scale: 1e-98, ex: 1.0016×1098, ex 2: 1.0018×1098
lower: 5984, interval: 1e-05, nticks: 10, fs: %.5lf, scale: 1, ex: 5984.00003, ex 2: 5984.00004
lower: 3e+33, interval: 1e-22, nticks: 10, fs: %lg, scale: 1, ex: 3e+33, ex 2: 3e+33
lower: 3e+33, interval: 1000, nticks: 10, fs: %.8lf×1033, scale: 1e-33, ex: 3.00000000×1033, ex 2: 3.00000000×1033
lower: 0.1, interval: 2e-42, nticks: 10, fs: %.8lf, scale: 1, ex: 0.10000000, ex 2: 0.10000000
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/chart-geometry.at:8"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_996
#AT_START_997
at_fn_group_banner 997 'moments.at:28' \
"two-pass moments" " " 127
at_xfail=no
(
$as_echo "997. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >moments.sps <<'_ATEOF'
DEBUG MOMENTS /1 2 3 4.
DEBUG MOMENTS /1*5 2*5 3*5 4*5.
DEBUG MOMENTS /1*1 2*2 3*3 4*4.
DEBUG MOMENTS /1*0.
DEBUG MOMENTS /1*1.
DEBUG MOMENTS /1*2.
DEBUG MOMENTS /1*3.
DEBUG MOMENTS /1*2 3.
DEBUG MOMENTS /1 1.00000001.
DEBUG MOMENTS /1000001 1000002 1000003 1000004.
_ATEOF
{ set +x
$as_echo "$at_srcdir/moments.at:28: pspp --testing-mode --no-output moments.sps"
at_fn_check_prepare_trace "moments.at:28"
( $at_check_trace; pspp --testing-mode --no-output moments.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "W=4.000 M1=2.500 M2=1.667 M3=0.000 M4=-1.200
W=20.000 M1=2.500 M2=1.316 M3=0.000 M4=-1.401
W=10.000 M1=3.000 M2=1.111 M3=-0.712 M4=-0.450
W=0.000 M1=sysmis M2=sysmis M3=sysmis M4=sysmis
W=1.000 M1=1.000 M2=sysmis M3=sysmis M4=sysmis
W=2.000 M1=1.000 M2=0.000 M3=sysmis M4=sysmis
W=3.000 M1=1.000 M2=0.000 M3=sysmis M4=sysmis
W=3.000 M1=1.667 M2=1.333 M3=1.732 M4=sysmis
W=2.000 M1=1.000 M2=0.000 M3=sysmis M4=sysmis
W=4.000 M1=1000002.500 M2=1.667 M3=0.000 M4=-1.200
" | \
$at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/moments.at:28"
$at_failed && at_fn_log_failure \
"moments.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_997
#AT_START_998
at_fn_group_banner 998 'moments.at:29' \
"one-pass moments" " " 127
at_xfail=no
(
$as_echo "998. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >moments.sps <<'_ATEOF'
DEBUG MOMENTS ONEPASS/1 2 3 4.
DEBUG MOMENTS ONEPASS/1*5 2*5 3*5 4*5.
DEBUG MOMENTS ONEPASS/1*1 2*2 3*3 4*4.
DEBUG MOMENTS ONEPASS/1*0.
DEBUG MOMENTS ONEPASS/1*1.
DEBUG MOMENTS ONEPASS/1*2.
DEBUG MOMENTS ONEPASS/1*3.
DEBUG MOMENTS ONEPASS/1*2 3.
DEBUG MOMENTS ONEPASS/1 1.00000001.
DEBUG MOMENTS ONEPASS/1000001 1000002 1000003 1000004.
_ATEOF
{ set +x
$as_echo "$at_srcdir/moments.at:29: pspp --testing-mode --no-output moments.sps"
at_fn_check_prepare_trace "moments.at:29"
( $at_check_trace; pspp --testing-mode --no-output moments.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "W=4.000 M1=2.500 M2=1.667 M3=0.000 M4=-1.200
W=20.000 M1=2.500 M2=1.316 M3=0.000 M4=-1.401
W=10.000 M1=3.000 M2=1.111 M3=-0.712 M4=-0.450
W=0.000 M1=sysmis M2=sysmis M3=sysmis M4=sysmis
W=1.000 M1=1.000 M2=sysmis M3=sysmis M4=sysmis
W=2.000 M1=1.000 M2=0.000 M3=sysmis M4=sysmis
W=3.000 M1=1.000 M2=0.000 M3=sysmis M4=sysmis
W=3.000 M1=1.667 M2=1.333 M3=1.732 M4=sysmis
W=2.000 M1=1.000 M2=0.000 M3=sysmis M4=sysmis
W=4.000 M1=1000002.500 M2=1.667 M3=0.000 M4=-1.200
" | \
$at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/moments.at:29"
$at_failed && at_fn_log_failure \
"moments.sps"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_998
#AT_START_999
at_fn_group_banner 999 'randist.at:86' \
"random distributions -- beta" " " 128
at_xfail=no
(
$as_echo "999. $at_setup_line: testing $at_desc ..."
$at_traceon
randist_compare
cat >beta.in <<'_ATEOF'
P a b x cdf pdf
.01 .75 .25 .0107 .0100 .7059
.01 .75 .50 .0047 .0100 1.5975
.01 .75 1.00 .0022 .0100 3.4812
.01 .75 1.50 .0014 .0100 5.4014
.01 .75 2.00 .0010 .0100 7.3328
.01 .75 2.50 .0008 .0100 9.2691
.01 .75 3.00 .0007 .0100 11.2077
.01 1.00 .25 .0394 .0100 .2577
.01 1.00 .50 .0199 .0100 .5051
.01 1.00 1.00 .0100 .0100 1.0000
.01 1.00 1.50 .0067 .0100 1.4950
.01 1.00 2.00 .0050 .0100 1.9900
.01 1.00 2.50 .0040 .0100 2.4850
.01 1.00 3.00 .0033 .0100 2.9800
.01 1.50 .25 .1343 .0100 .1168
.01 1.50 .50 .0808 .0100 .1888
.01 1.50 1.00 .0464 .0100 .3232
.01 1.50 1.50 .0328 .0100 .4538
.01 1.50 2.00 .0255 .0100 .5831
.01 1.50 2.50 .0208 .0100 .7118
.01 1.50 3.00 .0176 .0100 .8402
.10 .75 .25 .2094 .1000 .3968
.10 .75 .50 .0985 .1000 .7845
.10 .75 1.00 .0464 .1000 1.6158
.10 .75 1.50 .0302 .1000 2.4656
.10 .75 2.00 .0223 .1000 3.3210
.10 .75 2.50 .0177 .1000 4.1787
.10 .75 3.00 .0146 .1000 5.0376
.10 1.00 .25 .3439 .1000 .3429
.10 1.00 .50 .1900 .1000 .5556
.10 1.00 1.00 .1000 .1000 1.0000
.10 1.00 1.50 .0678 .1000 1.4482
.10 1.00 2.00 .0513 .1000 1.8974
.10 1.00 2.50 .0413 .1000 2.3469
.10 1.00 3.00 .0345 .1000 2.7965
.10 1.50 .25 .5280 .1000 .3650
.10 1.50 .50 .3514 .1000 .4685
.10 1.50 1.00 .2154 .1000 .6962
.10 1.50 1.50 .1565 .1000 .9252
.10 1.50 2.00 .1231 .1000 1.1537
.10 1.50 2.50 .1015 .1000 1.3821
.10 1.50 3.00 .0864 .1000 1.6102
.20 .75 .25 .4559 .2000 .4324
.20 .75 .50 .2372 .2000 .6847
.20 .75 1.00 .1170 .2000 1.2825
.20 .75 1.50 .0770 .2000 1.9025
.20 .75 2.00 .0573 .2000 2.5285
.20 .75 2.50 .0456 .2000 3.1569
.20 .75 3.00 .0379 .2000 3.7865
.20 1.00 .25 .5904 .2000 .4883
.20 1.00 .50 .3600 .2000 .6250
.20 1.00 1.00 .2000 .2000 1.0000
.20 1.00 1.50 .1382 .2000 1.3925
.20 1.00 2.00 .1056 .2000 1.7889
.20 1.00 2.50 .0854 .2000 2.1867
.20 1.00 3.00 .0717 .2000 2.5853
.20 1.50 .25 .7324 .2000 .6579
.20 1.50 .50 .5280 .2000 .6733
.20 1.50 1.00 .3420 .2000 .8772
.20 1.50 1.50 .2541 .2000 1.1086
.20 1.50 2.00 .2024 .2000 1.3456
.20 1.50 2.50 .1683 .2000 1.5847
.20 1.50 3.00 .1441 .2000 1.8249
.30 .75 .25 .6615 .3000 .5624
.30 .75 .50 .3852 .3000 .6756
.30 .75 1.00 .2008 .3000 1.1204
.30 .75 1.50 .1346 .3000 1.6023
.30 .75 2.00 .1010 .3000 2.0929
.30 .75 2.50 .0808 .3000 2.5868
.30 .75 3.00 .0673 .3000 3.0823
.30 1.00 .25 .7599 .3000 .7289
.30 1.00 .50 .5100 .3000 .7143
.30 1.00 1.00 .3000 .3000 1.0000
.30 1.00 1.50 .2116 .3000 1.3319
.30 1.00 2.00 .1633 .3000 1.6733
.30 1.00 2.50 .1330 .3000 2.0184
.30 1.00 3.00 .1121 .3000 2.3651
.30 1.50 .25 .8510 .3000 1.1004
.30 1.50 .50 .6576 .3000 .8823
.30 1.50 1.00 .4481 .3000 1.0041
.30 1.50 1.50 .3402 .3000 1.2064
.30 1.50 2.00 .2743 .3000 1.4253
.30 1.50 2.50 .2298 .3000 1.6503
.30 1.50 3.00 .1978 .3000 1.8782
.40 .75 .25 .8106 .4000 .8261
.40 .75 .50 .5300 .4000 .7134
.40 .75 1.00 .2947 .4000 1.0179
.40 .75 1.50 .2017 .4000 1.3908
.40 .75 2.00 .1530 .4000 1.7776
.40 .75 2.50 .1231 .4000 2.1695
.40 .75 3.00 .1029 .4000 2.5638
.40 1.00 .25 .8704 .4000 1.1574
.40 1.00 .50 .6400 .4000 .8333
.40 1.00 1.00 .4000 .4000 1.0000
.40 1.00 1.50 .2886 .4000 1.2651
.40 1.00 2.00 .2254 .4000 1.5492
.40 1.00 2.50 .1848 .4000 1.8401
.40 1.00 3.00 .1566 .4000 2.1341
.40 1.50 .25 .9219 .4000 1.8596
.40 1.50 .50 .7581 .4000 1.1269
.40 1.50 1.00 .5429 .4000 1.1052
.40 1.50 1.50 .4211 .4000 1.2573
.40 1.50 2.00 .3438 .4000 1.4428
.40 1.50 2.50 .2904 .4000 1.6405
.40 1.50 3.00 .2514 .4000 1.8440
.50 .75 .25 .9067 .5000 1.3662
.50 .75 .50 .6633 .5000 .7969
.50 .75 1.00 .3969 .5000 .9449
.50 .75 1.50 .2786 .5000 1.2197
.50 .75 2.00 .2139 .5000 1.5170
.50 .75 2.50 .1734 .5000 1.8224
.50 .75 3.00 .1458 .5000 2.1314
.50 1.00 .25 .9375 .5000 2.0000
.50 1.00 .50 .7500 .5000 1.0000
.50 1.00 1.00 .5000 .5000 1.0000
.50 1.00 1.50 .3700 .5000 1.1906
.50 1.00 2.00 .2929 .5000 1.4142
.50 1.00 2.50 .2421 .5000 1.6494
.50 1.00 3.00 .2063 .5000 1.8899
.50 1.50 .25 .9630 .5000 3.3258
.50 1.50 .50 .8368 .5000 1.4416
.50 1.50 1.00 .6300 .5000 1.1906
.50 1.50 1.50 .5000 .5000 1.2732
.50 1.50 2.00 .4136 .5000 1.4142
.50 1.50 2.50 .3525 .5000 1.5755
.50 1.50 3.00 .3069 .5000 1.7464
.60 .75 .25 .9613 .6000 2.6072
.60 .75 .50 .7793 .6000 .9454
.60 .75 1.00 .5061 .6000 .8892
.60 .75 1.50 .3662 .6000 1.0676
.60 .75 2.00 .2856 .6000 1.2826
.60 .75 2.50 .2337 .6000 1.5099
.60 .75 3.00 .1976 .6000 1.7426
.60 1.00 .25 .9744 .6000 3.9063
.60 1.00 .50 .8400 .6000 1.2500
.60 1.00 1.00 .6000 .6000 1.0000
.60 1.00 1.50 .4571 .6000 1.1052
.60 1.00 2.00 .3675 .6000 1.2649
.60 1.00 2.50 .3069 .6000 1.4427
.60 1.00 3.00 .2632 .6000 1.6287
.60 1.50 .25 .9850 .6000 6.6134
.60 1.50 .50 .8978 .6000 1.8869
.60 1.50 1.00 .7114 .6000 1.2651
.60 1.50 1.50 .5789 .6000 1.2573
.60 1.50 2.00 .4860 .6000 1.3438
.60 1.50 2.50 .4182 .6000 1.4617
.60 1.50 3.00 .3667 .6000 1.5938
.70 .75 .25 .9877 .7000 6.1137
.70 .75 .50 .8736 .7000 1.2142
.70 .75 1.00 .6215 .7000 .8447
.70 .75 1.50 .4670 .7000 .9214
.70 .75 2.00 .3714 .7000 1.0570
.70 .75 2.50 .3075 .7000 1.2110
.70 .75 3.00 .2622 .7000 1.3731
.70 1.00 .25 .9919 .7000 9.2593
.70 1.00 .50 .9100 .7000 1.6667
.70 1.00 1.00 .7000 .7000 1.0000
.70 1.00 1.50 .5519 .7000 1.0041
.70 1.00 2.00 .4523 .7000 1.0954
.70 1.00 2.50 .3822 .7000 1.2140
.70 1.00 3.00 .3306 .7000 1.3444
.70 1.50 .25 .9953 .7000 15.8068
.70 1.50 .50 .9434 .7000 2.5994
.70 1.50 1.00 .7884 .7000 1.3319
.70 1.50 1.50 .6598 .7000 1.2064
.70 1.50 2.00 .5635 .7000 1.2287
.70 1.50 2.50 .4905 .7000 1.2972
.70 1.50 3.00 .4337 .7000 1.3859
.80 .75 .25 .9976 .8000 20.5520
.80 .75 .50 .9431 .8000 1.7757
.80 .75 1.00 .7427 .8000 .8079
.80 .75 1.50 .5855 .8000 .7679
.80 .75 2.00 .4781 .8000 .8238
.80 .75 2.50 .4025 .8000 .9075
.80 .75 3.00 .3469 .8000 1.0028
.80 1.00 .25 .9984 .8000 31.2500
.80 1.00 .50 .9600 .8000 2.5000
.80 1.00 1.00 .8000 .8000 1.0000
.80 1.00 1.50 .6580 .8000 .8772
.80 1.00 2.00 .5528 .8000 .8944
.80 1.00 2.50 .4747 .8000 .9518
.80 1.00 3.00 .4152 .8000 1.0260
.80 1.50 .25 .9991 .8000 53.5108
.80 1.50 .50 .9751 .8000 3.9855
.80 1.50 1.00 .8618 .8000 1.3925
.80 1.50 1.50 .7459 .8000 1.1086
.80 1.50 2.00 .6508 .8000 1.0564
.80 1.50 2.50 .5748 .8000 1.0706
.80 1.50 3.00 .5137 .8000 1.1124
.90 .75 .25 .9998 .9000 164.2657
.90 .75 .50 .9857 .9000 3.4998
.90 .75 1.00 .8689 .9000 .7768
.90 .75 1.50 .7336 .9000 .5818
.90 .75 2.00 .6239 .9000 .5555
.90 .75 2.50 .5392 .9000 .5712
.90 .75 3.00 .4734 .9000 .6033
.90 1.00 .25 .9999 .9000 250.0000
.90 1.00 .50 .9900 .9000 5.0000
.90 1.00 1.00 .9000 .9000 1.0000
.90 1.00 1.50 .7846 .9000 .6962
.90 1.00 2.00 .6838 .9000 .6325
.90 1.00 2.50 .6019 .9000 .6280
.90 1.00 3.00 .5358 .9000 .6463
.90 1.50 .25 .9999 .9000 428.3866
.90 1.50 .50 .9938 .9000 8.0723
.90 1.50 1.00 .9322 .9000 1.4482
.90 1.50 1.50 .8435 .9000 .9252
.90 1.50 2.00 .7586 .9000 .7883
.90 1.50 2.50 .6847 .9000 .7461
.90 1.50 3.00 .6218 .9000 .7400
.99 .75 .25 1.0000 .9900 164255.717
.99 .75 .50 .9999 .9900 34.8318
.99 .75 1.00 .9867 .9900 .7525
.99 .75 1.50 .9412 .9900 .2568
.99 .75 2.00 .8779 .9900 .1656
.99 .75 2.50 .8116 .9900 .1348
.99 .75 3.00 .7492 .9900 .1220
.99 1.00 .25 1.0000 .9900 249999.999
.99 1.00 .50 .9999 .9900 50.0000
.99 1.00 1.00 .9900 .9900 1.0000
.99 1.00 1.50 .9536 .9900 .3232
.99 1.00 2.00 .9000 .9900 .2000
.99 1.00 2.50 .8415 .9900 .1577
.99 1.00 3.00 .7846 .9900 .1392
.99 1.50 .25 1.0000 .9900 428406.592
.99 1.50 .50 .9999 .9900 81.0536
.99 1.50 1.00 .9933 .9900 1.4950
.99 1.50 1.50 .9672 .9900 .4538
.99 1.50 2.00 .9260 .9900 .2669
.99 1.50 2.50 .8786 .9900 .2020
.99 1.50 3.00 .8302 .9900 .1724
_ATEOF
cat >beta.sps <<'_ATEOF'
DATA LIST LIST FILE='beta.in' NOTABLE SKIP=1
/P a b Xx Xcdf Xpdf.
NUMERIC x cdf pdf (F10.4).
COMPUTE x = IDF.beta(P, a, b).
COMPUTE cdf = cdf.beta(x, a, b).
COMPUTE pdf = pdf.beta(x, a, b).
DO IF $CASENUM = 1.
PRINT OUTFILE='beta.out'/" P a b x cdf pdf ".
END IF.
PRINT OUTFILE='beta.out'/P a b x cdf pdf.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/randist.at:86: pspp -O format=csv beta.sps"
at_fn_check_prepare_trace "randist.at:86"
( $at_check_trace; pspp -O format=csv beta.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:86"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/randist.at:86: \$PERL compare.pl beta.in beta.out"
at_fn_check_prepare_dynamic "$PERL compare.pl beta.in beta.out" "randist.at:86"
( $at_check_trace; $PERL compare.pl beta.in beta.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:86"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_999
#AT_START_1000
at_fn_group_banner 1000 'randist.at:321' \
"random distributions -- cauchy" " " 128
at_xfail=no
(
$as_echo "1000. $at_setup_line: testing $at_desc ..."
$at_traceon
randist_compare
cat >cauchy.in <<'_ATEOF'
P a b x cdf pdf
.01 -5.00 .50 -20.9103 .0100 .0006
.01 -5.00 .75 -28.8654 .0100 .0004
.01 -5.00 1.00 -36.8205 .0100 .0003
.01 -5.00 1.25 -44.7756 .0100 .0003
.01 -5.00 1.50 -52.7308 .0100 .0002
.01 -4.00 .50 -19.9103 .0100 .0006
.01 -4.00 .75 -27.8654 .0100 .0004
.01 -4.00 1.00 -35.8205 .0100 .0003
.01 -4.00 1.25 -43.7756 .0100 .0003
.01 -4.00 1.50 -51.7308 .0100 .0002
.01 -3.00 .50 -18.9103 .0100 .0006
.01 -3.00 .75 -26.8654 .0100 .0004
.01 -3.00 1.00 -34.8205 .0100 .0003
.01 -3.00 1.25 -42.7756 .0100 .0003
.01 -3.00 1.50 -50.7308 .0100 .0002
.01 -2.00 .50 -17.9103 .0100 .0006
.01 -2.00 .75 -25.8654 .0100 .0004
.01 -2.00 1.00 -33.8205 .0100 .0003
.01 -2.00 1.25 -41.7756 .0100 .0003
.01 -2.00 1.50 -49.7308 .0100 .0002
.01 -1.00 .50 -16.9103 .0100 .0006
.01 -1.00 .75 -24.8654 .0100 .0004
.01 -1.00 1.00 -32.8205 .0100 .0003
.01 -1.00 1.25 -40.7756 .0100 .0003
.01 -1.00 1.50 -48.7308 .0100 .0002
.01 .00 .50 -15.9103 .0100 .0006
.01 .00 .75 -23.8654 .0100 .0004
.01 .00 1.00 -31.8205 .0100 .0003
.01 .00 1.25 -39.7756 .0100 .0003
.01 .00 1.50 -47.7308 .0100 .0002
.01 1.00 .50 -14.9103 .0100 .0006
.01 1.00 .75 -22.8654 .0100 .0004
.01 1.00 1.00 -30.8205 .0100 .0003
.01 1.00 1.25 -38.7756 .0100 .0003
.01 1.00 1.50 -46.7308 .0100 .0002
.01 2.00 .50 -13.9103 .0100 .0006
.01 2.00 .75 -21.8654 .0100 .0004
.01 2.00 1.00 -29.8205 .0100 .0003
.01 2.00 1.25 -37.7756 .0100 .0003
.01 2.00 1.50 -45.7308 .0100 .0002
.01 3.00 .50 -12.9103 .0100 .0006
.01 3.00 .75 -20.8654 .0100 .0004
.01 3.00 1.00 -28.8205 .0100 .0003
.01 3.00 1.25 -36.7756 .0100 .0003
.01 3.00 1.50 -44.7308 .0100 .0002
.01 4.00 .50 -11.9103 .0100 .0006
.01 4.00 .75 -19.8654 .0100 .0004
.01 4.00 1.00 -27.8205 .0100 .0003
.01 4.00 1.25 -35.7756 .0100 .0003
.01 4.00 1.50 -43.7308 .0100 .0002
.01 5.00 .50 -10.9103 .0100 .0006
.01 5.00 .75 -18.8654 .0100 .0004
.01 5.00 1.00 -26.8205 .0100 .0003
.01 5.00 1.25 -34.7756 .0100 .0003
.01 5.00 1.50 -42.7308 .0100 .0002
.10 -5.00 .50 -6.5388 .1000 .0608
.10 -5.00 .75 -7.3083 .1000 .0405
.10 -5.00 1.00 -8.0777 .1000 .0304
.10 -5.00 1.25 -8.8471 .1000 .0243
.10 -5.00 1.50 -9.6165 .1000 .0203
.10 -4.00 .50 -5.5388 .1000 .0608
.10 -4.00 .75 -6.3083 .1000 .0405
.10 -4.00 1.00 -7.0777 .1000 .0304
.10 -4.00 1.25 -7.8471 .1000 .0243
.10 -4.00 1.50 -8.6165 .1000 .0203
.10 -3.00 .50 -4.5388 .1000 .0608
.10 -3.00 .75 -5.3083 .1000 .0405
.10 -3.00 1.00 -6.0777 .1000 .0304
.10 -3.00 1.25 -6.8471 .1000 .0243
.10 -3.00 1.50 -7.6165 .1000 .0203
.10 -2.00 .50 -3.5388 .1000 .0608
.10 -2.00 .75 -4.3083 .1000 .0405
.10 -2.00 1.00 -5.0777 .1000 .0304
.10 -2.00 1.25 -5.8471 .1000 .0243
.10 -2.00 1.50 -6.6165 .1000 .0203
.10 -1.00 .50 -2.5388 .1000 .0608
.10 -1.00 .75 -3.3083 .1000 .0405
.10 -1.00 1.00 -4.0777 .1000 .0304
.10 -1.00 1.25 -4.8471 .1000 .0243
.10 -1.00 1.50 -5.6165 .1000 .0203
.10 .00 .50 -1.5388 .1000 .0608
.10 .00 .75 -2.3083 .1000 .0405
.10 .00 1.00 -3.0777 .1000 .0304
.10 .00 1.25 -3.8471 .1000 .0243
.10 .00 1.50 -4.6165 .1000 .0203
.10 1.00 .50 -.5388 .1000 .0608
.10 1.00 .75 -1.3083 .1000 .0405
.10 1.00 1.00 -2.0777 .1000 .0304
.10 1.00 1.25 -2.8471 .1000 .0243
.10 1.00 1.50 -3.6165 .1000 .0203
.10 2.00 .50 .4612 .1000 .0608
.10 2.00 .75 -.3083 .1000 .0405
.10 2.00 1.00 -1.0777 .1000 .0304
.10 2.00 1.25 -1.8471 .1000 .0243
.10 2.00 1.50 -2.6165 .1000 .0203
.10 3.00 .50 1.4612 .1000 .0608
.10 3.00 .75 .6917 .1000 .0405
.10 3.00 1.00 -.0777 .1000 .0304
.10 3.00 1.25 -.8471 .1000 .0243
.10 3.00 1.50 -1.6165 .1000 .0203
.10 4.00 .50 2.4612 .1000 .0608
.10 4.00 .75 1.6917 .1000 .0405
.10 4.00 1.00 .9223 .1000 .0304
.10 4.00 1.25 .1529 .1000 .0243
.10 4.00 1.50 -.6165 .1000 .0203
.10 5.00 .50 3.4612 .1000 .0608
.10 5.00 .75 2.6917 .1000 .0405
.10 5.00 1.00 1.9223 .1000 .0304
.10 5.00 1.25 1.1529 .1000 .0243
.10 5.00 1.50 .3835 .1000 .0203
.20 -5.00 .50 -5.6882 .2000 .2199
.20 -5.00 .75 -6.0323 .2000 .1466
.20 -5.00 1.00 -6.3764 .2000 .1100
.20 -5.00 1.25 -6.7205 .2000 .0880
.20 -5.00 1.50 -7.0646 .2000 .0733
.20 -4.00 .50 -4.6882 .2000 .2199
.20 -4.00 .75 -5.0323 .2000 .1466
.20 -4.00 1.00 -5.3764 .2000 .1100
.20 -4.00 1.25 -5.7205 .2000 .0880
.20 -4.00 1.50 -6.0646 .2000 .0733
.20 -3.00 .50 -3.6882 .2000 .2199
.20 -3.00 .75 -4.0323 .2000 .1466
.20 -3.00 1.00 -4.3764 .2000 .1100
.20 -3.00 1.25 -4.7205 .2000 .0880
.20 -3.00 1.50 -5.0646 .2000 .0733
.20 -2.00 .50 -2.6882 .2000 .2199
.20 -2.00 .75 -3.0323 .2000 .1466
.20 -2.00 1.00 -3.3764 .2000 .1100
.20 -2.00 1.25 -3.7205 .2000 .0880
.20 -2.00 1.50 -4.0646 .2000 .0733
.20 -1.00 .50 -1.6882 .2000 .2199
.20 -1.00 .75 -2.0323 .2000 .1466
.20 -1.00 1.00 -2.3764 .2000 .1100
.20 -1.00 1.25 -2.7205 .2000 .0880
.20 -1.00 1.50 -3.0646 .2000 .0733
.20 .00 .50 -.6882 .2000 .2199
.20 .00 .75 -1.0323 .2000 .1466
.20 .00 1.00 -1.3764 .2000 .1100
.20 .00 1.25 -1.7205 .2000 .0880
.20 .00 1.50 -2.0646 .2000 .0733
.20 1.00 .50 .3118 .2000 .2199
.20 1.00 .75 -.0323 .2000 .1466
.20 1.00 1.00 -.3764 .2000 .1100
.20 1.00 1.25 -.7205 .2000 .0880
.20 1.00 1.50 -1.0646 .2000 .0733
.20 2.00 .50 1.3118 .2000 .2199
.20 2.00 .75 .9677 .2000 .1466
.20 2.00 1.00 .6236 .2000 .1100
.20 2.00 1.25 .2795 .2000 .0880
.20 2.00 1.50 -.0646 .2000 .0733
.20 3.00 .50 2.3118 .2000 .2199
.20 3.00 .75 1.9677 .2000 .1466
.20 3.00 1.00 1.6236 .2000 .1100
.20 3.00 1.25 1.2795 .2000 .0880
.20 3.00 1.50 .9354 .2000 .0733
.20 4.00 .50 3.3118 .2000 .2199
.20 4.00 .75 2.9677 .2000 .1466
.20 4.00 1.00 2.6236 .2000 .1100
.20 4.00 1.25 2.2795 .2000 .0880
.20 4.00 1.50 1.9354 .2000 .0733
.20 5.00 .50 4.3118 .2000 .2199
.20 5.00 .75 3.9677 .2000 .1466
.20 5.00 1.00 3.6236 .2000 .1100
.20 5.00 1.25 3.2795 .2000 .0880
.20 5.00 1.50 2.9354 .2000 .0733
.30 -5.00 .50 -5.3633 .3000 .4167
.30 -5.00 .75 -5.5449 .3000 .2778
.30 -5.00 1.00 -5.7265 .3000 .2083
.30 -5.00 1.25 -5.9082 .3000 .1667
.30 -5.00 1.50 -6.0898 .3000 .1389
.30 -4.00 .50 -4.3633 .3000 .4167
.30 -4.00 .75 -4.5449 .3000 .2778
.30 -4.00 1.00 -4.7265 .3000 .2083
.30 -4.00 1.25 -4.9082 .3000 .1667
.30 -4.00 1.50 -5.0898 .3000 .1389
.30 -3.00 .50 -3.3633 .3000 .4167
.30 -3.00 .75 -3.5449 .3000 .2778
.30 -3.00 1.00 -3.7265 .3000 .2083
.30 -3.00 1.25 -3.9082 .3000 .1667
.30 -3.00 1.50 -4.0898 .3000 .1389
.30 -2.00 .50 -2.3633 .3000 .4167
.30 -2.00 .75 -2.5449 .3000 .2778
.30 -2.00 1.00 -2.7265 .3000 .2083
.30 -2.00 1.25 -2.9082 .3000 .1667
.30 -2.00 1.50 -3.0898 .3000 .1389
.30 -1.00 .50 -1.3633 .3000 .4167
.30 -1.00 .75 -1.5449 .3000 .2778
.30 -1.00 1.00 -1.7265 .3000 .2083
.30 -1.00 1.25 -1.9082 .3000 .1667
.30 -1.00 1.50 -2.0898 .3000 .1389
.30 .00 .50 -.3633 .3000 .4167
.30 .00 .75 -.5449 .3000 .2778
.30 .00 1.00 -.7265 .3000 .2083
.30 .00 1.25 -.9082 .3000 .1667
.30 .00 1.50 -1.0898 .3000 .1389
.30 1.00 .50 .6367 .3000 .4167
.30 1.00 .75 .4551 .3000 .2778
.30 1.00 1.00 .2735 .3000 .2083
.30 1.00 1.25 .0918 .3000 .1667
.30 1.00 1.50 -.0898 .3000 .1389
.30 2.00 .50 1.6367 .3000 .4167
.30 2.00 .75 1.4551 .3000 .2778
.30 2.00 1.00 1.2735 .3000 .2083
.30 2.00 1.25 1.0918 .3000 .1667
.30 2.00 1.50 .9102 .3000 .1389
.30 3.00 .50 2.6367 .3000 .4167
.30 3.00 .75 2.4551 .3000 .2778
.30 3.00 1.00 2.2735 .3000 .2083
.30 3.00 1.25 2.0918 .3000 .1667
.30 3.00 1.50 1.9102 .3000 .1389
.30 4.00 .50 3.6367 .3000 .4167
.30 4.00 .75 3.4551 .3000 .2778
.30 4.00 1.00 3.2735 .3000 .2083
.30 4.00 1.25 3.0918 .3000 .1667
.30 4.00 1.50 2.9102 .3000 .1389
.30 5.00 .50 4.6367 .3000 .4167
.30 5.00 .75 4.4551 .3000 .2778
.30 5.00 1.00 4.2735 .3000 .2083
.30 5.00 1.25 4.0918 .3000 .1667
.30 5.00 1.50 3.9102 .3000 .1389
.40 -5.00 .50 -5.1625 .4000 .5758
.40 -5.00 .75 -5.2437 .4000 .3839
.40 -5.00 1.00 -5.3249 .4000 .2879
.40 -5.00 1.25 -5.4061 .4000 .2303
.40 -5.00 1.50 -5.4874 .4000 .1919
.40 -4.00 .50 -4.1625 .4000 .5758
.40 -4.00 .75 -4.2437 .4000 .3839
.40 -4.00 1.00 -4.3249 .4000 .2879
.40 -4.00 1.25 -4.4061 .4000 .2303
.40 -4.00 1.50 -4.4874 .4000 .1919
.40 -3.00 .50 -3.1625 .4000 .5758
.40 -3.00 .75 -3.2437 .4000 .3839
.40 -3.00 1.00 -3.3249 .4000 .2879
.40 -3.00 1.25 -3.4061 .4000 .2303
.40 -3.00 1.50 -3.4874 .4000 .1919
.40 -2.00 .50 -2.1625 .4000 .5758
.40 -2.00 .75 -2.2437 .4000 .3839
.40 -2.00 1.00 -2.3249 .4000 .2879
.40 -2.00 1.25 -2.4061 .4000 .2303
.40 -2.00 1.50 -2.4874 .4000 .1919
.40 -1.00 .50 -1.1625 .4000 .5758
.40 -1.00 .75 -1.2437 .4000 .3839
.40 -1.00 1.00 -1.3249 .4000 .2879
.40 -1.00 1.25 -1.4061 .4000 .2303
.40 -1.00 1.50 -1.4874 .4000 .1919
.40 .00 .50 -.1625 .4000 .5758
.40 .00 .75 -.2437 .4000 .3839
.40 .00 1.00 -.3249 .4000 .2879
.40 .00 1.25 -.4061 .4000 .2303
.40 .00 1.50 -.4874 .4000 .1919
.40 1.00 .50 .8375 .4000 .5758
.40 1.00 .75 .7563 .4000 .3839
.40 1.00 1.00 .6751 .4000 .2879
.40 1.00 1.25 .5939 .4000 .2303
.40 1.00 1.50 .5126 .4000 .1919
.40 2.00 .50 1.8375 .4000 .5758
.40 2.00 .75 1.7563 .4000 .3839
.40 2.00 1.00 1.6751 .4000 .2879
.40 2.00 1.25 1.5939 .4000 .2303
.40 2.00 1.50 1.5126 .4000 .1919
.40 3.00 .50 2.8375 .4000 .5758
.40 3.00 .75 2.7563 .4000 .3839
.40 3.00 1.00 2.6751 .4000 .2879
.40 3.00 1.25 2.5939 .4000 .2303
.40 3.00 1.50 2.5126 .4000 .1919
.40 4.00 .50 3.8375 .4000 .5758
.40 4.00 .75 3.7563 .4000 .3839
.40 4.00 1.00 3.6751 .4000 .2879
.40 4.00 1.25 3.5939 .4000 .2303
.40 4.00 1.50 3.5126 .4000 .1919
.40 5.00 .50 4.8375 .4000 .5758
.40 5.00 .75 4.7563 .4000 .3839
.40 5.00 1.00 4.6751 .4000 .2879
.40 5.00 1.25 4.5939 .4000 .2303
.40 5.00 1.50 4.5126 .4000 .1919
.50 -5.00 .50 -5.0000 .5000 .6366
.50 -5.00 .75 -5.0000 .5000 .4244
.50 -5.00 1.00 -5.0000 .5000 .3183
.50 -5.00 1.25 -5.0000 .5000 .2546
.50 -5.00 1.50 -5.0000 .5000 .2122
.50 -4.00 .50 -4.0000 .5000 .6366
.50 -4.00 .75 -4.0000 .5000 .4244
.50 -4.00 1.00 -4.0000 .5000 .3183
.50 -4.00 1.25 -4.0000 .5000 .2546
.50 -4.00 1.50 -4.0000 .5000 .2122
.50 -3.00 .50 -3.0000 .5000 .6366
.50 -3.00 .75 -3.0000 .5000 .4244
.50 -3.00 1.00 -3.0000 .5000 .3183
.50 -3.00 1.25 -3.0000 .5000 .2546
.50 -3.00 1.50 -3.0000 .5000 .2122
.50 -2.00 .50 -2.0000 .5000 .6366
.50 -2.00 .75 -2.0000 .5000 .4244
.50 -2.00 1.00 -2.0000 .5000 .3183
.50 -2.00 1.25 -2.0000 .5000 .2546
.50 -2.00 1.50 -2.0000 .5000 .2122
.50 -1.00 .50 -1.0000 .5000 .6366
.50 -1.00 .75 -1.0000 .5000 .4244
.50 -1.00 1.00 -1.0000 .5000 .3183
.50 -1.00 1.25 -1.0000 .5000 .2546
.50 -1.00 1.50 -1.0000 .5000 .2122
.50 .00 .50 .0000 .5000 .6366
.50 .00 .75 .0000 .5000 .4244
.50 .00 1.00 .0000 .5000 .3183
.50 .00 1.25 .0000 .5000 .2546
.50 .00 1.50 .0000 .5000 .2122
.50 1.00 .50 1.0000 .5000 .6366
.50 1.00 .75 1.0000 .5000 .4244
.50 1.00 1.00 1.0000 .5000 .3183
.50 1.00 1.25 1.0000 .5000 .2546
.50 1.00 1.50 1.0000 .5000 .2122
.50 2.00 .50 2.0000 .5000 .6366
.50 2.00 .75 2.0000 .5000 .4244
.50 2.00 1.00 2.0000 .5000 .3183
.50 2.00 1.25 2.0000 .5000 .2546
.50 2.00 1.50 2.0000 .5000 .2122
.50 3.00 .50 3.0000 .5000 .6366
.50 3.00 .75 3.0000 .5000 .4244
.50 3.00 1.00 3.0000 .5000 .3183
.50 3.00 1.25 3.0000 .5000 .2546
.50 3.00 1.50 3.0000 .5000 .2122
.50 4.00 .50 4.0000 .5000 .6366
.50 4.00 .75 4.0000 .5000 .4244
.50 4.00 1.00 4.0000 .5000 .3183
.50 4.00 1.25 4.0000 .5000 .2546
.50 4.00 1.50 4.0000 .5000 .2122
.50 5.00 .50 5.0000 .5000 .6366
.50 5.00 .75 5.0000 .5000 .4244
.50 5.00 1.00 5.0000 .5000 .3183
.50 5.00 1.25 5.0000 .5000 .2546
.50 5.00 1.50 5.0000 .5000 .2122
.60 -5.00 .50 -4.8375 .6000 .5758
.60 -5.00 .75 -4.7563 .6000 .3839
.60 -5.00 1.00 -4.6751 .6000 .2879
.60 -5.00 1.25 -4.5939 .6000 .2303
.60 -5.00 1.50 -4.5126 .6000 .1919
.60 -4.00 .50 -3.8375 .6000 .5758
.60 -4.00 .75 -3.7563 .6000 .3839
.60 -4.00 1.00 -3.6751 .6000 .2879
.60 -4.00 1.25 -3.5939 .6000 .2303
.60 -4.00 1.50 -3.5126 .6000 .1919
.60 -3.00 .50 -2.8375 .6000 .5758
.60 -3.00 .75 -2.7563 .6000 .3839
.60 -3.00 1.00 -2.6751 .6000 .2879
.60 -3.00 1.25 -2.5939 .6000 .2303
.60 -3.00 1.50 -2.5126 .6000 .1919
.60 -2.00 .50 -1.8375 .6000 .5758
.60 -2.00 .75 -1.7563 .6000 .3839
.60 -2.00 1.00 -1.6751 .6000 .2879
.60 -2.00 1.25 -1.5939 .6000 .2303
.60 -2.00 1.50 -1.5126 .6000 .1919
.60 -1.00 .50 -.8375 .6000 .5758
.60 -1.00 .75 -.7563 .6000 .3839
.60 -1.00 1.00 -.6751 .6000 .2879
.60 -1.00 1.25 -.5939 .6000 .2303
.60 -1.00 1.50 -.5126 .6000 .1919
.60 .00 .50 .1625 .6000 .5758
.60 .00 .75 .2437 .6000 .3839
.60 .00 1.00 .3249 .6000 .2879
.60 .00 1.25 .4061 .6000 .2303
.60 .00 1.50 .4874 .6000 .1919
.60 1.00 .50 1.1625 .6000 .5758
.60 1.00 .75 1.2437 .6000 .3839
.60 1.00 1.00 1.3249 .6000 .2879
.60 1.00 1.25 1.4061 .6000 .2303
.60 1.00 1.50 1.4874 .6000 .1919
.60 2.00 .50 2.1625 .6000 .5758
.60 2.00 .75 2.2437 .6000 .3839
.60 2.00 1.00 2.3249 .6000 .2879
.60 2.00 1.25 2.4061 .6000 .2303
.60 2.00 1.50 2.4874 .6000 .1919
.60 3.00 .50 3.1625 .6000 .5758
.60 3.00 .75 3.2437 .6000 .3839
.60 3.00 1.00 3.3249 .6000 .2879
.60 3.00 1.25 3.4061 .6000 .2303
.60 3.00 1.50 3.4874 .6000 .1919
.60 4.00 .50 4.1625 .6000 .5758
.60 4.00 .75 4.2437 .6000 .3839
.60 4.00 1.00 4.3249 .6000 .2879
.60 4.00 1.25 4.4061 .6000 .2303
.60 4.00 1.50 4.4874 .6000 .1919
.60 5.00 .50 5.1625 .6000 .5758
.60 5.00 .75 5.2437 .6000 .3839
.60 5.00 1.00 5.3249 .6000 .2879
.60 5.00 1.25 5.4061 .6000 .2303
.60 5.00 1.50 5.4874 .6000 .1919
.70 -5.00 .50 -4.6367 .7000 .4167
.70 -5.00 .75 -4.4551 .7000 .2778
.70 -5.00 1.00 -4.2735 .7000 .2083
.70 -5.00 1.25 -4.0918 .7000 .1667
.70 -5.00 1.50 -3.9102 .7000 .1389
.70 -4.00 .50 -3.6367 .7000 .4167
.70 -4.00 .75 -3.4551 .7000 .2778
.70 -4.00 1.00 -3.2735 .7000 .2083
.70 -4.00 1.25 -3.0918 .7000 .1667
.70 -4.00 1.50 -2.9102 .7000 .1389
.70 -3.00 .50 -2.6367 .7000 .4167
.70 -3.00 .75 -2.4551 .7000 .2778
.70 -3.00 1.00 -2.2735 .7000 .2083
.70 -3.00 1.25 -2.0918 .7000 .1667
.70 -3.00 1.50 -1.9102 .7000 .1389
.70 -2.00 .50 -1.6367 .7000 .4167
.70 -2.00 .75 -1.4551 .7000 .2778
.70 -2.00 1.00 -1.2735 .7000 .2083
.70 -2.00 1.25 -1.0918 .7000 .1667
.70 -2.00 1.50 -.9102 .7000 .1389
.70 -1.00 .50 -.6367 .7000 .4167
.70 -1.00 .75 -.4551 .7000 .2778
.70 -1.00 1.00 -.2735 .7000 .2083
.70 -1.00 1.25 -.0918 .7000 .1667
.70 -1.00 1.50 .0898 .7000 .1389
.70 .00 .50 .3633 .7000 .4167
.70 .00 .75 .5449 .7000 .2778
.70 .00 1.00 .7265 .7000 .2083
.70 .00 1.25 .9082 .7000 .1667
.70 .00 1.50 1.0898 .7000 .1389
.70 1.00 .50 1.3633 .7000 .4167
.70 1.00 .75 1.5449 .7000 .2778
.70 1.00 1.00 1.7265 .7000 .2083
.70 1.00 1.25 1.9082 .7000 .1667
.70 1.00 1.50 2.0898 .7000 .1389
.70 2.00 .50 2.3633 .7000 .4167
.70 2.00 .75 2.5449 .7000 .2778
.70 2.00 1.00 2.7265 .7000 .2083
.70 2.00 1.25 2.9082 .7000 .1667
.70 2.00 1.50 3.0898 .7000 .1389
.70 3.00 .50 3.3633 .7000 .4167
.70 3.00 .75 3.5449 .7000 .2778
.70 3.00 1.00 3.7265 .7000 .2083
.70 3.00 1.25 3.9082 .7000 .1667
.70 3.00 1.50 4.0898 .7000 .1389
.70 4.00 .50 4.3633 .7000 .4167
.70 4.00 .75 4.5449 .7000 .2778
.70 4.00 1.00 4.7265 .7000 .2083
.70 4.00 1.25 4.9082 .7000 .1667
.70 4.00 1.50 5.0898 .7000 .1389
.70 5.00 .50 5.3633 .7000 .4167
.70 5.00 .75 5.5449 .7000 .2778
.70 5.00 1.00 5.7265 .7000 .2083
.70 5.00 1.25 5.9082 .7000 .1667
.70 5.00 1.50 6.0898 .7000 .1389
.80 -5.00 .50 -4.3118 .8000 .2199
.80 -5.00 .75 -3.9677 .8000 .1466
.80 -5.00 1.00 -3.6236 .8000 .1100
.80 -5.00 1.25 -3.2795 .8000 .0880
.80 -5.00 1.50 -2.9354 .8000 .0733
.80 -4.00 .50 -3.3118 .8000 .2199
.80 -4.00 .75 -2.9677 .8000 .1466
.80 -4.00 1.00 -2.6236 .8000 .1100
.80 -4.00 1.25 -2.2795 .8000 .0880
.80 -4.00 1.50 -1.9354 .8000 .0733
.80 -3.00 .50 -2.3118 .8000 .2199
.80 -3.00 .75 -1.9677 .8000 .1466
.80 -3.00 1.00 -1.6236 .8000 .1100
.80 -3.00 1.25 -1.2795 .8000 .0880
.80 -3.00 1.50 -.9354 .8000 .0733
.80 -2.00 .50 -1.3118 .8000 .2199
.80 -2.00 .75 -.9677 .8000 .1466
.80 -2.00 1.00 -.6236 .8000 .1100
.80 -2.00 1.25 -.2795 .8000 .0880
.80 -2.00 1.50 .0646 .8000 .0733
.80 -1.00 .50 -.3118 .8000 .2199
.80 -1.00 .75 .0323 .8000 .1466
.80 -1.00 1.00 .3764 .8000 .1100
.80 -1.00 1.25 .7205 .8000 .0880
.80 -1.00 1.50 1.0646 .8000 .0733
.80 .00 .50 .6882 .8000 .2199
.80 .00 .75 1.0323 .8000 .1466
.80 .00 1.00 1.3764 .8000 .1100
.80 .00 1.25 1.7205 .8000 .0880
.80 .00 1.50 2.0646 .8000 .0733
.80 1.00 .50 1.6882 .8000 .2199
.80 1.00 .75 2.0323 .8000 .1466
.80 1.00 1.00 2.3764 .8000 .1100
.80 1.00 1.25 2.7205 .8000 .0880
.80 1.00 1.50 3.0646 .8000 .0733
.80 2.00 .50 2.6882 .8000 .2199
.80 2.00 .75 3.0323 .8000 .1466
.80 2.00 1.00 3.3764 .8000 .1100
.80 2.00 1.25 3.7205 .8000 .0880
.80 2.00 1.50 4.0646 .8000 .0733
.80 3.00 .50 3.6882 .8000 .2199
.80 3.00 .75 4.0323 .8000 .1466
.80 3.00 1.00 4.3764 .8000 .1100
.80 3.00 1.25 4.7205 .8000 .0880
.80 3.00 1.50 5.0646 .8000 .0733
.80 4.00 .50 4.6882 .8000 .2199
.80 4.00 .75 5.0323 .8000 .1466
.80 4.00 1.00 5.3764 .8000 .1100
.80 4.00 1.25 5.7205 .8000 .0880
.80 4.00 1.50 6.0646 .8000 .0733
.80 5.00 .50 5.6882 .8000 .2199
.80 5.00 .75 6.0323 .8000 .1466
.80 5.00 1.00 6.3764 .8000 .1100
.80 5.00 1.25 6.7205 .8000 .0880
.80 5.00 1.50 7.0646 .8000 .0733
.90 -5.00 .50 -3.4612 .9000 .0608
.90 -5.00 .75 -2.6917 .9000 .0405
.90 -5.00 1.00 -1.9223 .9000 .0304
.90 -5.00 1.25 -1.1529 .9000 .0243
.90 -5.00 1.50 -.3835 .9000 .0203
.90 -4.00 .50 -2.4612 .9000 .0608
.90 -4.00 .75 -1.6917 .9000 .0405
.90 -4.00 1.00 -.9223 .9000 .0304
.90 -4.00 1.25 -.1529 .9000 .0243
.90 -4.00 1.50 .6165 .9000 .0203
.90 -3.00 .50 -1.4612 .9000 .0608
.90 -3.00 .75 -.6917 .9000 .0405
.90 -3.00 1.00 .0777 .9000 .0304
.90 -3.00 1.25 .8471 .9000 .0243
.90 -3.00 1.50 1.6165 .9000 .0203
.90 -2.00 .50 -.4612 .9000 .0608
.90 -2.00 .75 .3083 .9000 .0405
.90 -2.00 1.00 1.0777 .9000 .0304
.90 -2.00 1.25 1.8471 .9000 .0243
.90 -2.00 1.50 2.6165 .9000 .0203
.90 -1.00 .50 .5388 .9000 .0608
.90 -1.00 .75 1.3083 .9000 .0405
.90 -1.00 1.00 2.0777 .9000 .0304
.90 -1.00 1.25 2.8471 .9000 .0243
.90 -1.00 1.50 3.6165 .9000 .0203
.90 .00 .50 1.5388 .9000 .0608
.90 .00 .75 2.3083 .9000 .0405
.90 .00 1.00 3.0777 .9000 .0304
.90 .00 1.25 3.8471 .9000 .0243
.90 .00 1.50 4.6165 .9000 .0203
.90 1.00 .50 2.5388 .9000 .0608
.90 1.00 .75 3.3083 .9000 .0405
.90 1.00 1.00 4.0777 .9000 .0304
.90 1.00 1.25 4.8471 .9000 .0243
.90 1.00 1.50 5.6165 .9000 .0203
.90 2.00 .50 3.5388 .9000 .0608
.90 2.00 .75 4.3083 .9000 .0405
.90 2.00 1.00 5.0777 .9000 .0304
.90 2.00 1.25 5.8471 .9000 .0243
.90 2.00 1.50 6.6165 .9000 .0203
.90 3.00 .50 4.5388 .9000 .0608
.90 3.00 .75 5.3083 .9000 .0405
.90 3.00 1.00 6.0777 .9000 .0304
.90 3.00 1.25 6.8471 .9000 .0243
.90 3.00 1.50 7.6165 .9000 .0203
.90 4.00 .50 5.5388 .9000 .0608
.90 4.00 .75 6.3083 .9000 .0405
.90 4.00 1.00 7.0777 .9000 .0304
.90 4.00 1.25 7.8471 .9000 .0243
.90 4.00 1.50 8.6165 .9000 .0203
.90 5.00 .50 6.5388 .9000 .0608
.90 5.00 .75 7.3083 .9000 .0405
.90 5.00 1.00 8.0777 .9000 .0304
.90 5.00 1.25 8.8471 .9000 .0243
.90 5.00 1.50 9.6165 .9000 .0203
.99 -5.00 .50 10.9103 .9900 .0006
.99 -5.00 .75 18.8654 .9900 .0004
.99 -5.00 1.00 26.8205 .9900 .0003
.99 -5.00 1.25 34.7756 .9900 .0003
.99 -5.00 1.50 42.7308 .9900 .0002
.99 -4.00 .50 11.9103 .9900 .0006
.99 -4.00 .75 19.8654 .9900 .0004
.99 -4.00 1.00 27.8205 .9900 .0003
.99 -4.00 1.25 35.7756 .9900 .0003
.99 -4.00 1.50 43.7308 .9900 .0002
.99 -3.00 .50 12.9103 .9900 .0006
.99 -3.00 .75 20.8654 .9900 .0004
.99 -3.00 1.00 28.8205 .9900 .0003
.99 -3.00 1.25 36.7756 .9900 .0003
.99 -3.00 1.50 44.7308 .9900 .0002
.99 -2.00 .50 13.9103 .9900 .0006
.99 -2.00 .75 21.8654 .9900 .0004
.99 -2.00 1.00 29.8205 .9900 .0003
.99 -2.00 1.25 37.7756 .9900 .0003
.99 -2.00 1.50 45.7308 .9900 .0002
.99 -1.00 .50 14.9103 .9900 .0006
.99 -1.00 .75 22.8654 .9900 .0004
.99 -1.00 1.00 30.8205 .9900 .0003
.99 -1.00 1.25 38.7756 .9900 .0003
.99 -1.00 1.50 46.7308 .9900 .0002
.99 .00 .50 15.9103 .9900 .0006
.99 .00 .75 23.8654 .9900 .0004
.99 .00 1.00 31.8205 .9900 .0003
.99 .00 1.25 39.7756 .9900 .0003
.99 .00 1.50 47.7308 .9900 .0002
.99 1.00 .50 16.9103 .9900 .0006
.99 1.00 .75 24.8654 .9900 .0004
.99 1.00 1.00 32.8205 .9900 .0003
.99 1.00 1.25 40.7756 .9900 .0003
.99 1.00 1.50 48.7308 .9900 .0002
.99 2.00 .50 17.9103 .9900 .0006
.99 2.00 .75 25.8654 .9900 .0004
.99 2.00 1.00 33.8205 .9900 .0003
.99 2.00 1.25 41.7756 .9900 .0003
.99 2.00 1.50 49.7308 .9900 .0002
.99 3.00 .50 18.9103 .9900 .0006
.99 3.00 .75 26.8654 .9900 .0004
.99 3.00 1.00 34.8205 .9900 .0003
.99 3.00 1.25 42.7756 .9900 .0003
.99 3.00 1.50 50.7308 .9900 .0002
.99 4.00 .50 19.9103 .9900 .0006
.99 4.00 .75 27.8654 .9900 .0004
.99 4.00 1.00 35.8205 .9900 .0003
.99 4.00 1.25 43.7756 .9900 .0003
.99 4.00 1.50 51.7308 .9900 .0002
.99 5.00 .50 20.9103 .9900 .0006
.99 5.00 .75 28.8654 .9900 .0004
.99 5.00 1.00 36.8205 .9900 .0003
.99 5.00 1.25 44.7756 .9900 .0003
.99 5.00 1.50 52.7308 .9900 .0002
_ATEOF
cat >cauchy.sps <<'_ATEOF'
DATA LIST LIST FILE='cauchy.in' NOTABLE SKIP=1
/P a b Xx Xcdf Xpdf.
NUMERIC x cdf pdf (F10.4).
COMPUTE x = IDF.cauchy(P, a, b).
COMPUTE cdf = cdf.cauchy(x, a, b).
COMPUTE pdf = pdf.cauchy(x, a, b).
DO IF $CASENUM = 1.
PRINT OUTFILE='cauchy.out'/" P a b x cdf pdf ".
END IF.
PRINT OUTFILE='cauchy.out'/P a b x cdf pdf.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/randist.at:321: pspp -O format=csv cauchy.sps"
at_fn_check_prepare_trace "randist.at:321"
( $at_check_trace; pspp -O format=csv cauchy.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:321"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/randist.at:321: \$PERL compare.pl cauchy.in cauchy.out"
at_fn_check_prepare_dynamic "$PERL compare.pl cauchy.in cauchy.out" "randist.at:321"
( $at_check_trace; $PERL compare.pl cauchy.in cauchy.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:321"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1000
#AT_START_1001
at_fn_group_banner 1001 'randist.at:930' \
"random distributions -- chisq" " " 128
at_xfail=no
(
$as_echo "1001. $at_setup_line: testing $at_desc ..."
$at_traceon
randist_compare
cat >chisq.in <<'_ATEOF'
P df x cdf pdf sig
.01 1.00 .0002 .0100 31.8277 .9900
.01 2.00 .0201 .0100 .4950 .9900
.01 5.00 .5543 .0100 .0416 .9900
.01 10.00 2.5582 .0100 .0155 .9900
.10 1.00 .0158 .1000 3.1498 .9000
.10 2.00 .2107 .1000 .4500 .9000
.10 5.00 1.6103 .1000 .1215 .9000
.10 10.00 4.8652 .1000 .0641 .9000
.20 1.00 .0642 .2000 1.5250 .8000
.20 2.00 .4463 .2000 .4000 .8000
.20 5.00 2.3425 .2000 .1478 .8000
.20 10.00 6.1791 .2000 .0864 .8000
.30 1.00 .1485 .3000 .9613 .7000
.30 2.00 .7133 .3000 .3500 .7000
.30 5.00 2.9999 .3000 .1542 .7000
.30 10.00 7.2672 .3000 .0960 .7000
.40 1.00 .2750 .4000 .6630 .6000
.40 2.00 1.0217 .4000 .3000 .6000
.40 5.00 3.6555 .4000 .1494 .6000
.40 10.00 8.2955 .4000 .0974 .6000
.50 1.00 .4549 .5000 .4711 .5000
.50 2.00 1.3863 .5000 .2500 .5000
.50 5.00 4.3515 .5000 .1370 .5000
.50 10.00 9.3418 .5000 .0929 .5000
.60 1.00 .7083 .6000 .3326 .4000
.60 2.00 1.8326 .6000 .2000 .4000
.60 5.00 5.1319 .6000 .1188 .4000
.60 10.00 10.4732 .6000 .0833 .4000
.70 1.00 1.0742 .7000 .2250 .3000
.70 2.00 2.4079 .7000 .1500 .3000
.70 5.00 6.0644 .7000 .0957 .3000
.70 10.00 11.7807 .7000 .0694 .3000
.80 1.00 1.6424 .8000 .1369 .2000
.80 2.00 3.2189 .8000 .1000 .2000
.80 5.00 7.2893 .8000 .0684 .2000
.80 10.00 13.4420 .8000 .0512 .2000
.90 1.00 2.7055 .9000 .0627 .1000
.90 2.00 4.6052 .9000 .0500 .1000
.90 5.00 9.2364 .9000 .0368 .1000
.90 10.00 15.9872 .9000 .0287 .1000
.99 1.00 6.6349 .9900 .0056 .0100
.99 2.00 9.2103 .9900 .0050 .0100
.99 5.00 15.0863 .9900 .0041 .0100
.99 10.00 23.2093 .9900 .0034 .0100
_ATEOF
cat >chisq.sps <<'_ATEOF'
DATA LIST LIST FILE='chisq.in' NOTABLE SKIP=1
/P df Xx Xcdf Xpdf Xsig.
NUMERIC x cdf pdf sig (F10.4).
COMPUTE x = IDF.chisq(P, df).
COMPUTE cdf = cdf.chisq(x, df).
COMPUTE pdf = pdf.chisq(x, df).
COMPUTE sig = sig.chisq(x, df).
DO IF $CASENUM = 1.
PRINT OUTFILE='chisq.out'/" P df x cdf pdf sig ".
END IF.
PRINT OUTFILE='chisq.out'/P df x cdf pdf sig.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/randist.at:930: pspp -O format=csv chisq.sps"
at_fn_check_prepare_trace "randist.at:930"
( $at_check_trace; pspp -O format=csv chisq.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:930"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/randist.at:930: \$PERL compare.pl chisq.in chisq.out"
at_fn_check_prepare_dynamic "$PERL compare.pl chisq.in chisq.out" "randist.at:930"
( $at_check_trace; $PERL compare.pl chisq.in chisq.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:930"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1001
#AT_START_1002
at_fn_group_banner 1002 'randist.at:978' \
"random distributions -- exp" " " 128
at_xfail=no
(
$as_echo "1002. $at_setup_line: testing $at_desc ..."
$at_traceon
randist_compare
cat >exp.in <<'_ATEOF'
P a x cdf pdf
.01 1.00 .0101 .0100 .9900
.01 2.00 .0050 .0100 1.9800
.01 5.00 .0020 .0100 4.9500
.01 10.00 .0010 .0100 9.9000
.10 1.00 .1054 .1000 .9000
.10 2.00 .0527 .1000 1.8000
.10 5.00 .0211 .1000 4.5000
.10 10.00 .0105 .1000 9.0000
.20 1.00 .2231 .2000 .8000
.20 2.00 .1116 .2000 1.6000
.20 5.00 .0446 .2000 4.0000
.20 10.00 .0223 .2000 8.0000
.30 1.00 .3567 .3000 .7000
.30 2.00 .1783 .3000 1.4000
.30 5.00 .0713 .3000 3.5000
.30 10.00 .0357 .3000 7.0000
.40 1.00 .5108 .4000 .6000
.40 2.00 .2554 .4000 1.2000
.40 5.00 .1022 .4000 3.0000
.40 10.00 .0511 .4000 6.0000
.50 1.00 .6931 .5000 .5000
.50 2.00 .3466 .5000 1.0000
.50 5.00 .1386 .5000 2.5000
.50 10.00 .0693 .5000 5.0000
.60 1.00 .9163 .6000 .4000
.60 2.00 .4581 .6000 .8000
.60 5.00 .1833 .6000 2.0000
.60 10.00 .0916 .6000 4.0000
.70 1.00 1.2040 .7000 .3000
.70 2.00 .6020 .7000 .6000
.70 5.00 .2408 .7000 1.5000
.70 10.00 .1204 .7000 3.0000
.80 1.00 1.6094 .8000 .2000
.80 2.00 .8047 .8000 .4000
.80 5.00 .3219 .8000 1.0000
.80 10.00 .1609 .8000 2.0000
.90 1.00 2.3026 .9000 .1000
.90 2.00 1.1513 .9000 .2000
.90 5.00 .4605 .9000 .5000
.90 10.00 .2303 .9000 1.0000
.99 1.00 4.6052 .9900 .0100
.99 2.00 2.3026 .9900 .0200
.99 5.00 .9210 .9900 .0500
.99 10.00 .4605 .9900 .1000
_ATEOF
cat >exp.sps <<'_ATEOF'
DATA LIST LIST FILE='exp.in' NOTABLE SKIP=1
/P a Xx Xcdf Xpdf.
NUMERIC x cdf pdf (F10.4).
COMPUTE x = IDF.exp(P, a).
COMPUTE cdf = cdf.exp(x, a).
COMPUTE pdf = pdf.exp(x, a).
DO IF $CASENUM = 1.
PRINT OUTFILE='exp.out'/" P a x cdf pdf ".
END IF.
PRINT OUTFILE='exp.out'/P a x cdf pdf.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/randist.at:978: pspp -O format=csv exp.sps"
at_fn_check_prepare_trace "randist.at:978"
( $at_check_trace; pspp -O format=csv exp.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:978"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/randist.at:978: \$PERL compare.pl exp.in exp.out"
at_fn_check_prepare_dynamic "$PERL compare.pl exp.in exp.out" "randist.at:978"
( $at_check_trace; $PERL compare.pl exp.in exp.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:978"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1002
#AT_START_1003
at_fn_group_banner 1003 'randist.at:1026' \
"random distributions -- f" " " 128
at_xfail=no
(
$as_echo "1003. $at_setup_line: testing $at_desc ..."
$at_traceon
randist_compare
cat >f.in <<'_ATEOF'
P df1 df2 x cdf pdf
.01 1.00 1.00 .0002 .0100 20.2576
.01 1.00 2.00 .0002 .0100 24.9950
.01 1.00 5.00 .0002 .0100 28.8162
.01 1.00 10.00 .0002 .0100 30.2774
.01 2.00 1.00 .0102 .0100 .9703
.01 2.00 2.00 .0101 .0100 .9801
.01 2.00 5.00 .0101 .0100 .9860
.01 2.00 10.00 .0101 .0100 .9880
.01 5.00 1.00 .0615 .0100 .3238
.01 5.00 2.00 .0753 .0100 .2793
.01 5.00 5.00 .0912 .0100 .2417
.01 5.00 10.00 .0995 .0100 .2261
.01 10.00 1.00 .0996 .0100 .2704
.01 10.00 2.00 .1323 .0100 .2275
.01 10.00 5.00 .1774 .0100 .1907
.01 10.00 10.00 .2062 .0100 .1747
.10 1.00 1.00 .0251 .1000 1.9605
.10 1.00 2.00 .0202 .1000 2.4503
.10 1.00 5.00 .0175 .1000 2.8421
.10 1.00 10.00 .0166 .1000 2.9915
.10 2.00 1.00 .1173 .1000 .7290
.10 2.00 2.00 .1111 .1000 .8100
.10 2.00 5.00 .1076 .1000 .8629
.10 2.00 10.00 .1065 .1000 .8812
.10 5.00 1.00 .2463 .1000 .5220
.10 5.00 2.00 .2646 .1000 .5687
.10 5.00 5.00 .2896 .1000 .5934
.10 5.00 10.00 .3033 .1000 .6006
.10 10.00 1.00 .3044 .1000 .4857
.10 10.00 2.00 .3419 .1000 .5396
.10 10.00 5.00 .3966 .1000 .5816
.10 10.00 10.00 .4306 .1000 .6031
.20 1.00 1.00 .1056 .2000 .8861
.20 1.00 2.00 .0833 .2000 1.1520
.20 1.00 5.00 .0714 .2000 1.3616
.20 1.00 10.00 .0677 .2000 1.4410
.20 2.00 1.00 .2812 .2000 .5120
.20 2.00 2.00 .2500 .2000 .6400
.20 2.00 5.00 .2334 .2000 .7317
.20 2.00 10.00 .2282 .2000 .7651
.20 5.00 1.00 .4591 .2000 .4124
.20 5.00 2.00 .4426 .2000 .5362
.20 5.00 5.00 .4489 .2000 .6397
.20 5.00 10.00 .4563 .2000 .6842
.20 10.00 1.00 .5311 .2000 .3893
.20 10.00 2.00 .5267 .2000 .5225
.20 10.00 5.00 .5547 .2000 .6584
.20 10.00 10.00 .5775 .2000 .7343
.30 1.00 1.00 .2596 .3000 .4960
.30 1.00 2.00 .1978 .3000 .6901
.30 1.00 5.00 .1667 .3000 .8428
.30 1.00 10.00 .1573 .3000 .9004
.30 2.00 1.00 .5204 .3000 .3430
.30 2.00 2.00 .4286 .3000 .4900
.30 2.00 5.00 .3834 .3000 .6069
.30 2.00 10.00 .3697 .3000 .6518
.30 5.00 1.00 .7486 .3000 .2880
.30 5.00 2.00 .6466 .3000 .4433
.30 5.00 5.00 .6094 .3000 .5984
.30 5.00 10.00 .6026 .3000 .6729
.30 10.00 1.00 .8370 .3000 .2732
.30 10.00 2.00 .7346 .3000 .4370
.30 10.00 5.00 .7085 .3000 .6313
.30 10.00 10.00 .7112 .3000 .7487
.40 1.00 1.00 .5279 .4000 .2868
.40 1.00 2.00 .3810 .4000 .4410
.40 1.00 5.00 .3130 .4000 .5656
.40 1.00 10.00 .2933 .4000 .6129
.40 2.00 1.00 .8889 .4000 .2160
.40 2.00 2.00 .6667 .4000 .3600
.40 2.00 5.00 .5668 .4000 .4891
.40 2.00 10.00 .5378 .4000 .5417
.40 5.00 1.00 1.1826 .4000 .1847
.40 5.00 2.00 .9035 .4000 .3396
.40 5.00 5.00 .7879 .4000 .5199
.40 5.00 10.00 .7573 .4000 .6147
.40 10.00 1.00 1.2941 .4000 .1755
.40 10.00 2.00 .9944 .4000 .3368
.40 10.00 5.00 .8763 .4000 .5572
.40 10.00 10.00 .8484 .4000 .7011
.50 1.00 1.00 1.0000 .5000 .1592
.50 1.00 2.00 .6667 .5000 .2813
.50 1.00 5.00 .5281 .5000 .3865
.50 1.00 10.00 .4897 .5000 .4274
.50 2.00 1.00 1.5000 .5000 .1250
.50 2.00 2.00 1.0000 .5000 .2500
.50 2.00 5.00 .7988 .5000 .3789
.50 2.00 10.00 .7435 .5000 .4353
.50 5.00 1.00 1.8937 .5000 .1078
.50 5.00 2.00 1.2519 .5000 .2418
.50 5.00 5.00 1.0000 .5000 .4244
.50 5.00 10.00 .9319 .5000 .5295
.50 10.00 1.00 2.0419 .5000 .1025
.50 10.00 2.00 1.3450 .5000 .2406
.50 10.00 5.00 1.0730 .5000 .4599
.50 10.00 10.00 1.0000 .5000 .6152
.60 1.00 1.00 1.8944 .6000 .0799
.60 1.00 2.00 1.1250 .6000 .1707
.60 1.00 5.00 .8456 .6000 .2583
.60 1.00 10.00 .7727 .6000 .2939
.60 2.00 1.00 2.6250 .6000 .0640
.60 2.00 2.00 1.5000 .6000 .1600
.60 2.00 5.00 1.1067 .6000 .2773
.60 2.00 10.00 1.0056 .6000 .3330
.60 5.00 1.00 3.1953 .6000 .0554
.60 5.00 2.00 1.7644 .6000 .1571
.60 5.00 5.00 1.2692 .6000 .3227
.60 5.00 10.00 1.1412 .6000 .4278
.60 10.00 1.00 3.4100 .6000 .0527
.60 10.00 2.00 1.8593 .6000 .1567
.60 10.00 5.00 1.3204 .6000 .3526
.60 10.00 10.00 1.1787 .6000 .5047
.70 1.00 1.00 3.8518 .7000 .0334
.70 1.00 2.00 1.9216 .7000 .0929
.70 1.00 5.00 1.3358 .7000 .1614
.70 1.00 10.00 1.1948 .7000 .1914
.70 2.00 1.00 5.0556 .7000 .0270
.70 2.00 2.00 2.3333 .7000 .0900
.70 2.00 5.00 1.5466 .7000 .1853
.70 2.00 10.00 1.3613 .7000 .2358
.70 5.00 1.00 6.0006 .7000 .0234
.70 5.00 2.00 2.6084 .7000 .0892
.70 5.00 5.00 1.6410 .7000 .2222
.70 5.00 10.00 1.4114 .7000 .3169
.70 10.00 1.00 6.3579 .7000 .0223
.70 10.00 2.00 2.7049 .7000 .0891
.70 10.00 5.00 1.6595 .7000 .2443
.70 10.00 10.00 1.4061 .7000 .3787
.80 1.00 1.00 9.4721 .8000 .0099
.80 1.00 2.00 3.5556 .8000 .0405
.80 1.00 5.00 2.1782 .8000 .0869
.80 1.00 10.00 1.8829 .8000 .1098
.80 2.00 1.00 12.0000 .8000 .0080
.80 2.00 2.00 4.0000 .8000 .0400
.80 2.00 5.00 2.2591 .8000 .1051
.80 2.00 10.00 1.8986 .8000 .1450
.80 5.00 1.00 14.0084 .8000 .0069
.80 5.00 2.00 4.2844 .8000 .0399
.80 5.00 5.00 2.2275 .8000 .1289
.80 5.00 10.00 1.8027 .8000 .2026
.80 10.00 1.00 14.7719 .8000 .0066
.80 10.00 2.00 4.3822 .8000 .0398
.80 10.00 5.00 2.1914 .8000 .1425
.80 10.00 10.00 1.7316 .8000 .2449
.90 1.00 1.00 39.8635 .9000 .0012
.90 1.00 2.00 8.5263 .9000 .0100
.90 1.00 5.00 4.0604 .9000 .0317
.90 1.00 10.00 3.2850 .9000 .0450
.90 2.00 1.00 49.5000 .9000 .0010
.90 2.00 2.00 9.0000 .9000 .0100
.90 2.00 5.00 3.7797 .9000 .0398
.90 2.00 10.00 2.9245 .9000 .0631
.90 5.00 1.00 57.2401 .9000 .0009
.90 5.00 2.00 9.2926 .9000 .0100
.90 5.00 5.00 3.4530 .9000 .0498
.90 5.00 10.00 2.5216 .9000 .0915
.90 10.00 1.00 60.1950 .9000 .0008
.90 10.00 2.00 9.3916 .9000 .0100
.90 10.00 5.00 3.2974 .9000 .0552
.90 10.00 10.00 2.3226 .9000 .1118
.99 1.00 1.00 4052.1807 .9900 .0000
.99 1.00 2.00 98.5025 .9900 .0001
.99 1.00 5.00 16.2582 .9900 .0012
.99 1.00 10.00 10.0443 .9900 .0027
.99 2.00 1.00 4999.5000 .9900 .0000
.99 2.00 2.00 99.0000 .9900 .0001
.99 2.00 5.00 13.2739 .9900 .0016
.99 2.00 10.00 7.5594 .9900 .0040
.99 5.00 1.00 5763.6496 .9900 .0000
.99 5.00 2.00 99.2993 .9900 .0001
.99 5.00 5.00 10.9670 .9900 .0020
.99 5.00 10.00 5.6363 .9900 .0060
.99 10.00 1.00 6055.8467 .9900 .0000
.99 10.00 2.00 99.3992 .9900 .0001
.99 10.00 5.00 10.0510 .9900 .0022
.99 10.00 10.00 4.8491 .9900 .0074
_ATEOF
cat >f.sps <<'_ATEOF'
DATA LIST LIST FILE='f.in' NOTABLE SKIP=1
/P df1 df2 Xx Xcdf Xpdf.
NUMERIC x cdf pdf (F10.4).
COMPUTE x = IDF.f(P, df1, df2).
COMPUTE cdf = cdf.f(x, df1, df2).
COMPUTE pdf = pdf.f(x, df1, df2).
DO IF $CASENUM = 1.
PRINT OUTFILE='f.out'/" P df1 df2 x cdf pdf ".
END IF.
PRINT OUTFILE='f.out'/P df1 df2 x cdf pdf.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/randist.at:1026: pspp -O format=csv f.sps"
at_fn_check_prepare_trace "randist.at:1026"
( $at_check_trace; pspp -O format=csv f.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:1026"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/randist.at:1026: \$PERL compare.pl f.in f.out"
at_fn_check_prepare_dynamic "$PERL compare.pl f.in f.out" "randist.at:1026"
( $at_check_trace; $PERL compare.pl f.in f.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:1026"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1003
#AT_START_1004
at_fn_group_banner 1004 'randist.at:1206' \
"random distributions -- gamma" " " 128
at_xfail=no
(
$as_echo "1004. $at_setup_line: testing $at_desc ..."
$at_traceon
randist_compare
cat >gamma.in <<'_ATEOF'
P a b x cdf pdf
.01 .50 -10.00 . . .
.01 .50 -5.00 . . .
.01 .50 .00 . . .
.01 .50 5.00 .0000 .0100 318.2766
.01 .50 10.00 .0000 .0100 636.5531
.01 1.00 -10.00 . . .
.01 1.00 -5.00 . . .
.01 1.00 .00 . . .
.01 1.00 5.00 .0020 .0100 4.9500
.01 1.00 10.00 .0010 .0100 9.9000
.01 2.00 -10.00 . . .
.01 2.00 -5.00 . . .
.01 2.00 .00 . . .
.01 2.00 5.00 .0297 .0100 .6402
.01 2.00 10.00 .0149 .0100 1.2805
.01 5.00 -10.00 . . .
.01 5.00 -5.00 . . .
.01 5.00 .00 . . .
.01 5.00 5.00 .2558 .0100 .1552
.01 5.00 10.00 .1279 .0100 .3104
.10 .50 -10.00 . . .
.10 .50 -5.00 . . .
.10 .50 .00 . . .
.10 .50 5.00 .0016 .1000 31.4977
.10 .50 10.00 .0008 .1000 62.9955
.10 1.00 -10.00 . . .
.10 1.00 -5.00 . . .
.10 1.00 .00 . . .
.10 1.00 5.00 .0211 .1000 4.5000
.10 1.00 10.00 .0105 .1000 9.0000
.10 2.00 -10.00 . . .
.10 2.00 -5.00 . . .
.10 2.00 .00 . . .
.10 2.00 5.00 .1064 .1000 1.5623
.10 2.00 10.00 .0532 .1000 3.1246
.10 5.00 -10.00 . . .
.10 5.00 -5.00 . . .
.10 5.00 .00 . . .
.10 5.00 5.00 .4865 .1000 .6406
.10 5.00 10.00 .2433 .1000 1.2812
.20 .50 -10.00 . . .
.20 .50 -5.00 . . .
.20 .50 .00 . . .
.20 .50 5.00 .0064 .2000 15.2495
.20 .50 10.00 .0032 .2000 30.4991
.20 1.00 -10.00 . . .
.20 1.00 -5.00 . . .
.20 1.00 .00 . . .
.20 1.00 5.00 .0446 .2000 4.0000
.20 1.00 10.00 .0223 .2000 8.0000
.20 2.00 -10.00 . . .
.20 2.00 -5.00 . . .
.20 2.00 .00 . . .
.20 2.00 5.00 .1649 .2000 1.8075
.20 2.00 10.00 .0824 .2000 3.6150
.20 5.00 -10.00 . . .
.20 5.00 -5.00 . . .
.20 5.00 .00 . . .
.20 5.00 5.00 .6179 .2000 .8641
.20 5.00 10.00 .3090 .2000 1.7282
.30 .50 -10.00 . . .
.30 .50 -5.00 . . .
.30 .50 .00 . . .
.30 .50 5.00 .0148 .3000 9.6128
.30 .50 10.00 .0074 .3000 19.2255
.30 1.00 -10.00 . . .
.30 1.00 -5.00 . . .
.30 1.00 .00 . . .
.30 1.00 5.00 .0713 .3000 3.5000
.30 1.00 10.00 .0357 .3000 7.0000
.30 2.00 -10.00 . . .
.30 2.00 -5.00 . . .
.30 2.00 .00 . . .
.30 2.00 5.00 .2195 .3000 1.8312
.30 2.00 10.00 .1097 .3000 3.6625
.30 5.00 -10.00 . . .
.30 5.00 -5.00 . . .
.30 5.00 .00 . . .
.30 5.00 5.00 .7267 .3000 .9595
.30 5.00 10.00 .3634 .3000 1.9190
.40 .50 -10.00 . . .
.40 .50 -5.00 . . .
.40 .50 .00 . . .
.40 .50 5.00 .0275 .4000 6.6303
.40 .50 10.00 .0137 .4000 13.2606
.40 1.00 -10.00 . . .
.40 1.00 -5.00 . . .
.40 1.00 .00 . . .
.40 1.00 5.00 .1022 .4000 3.0000
.40 1.00 10.00 .0511 .4000 6.0000
.40 2.00 -10.00 . . .
.40 2.00 -5.00 . . .
.40 2.00 .00 . . .
.40 2.00 5.00 .2753 .4000 1.7376
.40 2.00 10.00 .1376 .4000 3.4752
.40 5.00 -10.00 . . .
.40 5.00 -5.00 . . .
.40 5.00 .00 . . .
.40 5.00 5.00 .8295 .4000 .9742
.40 5.00 10.00 .4148 .4000 1.9485
.50 .50 -10.00 . . .
.50 .50 -5.00 . . .
.50 .50 .00 . . .
.50 .50 5.00 .0455 .5000 4.7114
.50 .50 10.00 .0227 .5000 9.4227
.50 1.00 -10.00 . . .
.50 1.00 -5.00 . . .
.50 1.00 .00 . . .
.50 1.00 5.00 .1386 .5000 2.5000
.50 1.00 10.00 .0693 .5000 5.0000
.50 2.00 -10.00 . . .
.50 2.00 -5.00 . . .
.50 2.00 .00 . . .
.50 2.00 5.00 .3357 .5000 1.5666
.50 2.00 10.00 .1678 .5000 3.1332
.50 5.00 -10.00 . . .
.50 5.00 -5.00 . . .
.50 5.00 .00 . . .
.50 5.00 5.00 .9342 .5000 .9286
.50 5.00 10.00 .4671 .5000 1.8571
.60 .50 -10.00 . . .
.60 .50 -5.00 . . .
.60 .50 .00 . . .
.60 .50 5.00 .0708 .6000 3.3265
.60 .50 10.00 .0354 .6000 6.6529
.60 1.00 -10.00 . . .
.60 1.00 -5.00 . . .
.60 1.00 .00 . . .
.60 1.00 5.00 .1833 .6000 2.0000
.60 1.00 10.00 .0916 .6000 4.0000
.60 2.00 -10.00 . . .
.60 2.00 -5.00 . . .
.60 2.00 .00 . . .
.60 2.00 5.00 .4045 .6000 1.3383
.60 2.00 10.00 .2022 .6000 2.6765
.60 5.00 -10.00 . . .
.60 5.00 -5.00 . . .
.60 5.00 .00 . . .
.60 5.00 5.00 1.0473 .6000 .8332
.60 5.00 10.00 .5237 .6000 1.6663
.70 .50 -10.00 . . .
.70 .50 -5.00 . . .
.70 .50 .00 . . .
.70 .50 5.00 .1074 .7000 2.2496
.70 .50 10.00 .0537 .7000 4.4993
.70 1.00 -10.00 . . .
.70 1.00 -5.00 . . .
.70 1.00 .00 . . .
.70 1.00 5.00 .2408 .7000 1.5000
.70 1.00 10.00 .1204 .7000 3.0000
.70 2.00 -10.00 . . .
.70 2.00 -5.00 . . .
.70 2.00 .00 . . .
.70 2.00 5.00 .4878 .7000 1.0639
.70 2.00 10.00 .2439 .7000 2.1277
.70 5.00 -10.00 . . .
.70 5.00 -5.00 . . .
.70 5.00 .00 . . .
.70 5.00 5.00 1.1781 .7000 .6937
.70 5.00 10.00 .5890 .7000 1.3874
.80 .50 -10.00 . . .
.80 .50 -5.00 . . .
.80 .50 .00 . . .
.80 .50 5.00 .1642 .8000 1.3694
.80 .50 10.00 .0821 .8000 2.7388
.80 1.00 -10.00 . . .
.80 1.00 -5.00 . . .
.80 1.00 .00 . . .
.80 1.00 5.00 .3219 .8000 1.0000
.80 1.00 10.00 .1609 .8000 2.0000
.80 2.00 -10.00 . . .
.80 2.00 -5.00 . . .
.80 2.00 .00 . . .
.80 2.00 5.00 .5989 .8000 .7496
.80 2.00 10.00 .2994 .8000 1.4993
.80 5.00 -10.00 . . .
.80 5.00 -5.00 . . .
.80 5.00 .00 . . .
.80 5.00 5.00 1.3442 .8000 .5124
.80 5.00 10.00 .6721 .8000 1.0248
.90 .50 -10.00 . . .
.90 .50 -5.00 . . .
.90 .50 .00 . . .
.90 .50 5.00 .2706 .9000 .6270
.90 .50 10.00 .1353 .9000 1.2540
.90 1.00 -10.00 . . .
.90 1.00 -5.00 . . .
.90 1.00 .00 . . .
.90 1.00 5.00 .4605 .9000 .5000
.90 1.00 10.00 .2303 .9000 1.0000
.90 2.00 -10.00 . . .
.90 2.00 -5.00 . . .
.90 2.00 .00 . . .
.90 2.00 5.00 .7779 .9000 .3977
.90 2.00 10.00 .3890 .9000 .7955
.90 5.00 -10.00 . . .
.90 5.00 -5.00 . . .
.90 5.00 .00 . . .
.90 5.00 5.00 1.5987 .9000 .2872
.90 5.00 10.00 .7994 .9000 .5744
.99 .50 -10.00 . . .
.99 .50 -5.00 . . .
.99 .50 .00 . . .
.99 .50 5.00 .6635 .9900 .0561
.99 .50 10.00 .3317 .9900 .1123
.99 1.00 -10.00 . . .
.99 1.00 -5.00 . . .
.99 1.00 .00 . . .
.99 1.00 5.00 .9210 .9900 .0500
.99 1.00 10.00 .4605 .9900 .1000
.99 2.00 -10.00 . . .
.99 2.00 -5.00 . . .
.99 2.00 .00 . . .
.99 2.00 5.00 1.3277 .9900 .0435
.99 2.00 10.00 .6638 .9900 .0869
.99 5.00 -10.00 . . .
.99 5.00 -5.00 . . .
.99 5.00 .00 . . .
.99 5.00 5.00 2.3209 .9900 .0345
.99 5.00 10.00 1.1605 .9900 .0689
_ATEOF
cat >gamma.sps <<'_ATEOF'
DATA LIST LIST FILE='gamma.in' NOTABLE SKIP=1
/P a b Xx Xcdf Xpdf.
NUMERIC x cdf pdf (F10.4).
COMPUTE x = IDF.gamma(P, a, b).
COMPUTE cdf = cdf.gamma(x, a, b).
COMPUTE pdf = pdf.gamma(x, a, b).
DO IF $CASENUM = 1.
PRINT OUTFILE='gamma.out'/" P a b x cdf pdf ".
END IF.
PRINT OUTFILE='gamma.out'/P a b x cdf pdf.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/randist.at:1206: pspp -O format=csv gamma.sps"
at_fn_check_prepare_trace "randist.at:1206"
( $at_check_trace; pspp -O format=csv gamma.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:1206"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/randist.at:1206: \$PERL compare.pl gamma.in gamma.out"
at_fn_check_prepare_dynamic "$PERL compare.pl gamma.in gamma.out" "randist.at:1206"
( $at_check_trace; $PERL compare.pl gamma.in gamma.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:1206"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1004
#AT_START_1005
at_fn_group_banner 1005 'randist.at:1430' \
"random distributions -- laplace" " " 128
at_xfail=no
(
$as_echo "1005. $at_setup_line: testing $at_desc ..."
$at_traceon
randist_compare
cat >laplace.in <<'_ATEOF'
P a b x cdf pdf
.01 -10.00 .50 -11.9560 .0100 .0200
.01 -10.00 1.00 -13.9120 .0100 .0100
.01 -10.00 2.00 -17.8240 .0100 .0050
.01 -10.00 5.00 -29.5601 .0100 .0020
.01 -5.00 .50 -6.9560 .0100 .0200
.01 -5.00 1.00 -8.9120 .0100 .0100
.01 -5.00 2.00 -12.8240 .0100 .0050
.01 -5.00 5.00 -24.5601 .0100 .0020
.01 .00 .50 -1.9560 .0100 .0200
.01 .00 1.00 -3.9120 .0100 .0100
.01 .00 2.00 -7.8240 .0100 .0050
.01 .00 5.00 -19.5601 .0100 .0020
.01 5.00 .50 3.0440 .0100 .0200
.01 5.00 1.00 1.0880 .0100 .0100
.01 5.00 2.00 -2.8240 .0100 .0050
.01 5.00 5.00 -14.5601 .0100 .0020
.01 10.00 .50 8.0440 .0100 .0200
.01 10.00 1.00 6.0880 .0100 .0100
.01 10.00 2.00 2.1760 .0100 .0050
.01 10.00 5.00 -9.5601 .0100 .0020
.10 -10.00 .50 -10.8047 .1000 .2000
.10 -10.00 1.00 -11.6094 .1000 .1000
.10 -10.00 2.00 -13.2189 .1000 .0500
.10 -10.00 5.00 -18.0472 .1000 .0200
.10 -5.00 .50 -5.8047 .1000 .2000
.10 -5.00 1.00 -6.6094 .1000 .1000
.10 -5.00 2.00 -8.2189 .1000 .0500
.10 -5.00 5.00 -13.0472 .1000 .0200
.10 .00 .50 -.8047 .1000 .2000
.10 .00 1.00 -1.6094 .1000 .1000
.10 .00 2.00 -3.2189 .1000 .0500
.10 .00 5.00 -8.0472 .1000 .0200
.10 5.00 .50 4.1953 .1000 .2000
.10 5.00 1.00 3.3906 .1000 .1000
.10 5.00 2.00 1.7811 .1000 .0500
.10 5.00 5.00 -3.0472 .1000 .0200
.10 10.00 .50 9.1953 .1000 .2000
.10 10.00 1.00 8.3906 .1000 .1000
.10 10.00 2.00 6.7811 .1000 .0500
.10 10.00 5.00 1.9528 .1000 .0200
.20 -10.00 .50 -10.4581 .2000 .4000
.20 -10.00 1.00 -10.9163 .2000 .2000
.20 -10.00 2.00 -11.8326 .2000 .1000
.20 -10.00 5.00 -14.5815 .2000 .0400
.20 -5.00 .50 -5.4581 .2000 .4000
.20 -5.00 1.00 -5.9163 .2000 .2000
.20 -5.00 2.00 -6.8326 .2000 .1000
.20 -5.00 5.00 -9.5815 .2000 .0400
.20 .00 .50 -.4581 .2000 .4000
.20 .00 1.00 -.9163 .2000 .2000
.20 .00 2.00 -1.8326 .2000 .1000
.20 .00 5.00 -4.5815 .2000 .0400
.20 5.00 .50 4.5419 .2000 .4000
.20 5.00 1.00 4.0837 .2000 .2000
.20 5.00 2.00 3.1674 .2000 .1000
.20 5.00 5.00 .4185 .2000 .0400
.20 10.00 .50 9.5419 .2000 .4000
.20 10.00 1.00 9.0837 .2000 .2000
.20 10.00 2.00 8.1674 .2000 .1000
.20 10.00 5.00 5.4185 .2000 .0400
.30 -10.00 .50 -10.2554 .3000 .6000
.30 -10.00 1.00 -10.5108 .3000 .3000
.30 -10.00 2.00 -11.0217 .3000 .1500
.30 -10.00 5.00 -12.5541 .3000 .0600
.30 -5.00 .50 -5.2554 .3000 .6000
.30 -5.00 1.00 -5.5108 .3000 .3000
.30 -5.00 2.00 -6.0217 .3000 .1500
.30 -5.00 5.00 -7.5541 .3000 .0600
.30 .00 .50 -.2554 .3000 .6000
.30 .00 1.00 -.5108 .3000 .3000
.30 .00 2.00 -1.0217 .3000 .1500
.30 .00 5.00 -2.5541 .3000 .0600
.30 5.00 .50 4.7446 .3000 .6000
.30 5.00 1.00 4.4892 .3000 .3000
.30 5.00 2.00 3.9783 .3000 .1500
.30 5.00 5.00 2.4459 .3000 .0600
.30 10.00 .50 9.7446 .3000 .6000
.30 10.00 1.00 9.4892 .3000 .3000
.30 10.00 2.00 8.9783 .3000 .1500
.30 10.00 5.00 7.4459 .3000 .0600
.40 -10.00 .50 -10.1116 .4000 .8000
.40 -10.00 1.00 -10.2231 .4000 .4000
.40 -10.00 2.00 -10.4463 .4000 .2000
.40 -10.00 5.00 -11.1157 .4000 .0800
.40 -5.00 .50 -5.1116 .4000 .8000
.40 -5.00 1.00 -5.2231 .4000 .4000
.40 -5.00 2.00 -5.4463 .4000 .2000
.40 -5.00 5.00 -6.1157 .4000 .0800
.40 .00 .50 -.1116 .4000 .8000
.40 .00 1.00 -.2231 .4000 .4000
.40 .00 2.00 -.4463 .4000 .2000
.40 .00 5.00 -1.1157 .4000 .0800
.40 5.00 .50 4.8884 .4000 .8000
.40 5.00 1.00 4.7769 .4000 .4000
.40 5.00 2.00 4.5537 .4000 .2000
.40 5.00 5.00 3.8843 .4000 .0800
.40 10.00 .50 9.8884 .4000 .8000
.40 10.00 1.00 9.7769 .4000 .4000
.40 10.00 2.00 9.5537 .4000 .2000
.40 10.00 5.00 8.8843 .4000 .0800
.50 -10.00 .50 -10.0000 .5000 1.0000
.50 -10.00 1.00 -10.0000 .5000 .5000
.50 -10.00 2.00 -10.0000 .5000 .2500
.50 -10.00 5.00 -10.0000 .5000 .1000
.50 -5.00 .50 -5.0000 .5000 1.0000
.50 -5.00 1.00 -5.0000 .5000 .5000
.50 -5.00 2.00 -5.0000 .5000 .2500
.50 -5.00 5.00 -5.0000 .5000 .1000
.50 .00 .50 .0000 .5000 1.0000
.50 .00 1.00 .0000 .5000 .5000
.50 .00 2.00 .0000 .5000 .2500
.50 .00 5.00 .0000 .5000 .1000
.50 5.00 .50 5.0000 .5000 1.0000
.50 5.00 1.00 5.0000 .5000 .5000
.50 5.00 2.00 5.0000 .5000 .2500
.50 5.00 5.00 5.0000 .5000 .1000
.50 10.00 .50 10.0000 .5000 1.0000
.50 10.00 1.00 10.0000 .5000 .5000
.50 10.00 2.00 10.0000 .5000 .2500
.50 10.00 5.00 10.0000 .5000 .1000
.60 -10.00 .50 -9.8884 .6000 .8000
.60 -10.00 1.00 -9.7769 .6000 .4000
.60 -10.00 2.00 -9.5537 .6000 .2000
.60 -10.00 5.00 -8.8843 .6000 .0800
.60 -5.00 .50 -4.8884 .6000 .8000
.60 -5.00 1.00 -4.7769 .6000 .4000
.60 -5.00 2.00 -4.5537 .6000 .2000
.60 -5.00 5.00 -3.8843 .6000 .0800
.60 .00 .50 .1116 .6000 .8000
.60 .00 1.00 .2231 .6000 .4000
.60 .00 2.00 .4463 .6000 .2000
.60 .00 5.00 1.1157 .6000 .0800
.60 5.00 .50 5.1116 .6000 .8000
.60 5.00 1.00 5.2231 .6000 .4000
.60 5.00 2.00 5.4463 .6000 .2000
.60 5.00 5.00 6.1157 .6000 .0800
.60 10.00 .50 10.1116 .6000 .8000
.60 10.00 1.00 10.2231 .6000 .4000
.60 10.00 2.00 10.4463 .6000 .2000
.60 10.00 5.00 11.1157 .6000 .0800
.70 -10.00 .50 -9.7446 .7000 .6000
.70 -10.00 1.00 -9.4892 .7000 .3000
.70 -10.00 2.00 -8.9783 .7000 .1500
.70 -10.00 5.00 -7.4459 .7000 .0600
.70 -5.00 .50 -4.7446 .7000 .6000
.70 -5.00 1.00 -4.4892 .7000 .3000
.70 -5.00 2.00 -3.9783 .7000 .1500
.70 -5.00 5.00 -2.4459 .7000 .0600
.70 .00 .50 .2554 .7000 .6000
.70 .00 1.00 .5108 .7000 .3000
.70 .00 2.00 1.0217 .7000 .1500
.70 .00 5.00 2.5541 .7000 .0600
.70 5.00 .50 5.2554 .7000 .6000
.70 5.00 1.00 5.5108 .7000 .3000
.70 5.00 2.00 6.0217 .7000 .1500
.70 5.00 5.00 7.5541 .7000 .0600
.70 10.00 .50 10.2554 .7000 .6000
.70 10.00 1.00 10.5108 .7000 .3000
.70 10.00 2.00 11.0217 .7000 .1500
.70 10.00 5.00 12.5541 .7000 .0600
.80 -10.00 .50 -9.5419 .8000 .4000
.80 -10.00 1.00 -9.0837 .8000 .2000
.80 -10.00 2.00 -8.1674 .8000 .1000
.80 -10.00 5.00 -5.4185 .8000 .0400
.80 -5.00 .50 -4.5419 .8000 .4000
.80 -5.00 1.00 -4.0837 .8000 .2000
.80 -5.00 2.00 -3.1674 .8000 .1000
.80 -5.00 5.00 -.4185 .8000 .0400
.80 .00 .50 .4581 .8000 .4000
.80 .00 1.00 .9163 .8000 .2000
.80 .00 2.00 1.8326 .8000 .1000
.80 .00 5.00 4.5815 .8000 .0400
.80 5.00 .50 5.4581 .8000 .4000
.80 5.00 1.00 5.9163 .8000 .2000
.80 5.00 2.00 6.8326 .8000 .1000
.80 5.00 5.00 9.5815 .8000 .0400
.80 10.00 .50 10.4581 .8000 .4000
.80 10.00 1.00 10.9163 .8000 .2000
.80 10.00 2.00 11.8326 .8000 .1000
.80 10.00 5.00 14.5815 .8000 .0400
.90 -10.00 .50 -9.1953 .9000 .2000
.90 -10.00 1.00 -8.3906 .9000 .1000
.90 -10.00 2.00 -6.7811 .9000 .0500
.90 -10.00 5.00 -1.9528 .9000 .0200
.90 -5.00 .50 -4.1953 .9000 .2000
.90 -5.00 1.00 -3.3906 .9000 .1000
.90 -5.00 2.00 -1.7811 .9000 .0500
.90 -5.00 5.00 3.0472 .9000 .0200
.90 .00 .50 .8047 .9000 .2000
.90 .00 1.00 1.6094 .9000 .1000
.90 .00 2.00 3.2189 .9000 .0500
.90 .00 5.00 8.0472 .9000 .0200
.90 5.00 .50 5.8047 .9000 .2000
.90 5.00 1.00 6.6094 .9000 .1000
.90 5.00 2.00 8.2189 .9000 .0500
.90 5.00 5.00 13.0472 .9000 .0200
.90 10.00 .50 10.8047 .9000 .2000
.90 10.00 1.00 11.6094 .9000 .1000
.90 10.00 2.00 13.2189 .9000 .0500
.90 10.00 5.00 18.0472 .9000 .0200
.99 -10.00 .50 -8.0440 .9900 .0200
.99 -10.00 1.00 -6.0880 .9900 .0100
.99 -10.00 2.00 -2.1760 .9900 .0050
.99 -10.00 5.00 9.5601 .9900 .0020
.99 -5.00 .50 -3.0440 .9900 .0200
.99 -5.00 1.00 -1.0880 .9900 .0100
.99 -5.00 2.00 2.8240 .9900 .0050
.99 -5.00 5.00 14.5601 .9900 .0020
.99 .00 .50 1.9560 .9900 .0200
.99 .00 1.00 3.9120 .9900 .0100
.99 .00 2.00 7.8240 .9900 .0050
.99 .00 5.00 19.5601 .9900 .0020
.99 5.00 .50 6.9560 .9900 .0200
.99 5.00 1.00 8.9120 .9900 .0100
.99 5.00 2.00 12.8240 .9900 .0050
.99 5.00 5.00 24.5601 .9900 .0020
.99 10.00 .50 11.9560 .9900 .0200
.99 10.00 1.00 13.9120 .9900 .0100
.99 10.00 2.00 17.8240 .9900 .0050
.99 10.00 5.00 29.5601 .9900 .0020
_ATEOF
cat >laplace.sps <<'_ATEOF'
DATA LIST LIST FILE='laplace.in' NOTABLE SKIP=1
/P a b Xx Xcdf Xpdf.
NUMERIC x cdf pdf (F10.4).
COMPUTE x = IDF.laplace(P, a, b).
COMPUTE cdf = cdf.laplace(x, a, b).
COMPUTE pdf = pdf.laplace(x, a, b).
DO IF $CASENUM = 1.
PRINT OUTFILE='laplace.out'/" P a b x cdf pdf ".
END IF.
PRINT OUTFILE='laplace.out'/P a b x cdf pdf.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/randist.at:1430: pspp -O format=csv laplace.sps"
at_fn_check_prepare_trace "randist.at:1430"
( $at_check_trace; pspp -O format=csv laplace.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:1430"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/randist.at:1430: \$PERL compare.pl laplace.in laplace.out"
at_fn_check_prepare_dynamic "$PERL compare.pl laplace.in laplace.out" "randist.at:1430"
( $at_check_trace; $PERL compare.pl laplace.in laplace.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:1430"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1005
#AT_START_1006
at_fn_group_banner 1006 'randist.at:1654' \
"random distributions -- logistic" " " 128
at_xfail=no
(
$as_echo "1006. $at_setup_line: testing $at_desc ..."
$at_traceon
randist_compare
cat >logistic.in <<'_ATEOF'
P a b x cdf pdf
.01 -10.00 .50 -12.2976 .0100 .0198
.01 -10.00 1.00 -14.5951 .0100 .0099
.01 -10.00 2.00 -19.1902 .0100 .0049
.01 -10.00 5.00 -32.9756 .0100 .0020
.01 -5.00 .50 -7.2976 .0100 .0198
.01 -5.00 1.00 -9.5951 .0100 .0099
.01 -5.00 2.00 -14.1902 .0100 .0050
.01 -5.00 5.00 -27.9756 .0100 .0020
.01 .00 .50 -2.2976 .0100 .0198
.01 .00 1.00 -4.5951 .0100 .0099
.01 .00 2.00 -9.1902 .0100 .0050
.01 .00 5.00 -22.9756 .0100 .0020
.01 5.00 .50 2.7024 .0100 .0198
.01 5.00 1.00 .4049 .0100 .0099
.01 5.00 2.00 -4.1902 .0100 .0050
.01 5.00 5.00 -17.9756 .0100 .0020
.01 10.00 .50 7.7024 .0100 .0198
.01 10.00 1.00 5.4049 .0100 .0099
.01 10.00 2.00 .8098 .0100 .0050
.01 10.00 5.00 -12.9756 .0100 .0020
.10 -10.00 .50 -11.0986 .1000 .1800
.10 -10.00 1.00 -12.1972 .1000 .0900
.10 -10.00 2.00 -14.3944 .1000 .0450
.10 -10.00 5.00 -20.9861 .1000 .0180
.10 -5.00 .50 -6.0986 .1000 .1800
.10 -5.00 1.00 -7.1972 .1000 .0900
.10 -5.00 2.00 -9.3944 .1000 .0450
.10 -5.00 5.00 -15.9861 .1000 .0180
.10 .00 .50 -1.0986 .1000 .1800
.10 .00 1.00 -2.1972 .1000 .0900
.10 .00 2.00 -4.3944 .1000 .0450
.10 .00 5.00 -10.9861 .1000 .0180
.10 5.00 .50 3.9014 .1000 .1800
.10 5.00 1.00 2.8028 .1000 .0900
.10 5.00 2.00 .6056 .1000 .0450
.10 5.00 5.00 -5.9861 .1000 .0180
.10 10.00 .50 8.9014 .1000 .1800
.10 10.00 1.00 7.8028 .1000 .0900
.10 10.00 2.00 5.6056 .1000 .0450
.10 10.00 5.00 -.9861 .1000 .0180
.20 -10.00 .50 -10.6931 .2000 .3200
.20 -10.00 1.00 -11.3863 .2000 .1600
.20 -10.00 2.00 -12.7726 .2000 .0800
.20 -10.00 5.00 -16.9315 .2000 .0320
.20 -5.00 .50 -5.6931 .2000 .3200
.20 -5.00 1.00 -6.3863 .2000 .1600
.20 -5.00 2.00 -7.7726 .2000 .0800
.20 -5.00 5.00 -11.9315 .2000 .0320
.20 .00 .50 -.6931 .2000 .3200
.20 .00 1.00 -1.3863 .2000 .1600
.20 .00 2.00 -2.7726 .2000 .0800
.20 .00 5.00 -6.9315 .2000 .0320
.20 5.00 .50 4.3069 .2000 .3200
.20 5.00 1.00 3.6137 .2000 .1600
.20 5.00 2.00 2.2274 .2000 .0800
.20 5.00 5.00 -1.9315 .2000 .0320
.20 10.00 .50 9.3069 .2000 .3200
.20 10.00 1.00 8.6137 .2000 .1600
.20 10.00 2.00 7.2274 .2000 .0800
.20 10.00 5.00 3.0685 .2000 .0320
.30 -10.00 .50 -10.4236 .3000 .4200
.30 -10.00 1.00 -10.8473 .3000 .2100
.30 -10.00 2.00 -11.6946 .3000 .1050
.30 -10.00 5.00 -14.2365 .3000 .0420
.30 -5.00 .50 -5.4236 .3000 .4200
.30 -5.00 1.00 -5.8473 .3000 .2100
.30 -5.00 2.00 -6.6946 .3000 .1050
.30 -5.00 5.00 -9.2365 .3000 .0420
.30 .00 .50 -.4236 .3000 .4200
.30 .00 1.00 -.8473 .3000 .2100
.30 .00 2.00 -1.6946 .3000 .1050
.30 .00 5.00 -4.2365 .3000 .0420
.30 5.00 .50 4.5764 .3000 .4200
.30 5.00 1.00 4.1527 .3000 .2100
.30 5.00 2.00 3.3054 .3000 .1050
.30 5.00 5.00 .7635 .3000 .0420
.30 10.00 .50 9.5764 .3000 .4200
.30 10.00 1.00 9.1527 .3000 .2100
.30 10.00 2.00 8.3054 .3000 .1050
.30 10.00 5.00 5.7635 .3000 .0420
.40 -10.00 .50 -10.2027 .4000 .4800
.40 -10.00 1.00 -10.4055 .4000 .2400
.40 -10.00 2.00 -10.8109 .4000 .1200
.40 -10.00 5.00 -12.0273 .4000 .0480
.40 -5.00 .50 -5.2027 .4000 .4800
.40 -5.00 1.00 -5.4055 .4000 .2400
.40 -5.00 2.00 -5.8109 .4000 .1200
.40 -5.00 5.00 -7.0273 .4000 .0480
.40 .00 .50 -.2027 .4000 .4800
.40 .00 1.00 -.4055 .4000 .2400
.40 .00 2.00 -.8109 .4000 .1200
.40 .00 5.00 -2.0273 .4000 .0480
.40 5.00 .50 4.7973 .4000 .4800
.40 5.00 1.00 4.5945 .4000 .2400
.40 5.00 2.00 4.1891 .4000 .1200
.40 5.00 5.00 2.9727 .4000 .0480
.40 10.00 .50 9.7973 .4000 .4800
.40 10.00 1.00 9.5945 .4000 .2400
.40 10.00 2.00 9.1891 .4000 .1200
.40 10.00 5.00 7.9727 .4000 .0480
.50 -10.00 .50 -10.0000 .5000 .5000
.50 -10.00 1.00 -10.0000 .5000 .2500
.50 -10.00 2.00 -10.0000 .5000 .1250
.50 -10.00 5.00 -10.0000 .5000 .0500
.50 -5.00 .50 -5.0000 .5000 .5000
.50 -5.00 1.00 -5.0000 .5000 .2500
.50 -5.00 2.00 -5.0000 .5000 .1250
.50 -5.00 5.00 -5.0000 .5000 .0500
.50 .00 .50 .0000 .5000 .5000
.50 .00 1.00 .0000 .5000 .2500
.50 .00 2.00 .0000 .5000 .1250
.50 .00 5.00 .0000 .5000 .0500
.50 5.00 .50 5.0000 .5000 .5000
.50 5.00 1.00 5.0000 .5000 .2500
.50 5.00 2.00 5.0000 .5000 .1250
.50 5.00 5.00 5.0000 .5000 .0500
.50 10.00 .50 10.0000 .5000 .5000
.50 10.00 1.00 10.0000 .5000 .2500
.50 10.00 2.00 10.0000 .5000 .1250
.50 10.00 5.00 10.0000 .5000 .0500
.60 -10.00 .50 -9.7973 .6000 .4800
.60 -10.00 1.00 -9.5945 .6000 .2400
.60 -10.00 2.00 -9.1891 .6000 .1200
.60 -10.00 5.00 -7.9727 .6000 .0480
.60 -5.00 .50 -4.7973 .6000 .4800
.60 -5.00 1.00 -4.5945 .6000 .2400
.60 -5.00 2.00 -4.1891 .6000 .1200
.60 -5.00 5.00 -2.9727 .6000 .0480
.60 .00 .50 .2027 .6000 .4800
.60 .00 1.00 .4055 .6000 .2400
.60 .00 2.00 .8109 .6000 .1200
.60 .00 5.00 2.0273 .6000 .0480
.60 5.00 .50 5.2027 .6000 .4800
.60 5.00 1.00 5.4055 .6000 .2400
.60 5.00 2.00 5.8109 .6000 .1200
.60 5.00 5.00 7.0273 .6000 .0480
.60 10.00 .50 10.2027 .6000 .4800
.60 10.00 1.00 10.4055 .6000 .2400
.60 10.00 2.00 10.8109 .6000 .1200
.60 10.00 5.00 12.0273 .6000 .0480
.70 -10.00 .50 -9.5764 .7000 .4200
.70 -10.00 1.00 -9.1527 .7000 .2100
.70 -10.00 2.00 -8.3054 .7000 .1050
.70 -10.00 5.00 -5.7635 .7000 .0420
.70 -5.00 .50 -4.5764 .7000 .4200
.70 -5.00 1.00 -4.1527 .7000 .2100
.70 -5.00 2.00 -3.3054 .7000 .1050
.70 -5.00 5.00 -.7635 .7000 .0420
.70 .00 .50 .4236 .7000 .4200
.70 .00 1.00 .8473 .7000 .2100
.70 .00 2.00 1.6946 .7000 .1050
.70 .00 5.00 4.2365 .7000 .0420
.70 5.00 .50 5.4236 .7000 .4200
.70 5.00 1.00 5.8473 .7000 .2100
.70 5.00 2.00 6.6946 .7000 .1050
.70 5.00 5.00 9.2365 .7000 .0420
.70 10.00 .50 10.4236 .7000 .4200
.70 10.00 1.00 10.8473 .7000 .2100
.70 10.00 2.00 11.6946 .7000 .1050
.70 10.00 5.00 14.2365 .7000 .0420
.80 -10.00 .50 -9.3069 .8000 .3200
.80 -10.00 1.00 -8.6137 .8000 .1600
.80 -10.00 2.00 -7.2274 .8000 .0800
.80 -10.00 5.00 -3.0685 .8000 .0320
.80 -5.00 .50 -4.3069 .8000 .3200
.80 -5.00 1.00 -3.6137 .8000 .1600
.80 -5.00 2.00 -2.2274 .8000 .0800
.80 -5.00 5.00 1.9315 .8000 .0320
.80 .00 .50 .6931 .8000 .3200
.80 .00 1.00 1.3863 .8000 .1600
.80 .00 2.00 2.7726 .8000 .0800
.80 .00 5.00 6.9315 .8000 .0320
.80 5.00 .50 5.6931 .8000 .3200
.80 5.00 1.00 6.3863 .8000 .1600
.80 5.00 2.00 7.7726 .8000 .0800
.80 5.00 5.00 11.9315 .8000 .0320
.80 10.00 .50 10.6931 .8000 .3200
.80 10.00 1.00 11.3863 .8000 .1600
.80 10.00 2.00 12.7726 .8000 .0800
.80 10.00 5.00 16.9315 .8000 .0320
.90 -10.00 .50 -8.9014 .9000 .1800
.90 -10.00 1.00 -7.8028 .9000 .0900
.90 -10.00 2.00 -5.6056 .9000 .0450
.90 -10.00 5.00 .9861 .9000 .0180
.90 -5.00 .50 -3.9014 .9000 .1800
.90 -5.00 1.00 -2.8028 .9000 .0900
.90 -5.00 2.00 -.6056 .9000 .0450
.90 -5.00 5.00 5.9861 .9000 .0180
.90 .00 .50 1.0986 .9000 .1800
.90 .00 1.00 2.1972 .9000 .0900
.90 .00 2.00 4.3944 .9000 .0450
.90 .00 5.00 10.9861 .9000 .0180
.90 5.00 .50 6.0986 .9000 .1800
.90 5.00 1.00 7.1972 .9000 .0900
.90 5.00 2.00 9.3944 .9000 .0450
.90 5.00 5.00 15.9861 .9000 .0180
.90 10.00 .50 11.0986 .9000 .1800
.90 10.00 1.00 12.1972 .9000 .0900
.90 10.00 2.00 14.3944 .9000 .0450
.90 10.00 5.00 20.9861 .9000 .0180
.99 -10.00 .50 -7.7024 .9900 .0198
.99 -10.00 1.00 -5.4049 .9900 .0099
.99 -10.00 2.00 -.8098 .9900 .0050
.99 -10.00 5.00 12.9756 .9900 .0020
.99 -5.00 .50 -2.7024 .9900 .0198
.99 -5.00 1.00 -.4049 .9900 .0099
.99 -5.00 2.00 4.1902 .9900 .0050
.99 -5.00 5.00 17.9756 .9900 .0020
.99 .00 .50 2.2976 .9900 .0198
.99 .00 1.00 4.5951 .9900 .0099
.99 .00 2.00 9.1902 .9900 .0050
.99 .00 5.00 22.9756 .9900 .0020
.99 5.00 .50 7.2976 .9900 .0198
.99 5.00 1.00 9.5951 .9900 .0099
.99 5.00 2.00 14.1902 .9900 .0050
.99 5.00 5.00 27.9756 .9900 .0020
.99 10.00 .50 12.2976 .9900 .0198
.99 10.00 1.00 14.5951 .9900 .0099
.99 10.00 2.00 19.1902 .9900 .0050
.99 10.00 5.00 32.9756 .9900 .0020
_ATEOF
cat >logistic.sps <<'_ATEOF'
DATA LIST LIST FILE='logistic.in' NOTABLE SKIP=1
/P a b Xx Xcdf Xpdf.
NUMERIC x cdf pdf (F10.4).
COMPUTE x = IDF.logistic(P, a, b).
COMPUTE cdf = cdf.logistic(x, a, b).
COMPUTE pdf = pdf.logistic(x, a, b).
DO IF $CASENUM = 1.
PRINT OUTFILE='logistic.out'/" P a b x cdf pdf ".
END IF.
PRINT OUTFILE='logistic.out'/P a b x cdf pdf.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/randist.at:1654: pspp -O format=csv logistic.sps"
at_fn_check_prepare_trace "randist.at:1654"
( $at_check_trace; pspp -O format=csv logistic.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:1654"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/randist.at:1654: \$PERL compare.pl logistic.in logistic.out"
at_fn_check_prepare_dynamic "$PERL compare.pl logistic.in logistic.out" "randist.at:1654"
( $at_check_trace; $PERL compare.pl logistic.in logistic.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:1654"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1006
#AT_START_1007
at_fn_group_banner 1007 'randist.at:1878' \
"random distributions -- lnormal" " " 128
at_xfail=no
(
$as_echo "1007. $at_setup_line: testing $at_desc ..."
$at_traceon
randist_compare
cat >lnormal.in <<'_ATEOF'
P z s x cdf pdf
.01 .50 .50 .1562 .0100 .3412
.01 .50 1.00 .0488 .0100 .5459
.01 .50 2.00 .0048 .0100 2.7949
.01 .50 5.00 .0000 .0100 1200.5834
.01 1.00 .50 .3125 .0100 .1706
.01 1.00 1.00 .0977 .0100 .2729
.01 1.00 2.00 .0095 .0100 1.3975
.01 1.00 5.00 .0000 .0100 600.2917
.01 2.00 .50 .6250 .0100 .0853
.01 2.00 1.00 .1953 .0100 .1365
.01 2.00 2.00 .0191 .0100 .6987
.01 2.00 5.00 .0000 .0100 300.1459
.01 5.00 .50 1.5625 .0100 .0341
.01 5.00 1.00 .4883 .0100 .0546
.01 5.00 2.00 .0477 .0100 .2795
.01 5.00 5.00 .0000 .0100 120.0583
.10 .50 .50 .2634 .1000 1.3324
.10 .50 1.00 .1388 .1000 1.2644
.10 .50 2.00 .0385 .1000 2.2773
.10 .50 5.00 .0008 .1000 42.5782
.10 1.00 .50 .5269 .1000 .6662
.10 1.00 1.00 .2776 .1000 .6322
.10 1.00 2.00 .0771 .1000 1.1386
.10 1.00 5.00 .0016 .1000 21.2891
.10 2.00 .50 1.0538 .1000 .3331
.10 2.00 1.00 .5552 .1000 .3161
.10 2.00 2.00 .1541 .1000 .5693
.10 2.00 5.00 .0033 .1000 10.6445
.10 5.00 .50 2.6344 .1000 .1332
.10 5.00 1.00 1.3880 .1000 .1264
.10 5.00 2.00 .3853 .1000 .2277
.10 5.00 5.00 .0082 .1000 4.2578
.20 .50 .50 .3283 .2000 1.7057
.20 .50 1.00 .2155 .2000 1.2991
.20 .50 2.00 .0929 .2000 1.5070
.20 .50 5.00 .0074 .2000 7.5286
.20 1.00 .50 .6565 .2000 .8529
.20 1.00 1.00 .4310 .2000 .6495
.20 1.00 2.00 .1858 .2000 .7535
.20 1.00 5.00 .0149 .2000 3.7643
.20 2.00 .50 1.3130 .2000 .4264
.20 2.00 1.00 .8620 .2000 .3248
.20 2.00 2.00 .3715 .2000 .3768
.20 2.00 5.00 .0297 .2000 1.8822
.20 5.00 .50 3.2826 .2000 .1706
.20 5.00 1.00 2.1551 .2000 .1299
.20 5.00 2.00 .9289 .2000 .1507
.20 5.00 5.00 .0744 .2000 .7529
.30 .50 .50 .3847 .3000 1.8077
.30 .50 1.00 .2960 .3000 1.1748
.30 .50 2.00 .1752 .3000 .9924
.30 .50 5.00 .0363 .3000 1.9142
.30 1.00 .50 .7694 .3000 .9039
.30 1.00 1.00 .5919 .3000 .5874
.30 1.00 2.00 .3504 .3000 .4962
.30 1.00 5.00 .0727 .3000 .9571
.30 2.00 .50 1.5387 .3000 .4519
.30 2.00 1.00 1.1838 .3000 .2937
.30 2.00 2.00 .7007 .3000 .2481
.30 2.00 5.00 .1453 .3000 .4785
.30 5.00 .50 3.8468 .3000 .1808
.30 5.00 1.00 2.9596 .3000 .1175
.30 5.00 2.00 1.7518 .3000 .0992
.30 5.00 5.00 .3633 .3000 .1914
.40 .50 .50 .4405 .4000 1.7541
.40 .50 1.00 .3881 .4000 .9955
.40 .50 2.00 .3012 .4000 .6412
.40 .50 5.00 .1409 .4000 .5485
.40 1.00 .50 .8810 .4000 .8770
.40 1.00 1.00 .7762 .4000 .4977
.40 1.00 2.00 .6025 .4000 .3206
.40 1.00 5.00 .2817 .4000 .2742
.40 2.00 .50 1.7620 .4000 .4385
.40 2.00 1.00 1.5524 .4000 .2489
.40 2.00 2.00 1.2050 .4000 .1603
.40 2.00 5.00 .5635 .4000 .1371
.40 5.00 .50 4.4051 .4000 .1754
.40 5.00 1.00 3.8810 .4000 .0995
.40 5.00 2.00 3.0124 .4000 .0641
.40 5.00 5.00 1.4087 .4000 .0548
.50 .50 .50 .5000 .5000 1.5958
.50 .50 1.00 .5000 .5000 .7979
.50 .50 2.00 .5000 .5000 .3989
.50 .50 5.00 .5000 .5000 .1596
.50 1.00 .50 1.0000 .5000 .7979
.50 1.00 1.00 1.0000 .5000 .3989
.50 1.00 2.00 1.0000 .5000 .1995
.50 1.00 5.00 1.0000 .5000 .0798
.50 2.00 .50 2.0000 .5000 .3989
.50 2.00 1.00 2.0000 .5000 .1995
.50 2.00 2.00 2.0000 .5000 .0997
.50 2.00 5.00 2.0000 .5000 .0399
.50 5.00 .50 5.0000 .5000 .1596
.50 5.00 1.00 5.0000 .5000 .0798
.50 5.00 2.00 5.0000 .5000 .0399
.50 5.00 5.00 5.0000 .5000 .0160
.60 .50 .50 .5675 .6000 1.3615
.60 .50 1.00 .6442 .6000 .5998
.60 .50 2.00 .8299 .6000 .2328
.60 .50 5.00 1.7746 .6000 .0435
.60 1.00 .50 1.1350 .6000 .6808
.60 1.00 1.00 1.2883 .6000 .2999
.60 1.00 2.00 1.6598 .6000 .1164
.60 1.00 5.00 3.5492 .6000 .0218
.60 2.00 .50 2.2701 .6000 .3404
.60 2.00 1.00 2.5767 .6000 .1499
.60 2.00 2.00 3.3196 .6000 .0582
.60 2.00 5.00 7.0985 .6000 .0109
.60 5.00 .50 5.6752 .6000 .1362
.60 5.00 1.00 6.4417 .6000 .0600
.60 5.00 2.00 8.2990 .6000 .0233
.60 5.00 5.00 17.7462 .6000 .0044
.70 .50 .50 .6499 .7000 1.0700
.70 .50 1.00 .8447 .7000 .4116
.70 .50 2.00 1.4271 .7000 .1218
.70 .50 5.00 6.8816 .7000 .0101
.70 1.00 .50 1.2998 .7000 .5350
.70 1.00 1.00 1.6894 .7000 .2058
.70 1.00 2.00 2.8542 .7000 .0609
.70 1.00 5.00 13.7633 .7000 .0051
.70 2.00 .50 2.5996 .7000 .2675
.70 2.00 1.00 3.3789 .7000 .1029
.70 2.00 2.00 5.7085 .7000 .0305
.70 2.00 5.00 27.5265 .7000 .0025
.70 5.00 .50 6.4989 .7000 .1070
.70 5.00 1.00 8.4472 .7000 .0412
.70 5.00 2.00 14.2711 .7000 .0122
.70 5.00 5.00 68.8163 .7000 .0010
.80 .50 .50 .7616 .8000 .7352
.80 .50 1.00 1.1601 .8000 .2413
.80 .50 2.00 2.6915 .8000 .0520
.80 .50 5.00 33.6145 .8000 .0017
.80 1.00 .50 1.5232 .8000 .3676
.80 1.00 1.00 2.3201 .8000 .1207
.80 1.00 2.00 5.3830 .8000 .0260
.80 1.00 5.00 67.2291 .8000 .0008
.80 2.00 .50 3.0464 .8000 .1838
.80 2.00 1.00 4.6403 .8000 .0603
.80 2.00 2.00 10.7660 .8000 .0130
.80 2.00 5.00 134.4582 .8000 .0004
.80 5.00 .50 7.6160 .8000 .0735
.80 5.00 1.00 11.6006 .8000 .0241
.80 5.00 2.00 26.9149 .8000 .0052
.80 5.00 5.00 336.1455 .8000 .0002
.90 .50 .50 .9490 .9000 .3699
.90 .50 1.00 1.8011 .9000 .0974
.90 .50 2.00 6.4880 .9000 .0135
.90 .50 5.00 303.2661 .9000 .0001
.90 1.00 .50 1.8980 .9000 .1849
.90 1.00 1.00 3.6022 .9000 .0487
.90 1.00 2.00 12.9760 .9000 .0068
.90 1.00 5.00 606.5322 .9000 .0001
.90 2.00 .50 3.7959 .9000 .0925
.90 2.00 1.00 7.2044 .9000 .0244
.90 2.00 2.00 25.9520 .9000 .0034
.90 2.00 5.00 1213.0644 .9000 .0000
.90 5.00 .50 9.4898 .9000 .0370
.90 5.00 1.00 18.0111 .9000 .0097
.90 5.00 2.00 64.8801 .9000 .0014
.90 5.00 5.00 3032.6610 .9000 .0000
.99 .50 .50 1.6000 .9900 .0333
.99 .50 1.00 5.1202 .9900 .0052
.99 .50 2.00 52.4337 .9900 .0003
.99 .50 5.00 56308.0163 .9900 .0000
.99 1.00 .50 3.2001 .9900 .0167
.99 1.00 1.00 10.2405 .9900 .0026
.99 1.00 2.00 104.8673 .9900 .0001
.99 1.00 5.00 112616.033 .9900 .0000
.99 2.00 .50 6.4001 .9900 .0083
.99 2.00 1.00 20.4809 .9900 .0013
.99 2.00 2.00 209.7346 .9900 .0001
.99 2.00 5.00 225232.065 .9900 .0000
.99 5.00 .50 16.0004 .9900 .0033
.99 5.00 1.00 51.2024 .9900 .0005
.99 5.00 2.00 524.3365 .9900 .0000
.99 5.00 5.00 563080.163 .9900 .0000
_ATEOF
cat >lnormal.sps <<'_ATEOF'
DATA LIST LIST FILE='lnormal.in' NOTABLE SKIP=1
/P z s Xx Xcdf Xpdf.
NUMERIC x cdf pdf (F10.4).
COMPUTE x = IDF.lnormal(P, z, s).
COMPUTE cdf = cdf.lnormal(x, z, s).
COMPUTE pdf = pdf.lnormal(x, z, s).
DO IF $CASENUM = 1.
PRINT OUTFILE='lnormal.out'/" P z s x cdf pdf ".
END IF.
PRINT OUTFILE='lnormal.out'/P z s x cdf pdf.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/randist.at:1878: pspp -O format=csv lnormal.sps"
at_fn_check_prepare_trace "randist.at:1878"
( $at_check_trace; pspp -O format=csv lnormal.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:1878"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/randist.at:1878: \$PERL compare.pl lnormal.in lnormal.out"
at_fn_check_prepare_dynamic "$PERL compare.pl lnormal.in lnormal.out" "randist.at:1878"
( $at_check_trace; $PERL compare.pl lnormal.in lnormal.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:1878"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1007
#AT_START_1008
at_fn_group_banner 1008 'randist.at:2058' \
"random distributions -- normal" " " 128
at_xfail=no
(
$as_echo "1008. $at_setup_line: testing $at_desc ..."
$at_traceon
randist_compare
cat >normal.in <<'_ATEOF'
P u s x cdf pdf
.01 -10.00 .50 -11.1632 .0100 .0533
.01 -10.00 1.00 -12.3263 .0100 .0267
.01 -10.00 2.00 -14.6527 .0100 .0133
.01 -10.00 5.00 -21.6317 .0100 .0053
.01 -5.00 .50 -6.1632 .0100 .0533
.01 -5.00 1.00 -7.3263 .0100 .0267
.01 -5.00 2.00 -9.6527 .0100 .0133
.01 -5.00 5.00 -16.6317 .0100 .0053
.01 .00 .50 -1.1632 .0100 .0533
.01 .00 1.00 -2.3263 .0100 .0267
.01 .00 2.00 -4.6527 .0100 .0133
.01 .00 5.00 -11.6317 .0100 .0053
.01 5.00 .50 3.8368 .0100 .0533
.01 5.00 1.00 2.6737 .0100 .0267
.01 5.00 2.00 .3473 .0100 .0133
.01 5.00 5.00 -6.6317 .0100 .0053
.01 10.00 .50 8.8368 .0100 .0533
.01 10.00 1.00 7.6737 .0100 .0267
.01 10.00 2.00 5.3473 .0100 .0133
.01 10.00 5.00 -1.6317 .0100 .0053
.10 -10.00 .50 -10.6408 .1000 .3510
.10 -10.00 1.00 -11.2816 .1000 .1755
.10 -10.00 2.00 -12.5631 .1000 .0877
.10 -10.00 5.00 -16.4078 .1000 .0351
.10 -5.00 .50 -5.6408 .1000 .3510
.10 -5.00 1.00 -6.2816 .1000 .1755
.10 -5.00 2.00 -7.5631 .1000 .0877
.10 -5.00 5.00 -11.4078 .1000 .0351
.10 .00 .50 -.6408 .1000 .3510
.10 .00 1.00 -1.2816 .1000 .1755
.10 .00 2.00 -2.5631 .1000 .0877
.10 .00 5.00 -6.4078 .1000 .0351
.10 5.00 .50 4.3592 .1000 .3510
.10 5.00 1.00 3.7184 .1000 .1755
.10 5.00 2.00 2.4369 .1000 .0877
.10 5.00 5.00 -1.4078 .1000 .0351
.10 10.00 .50 9.3592 .1000 .3510
.10 10.00 1.00 8.7184 .1000 .1755
.10 10.00 2.00 7.4369 .1000 .0877
.10 10.00 5.00 3.5922 .1000 .0351
.20 -10.00 .50 -10.4208 .2000 .5599
.20 -10.00 1.00 -10.8416 .2000 .2800
.20 -10.00 2.00 -11.6832 .2000 .1400
.20 -10.00 5.00 -14.2081 .2000 .0560
.20 -5.00 .50 -5.4208 .2000 .5599
.20 -5.00 1.00 -5.8416 .2000 .2800
.20 -5.00 2.00 -6.6832 .2000 .1400
.20 -5.00 5.00 -9.2081 .2000 .0560
.20 .00 .50 -.4208 .2000 .5599
.20 .00 1.00 -.8416 .2000 .2800
.20 .00 2.00 -1.6832 .2000 .1400
.20 .00 5.00 -4.2081 .2000 .0560
.20 5.00 .50 4.5792 .2000 .5599
.20 5.00 1.00 4.1584 .2000 .2800
.20 5.00 2.00 3.3168 .2000 .1400
.20 5.00 5.00 .7919 .2000 .0560
.20 10.00 .50 9.5792 .2000 .5599
.20 10.00 1.00 9.1584 .2000 .2800
.20 10.00 2.00 8.3168 .2000 .1400
.20 10.00 5.00 5.7919 .2000 .0560
.30 -10.00 .50 -10.2622 .3000 .6954
.30 -10.00 1.00 -10.5244 .3000 .3477
.30 -10.00 2.00 -11.0488 .3000 .1738
.30 -10.00 5.00 -12.6220 .3000 .0695
.30 -5.00 .50 -5.2622 .3000 .6954
.30 -5.00 1.00 -5.5244 .3000 .3477
.30 -5.00 2.00 -6.0488 .3000 .1738
.30 -5.00 5.00 -7.6220 .3000 .0695
.30 .00 .50 -.2622 .3000 .6954
.30 .00 1.00 -.5244 .3000 .3477
.30 .00 2.00 -1.0488 .3000 .1738
.30 .00 5.00 -2.6220 .3000 .0695
.30 5.00 .50 4.7378 .3000 .6954
.30 5.00 1.00 4.4756 .3000 .3477
.30 5.00 2.00 3.9512 .3000 .1738
.30 5.00 5.00 2.3780 .3000 .0695
.30 10.00 .50 9.7378 .3000 .6954
.30 10.00 1.00 9.4756 .3000 .3477
.30 10.00 2.00 8.9512 .3000 .1738
.30 10.00 5.00 7.3780 .3000 .0695
.40 -10.00 .50 -10.1267 .4000 .7727
.40 -10.00 1.00 -10.2533 .4000 .3863
.40 -10.00 2.00 -10.5067 .4000 .1932
.40 -10.00 5.00 -11.2667 .4000 .0773
.40 -5.00 .50 -5.1267 .4000 .7727
.40 -5.00 1.00 -5.2533 .4000 .3863
.40 -5.00 2.00 -5.5067 .4000 .1932
.40 -5.00 5.00 -6.2667 .4000 .0773
.40 .00 .50 -.1267 .4000 .7727
.40 .00 1.00 -.2533 .4000 .3863
.40 .00 2.00 -.5067 .4000 .1932
.40 .00 5.00 -1.2667 .4000 .0773
.40 5.00 .50 4.8733 .4000 .7727
.40 5.00 1.00 4.7467 .4000 .3863
.40 5.00 2.00 4.4933 .4000 .1932
.40 5.00 5.00 3.7333 .4000 .0773
.40 10.00 .50 9.8733 .4000 .7727
.40 10.00 1.00 9.7467 .4000 .3863
.40 10.00 2.00 9.4933 .4000 .1932
.40 10.00 5.00 8.7333 .4000 .0773
.50 -10.00 .50 -10.0000 .5000 .7979
.50 -10.00 1.00 -10.0000 .5000 .3989
.50 -10.00 2.00 -10.0000 .5000 .1995
.50 -10.00 5.00 -10.0000 .5000 .0798
.50 -5.00 .50 -5.0000 .5000 .7979
.50 -5.00 1.00 -5.0000 .5000 .3989
.50 -5.00 2.00 -5.0000 .5000 .1995
.50 -5.00 5.00 -5.0000 .5000 .0798
.50 .00 .50 .0000 .5000 .7979
.50 .00 1.00 .0000 .5000 .3989
.50 .00 2.00 .0000 .5000 .1995
.50 .00 5.00 .0000 .5000 .0798
.50 5.00 .50 5.0000 .5000 .7979
.50 5.00 1.00 5.0000 .5000 .3989
.50 5.00 2.00 5.0000 .5000 .1995
.50 5.00 5.00 5.0000 .5000 .0798
.50 10.00 .50 10.0000 .5000 .7979
.50 10.00 1.00 10.0000 .5000 .3989
.50 10.00 2.00 10.0000 .5000 .1995
.50 10.00 5.00 10.0000 .5000 .0798
.60 -10.00 .50 -9.8733 .6000 .7727
.60 -10.00 1.00 -9.7467 .6000 .3863
.60 -10.00 2.00 -9.4933 .6000 .1932
.60 -10.00 5.00 -8.7333 .6000 .0773
.60 -5.00 .50 -4.8733 .6000 .7727
.60 -5.00 1.00 -4.7467 .6000 .3863
.60 -5.00 2.00 -4.4933 .6000 .1932
.60 -5.00 5.00 -3.7333 .6000 .0773
.60 .00 .50 .1267 .6000 .7727
.60 .00 1.00 .2533 .6000 .3863
.60 .00 2.00 .5067 .6000 .1932
.60 .00 5.00 1.2667 .6000 .0773
.60 5.00 .50 5.1267 .6000 .7727
.60 5.00 1.00 5.2533 .6000 .3863
.60 5.00 2.00 5.5067 .6000 .1932
.60 5.00 5.00 6.2667 .6000 .0773
.60 10.00 .50 10.1267 .6000 .7727
.60 10.00 1.00 10.2533 .6000 .3863
.60 10.00 2.00 10.5067 .6000 .1932
.60 10.00 5.00 11.2667 .6000 .0773
.70 -10.00 .50 -9.7378 .7000 .6954
.70 -10.00 1.00 -9.4756 .7000 .3477
.70 -10.00 2.00 -8.9512 .7000 .1738
.70 -10.00 5.00 -7.3780 .7000 .0695
.70 -5.00 .50 -4.7378 .7000 .6954
.70 -5.00 1.00 -4.4756 .7000 .3477
.70 -5.00 2.00 -3.9512 .7000 .1738
.70 -5.00 5.00 -2.3780 .7000 .0695
.70 .00 .50 .2622 .7000 .6954
.70 .00 1.00 .5244 .7000 .3477
.70 .00 2.00 1.0488 .7000 .1738
.70 .00 5.00 2.6220 .7000 .0695
.70 5.00 .50 5.2622 .7000 .6954
.70 5.00 1.00 5.5244 .7000 .3477
.70 5.00 2.00 6.0488 .7000 .1738
.70 5.00 5.00 7.6220 .7000 .0695
.70 10.00 .50 10.2622 .7000 .6954
.70 10.00 1.00 10.5244 .7000 .3477
.70 10.00 2.00 11.0488 .7000 .1738
.70 10.00 5.00 12.6220 .7000 .0695
.80 -10.00 .50 -9.5792 .8000 .5599
.80 -10.00 1.00 -9.1584 .8000 .2800
.80 -10.00 2.00 -8.3168 .8000 .1400
.80 -10.00 5.00 -5.7919 .8000 .0560
.80 -5.00 .50 -4.5792 .8000 .5599
.80 -5.00 1.00 -4.1584 .8000 .2800
.80 -5.00 2.00 -3.3168 .8000 .1400
.80 -5.00 5.00 -.7919 .8000 .0560
.80 .00 .50 .4208 .8000 .5599
.80 .00 1.00 .8416 .8000 .2800
.80 .00 2.00 1.6832 .8000 .1400
.80 .00 5.00 4.2081 .8000 .0560
.80 5.00 .50 5.4208 .8000 .5599
.80 5.00 1.00 5.8416 .8000 .2800
.80 5.00 2.00 6.6832 .8000 .1400
.80 5.00 5.00 9.2081 .8000 .0560
.80 10.00 .50 10.4208 .8000 .5599
.80 10.00 1.00 10.8416 .8000 .2800
.80 10.00 2.00 11.6832 .8000 .1400
.80 10.00 5.00 14.2081 .8000 .0560
.90 -10.00 .50 -9.3592 .9000 .3510
.90 -10.00 1.00 -8.7184 .9000 .1755
.90 -10.00 2.00 -7.4369 .9000 .0877
.90 -10.00 5.00 -3.5922 .9000 .0351
.90 -5.00 .50 -4.3592 .9000 .3510
.90 -5.00 1.00 -3.7184 .9000 .1755
.90 -5.00 2.00 -2.4369 .9000 .0877
.90 -5.00 5.00 1.4078 .9000 .0351
.90 .00 .50 .6408 .9000 .3510
.90 .00 1.00 1.2816 .9000 .1755
.90 .00 2.00 2.5631 .9000 .0877
.90 .00 5.00 6.4078 .9000 .0351
.90 5.00 .50 5.6408 .9000 .3510
.90 5.00 1.00 6.2816 .9000 .1755
.90 5.00 2.00 7.5631 .9000 .0877
.90 5.00 5.00 11.4078 .9000 .0351
.90 10.00 .50 10.6408 .9000 .3510
.90 10.00 1.00 11.2816 .9000 .1755
.90 10.00 2.00 12.5631 .9000 .0877
.90 10.00 5.00 16.4078 .9000 .0351
.99 -10.00 .50 -8.8368 .9900 .0533
.99 -10.00 1.00 -7.6737 .9900 .0267
.99 -10.00 2.00 -5.3473 .9900 .0133
.99 -10.00 5.00 1.6317 .9900 .0053
.99 -5.00 .50 -3.8368 .9900 .0533
.99 -5.00 1.00 -2.6737 .9900 .0267
.99 -5.00 2.00 -.3473 .9900 .0133
.99 -5.00 5.00 6.6317 .9900 .0053
.99 .00 .50 1.1632 .9900 .0533
.99 .00 1.00 2.3263 .9900 .0267
.99 .00 2.00 4.6527 .9900 .0133
.99 .00 5.00 11.6317 .9900 .0053
.99 5.00 .50 6.1632 .9900 .0533
.99 5.00 1.00 7.3263 .9900 .0267
.99 5.00 2.00 9.6527 .9900 .0133
.99 5.00 5.00 16.6317 .9900 .0053
.99 10.00 .50 11.1632 .9900 .0533
.99 10.00 1.00 12.3263 .9900 .0267
.99 10.00 2.00 14.6527 .9900 .0133
.99 10.00 5.00 21.6317 .9900 .0053
_ATEOF
cat >normal.sps <<'_ATEOF'
DATA LIST LIST FILE='normal.in' NOTABLE SKIP=1
/P u s Xx Xcdf Xpdf.
NUMERIC x cdf pdf (F10.4).
COMPUTE x = IDF.normal(P, u, s).
COMPUTE cdf = cdf.normal(x, u, s).
COMPUTE pdf = pdf.normal(x, u, s).
DO IF $CASENUM = 1.
PRINT OUTFILE='normal.out'/" P u s x cdf pdf ".
END IF.
PRINT OUTFILE='normal.out'/P u s x cdf pdf.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/randist.at:2058: pspp -O format=csv normal.sps"
at_fn_check_prepare_trace "randist.at:2058"
( $at_check_trace; pspp -O format=csv normal.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:2058"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/randist.at:2058: \$PERL compare.pl normal.in normal.out"
at_fn_check_prepare_dynamic "$PERL compare.pl normal.in normal.out" "randist.at:2058"
( $at_check_trace; $PERL compare.pl normal.in normal.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:2058"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1008
#AT_START_1009
at_fn_group_banner 1009 'randist.at:2282' \
"random distributions -- pareto" " " 128
at_xfail=no
(
$as_echo "1009. $at_setup_line: testing $at_desc ..."
$at_traceon
randist_compare
cat >pareto.in <<'_ATEOF'
P a b x cdf pdf
.01 1.00 1.00 1.0101 .0100 .9801
.01 1.00 2.00 1.0050 .0100 1.9701
.01 1.00 5.00 1.0020 .0100 4.9401
.01 1.00 10.00 1.0010 .0100 9.8901
.01 5.00 1.00 5.0505 .0100 .1960
.01 5.00 2.00 5.0252 .0100 .3940
.01 5.00 5.00 5.0101 .0100 .9880
.01 5.00 10.00 5.0050 .0100 1.9780
.01 10.00 1.00 10.1010 .0100 .0980
.01 10.00 2.00 10.0504 .0100 .1970
.01 10.00 5.00 10.0201 .0100 .4940
.01 10.00 10.00 10.0101 .0100 .9890
.10 1.00 1.00 1.1111 .1000 .8100
.10 1.00 2.00 1.0541 .1000 1.7076
.10 1.00 5.00 1.0213 .1000 4.4062
.10 1.00 10.00 1.0106 .1000 8.9057
.10 5.00 1.00 5.5556 .1000 .1620
.10 5.00 2.00 5.2705 .1000 .3415
.10 5.00 5.00 5.1065 .1000 .8812
.10 5.00 10.00 5.0530 .1000 1.7811
.10 10.00 1.00 11.1111 .1000 .0810
.10 10.00 2.00 10.5409 .1000 .1708
.10 10.00 5.00 10.2130 .1000 .4406
.10 10.00 10.00 10.1059 .1000 .8906
.20 1.00 1.00 1.2500 .2000 .6400
.20 1.00 2.00 1.1180 .2000 1.4311
.20 1.00 5.00 1.0456 .2000 3.8254
.20 1.00 10.00 1.0226 .2000 7.8235
.20 5.00 1.00 6.2500 .2000 .1280
.20 5.00 2.00 5.5902 .2000 .2862
.20 5.00 5.00 5.2282 .2000 .7651
.20 5.00 10.00 5.1128 .2000 1.5647
.20 10.00 1.00 12.5000 .2000 .0640
.20 10.00 2.00 11.1803 .2000 .1431
.20 10.00 5.00 10.4564 .2000 .3825
.20 10.00 10.00 10.2257 .2000 .7823
.30 1.00 1.00 1.4286 .3000 .4900
.30 1.00 2.00 1.1952 .3000 1.1713
.30 1.00 5.00 1.0739 .3000 3.2590
.30 1.00 10.00 1.0363 .3000 6.7547
.30 5.00 1.00 7.1429 .3000 .0980
.30 5.00 2.00 5.9761 .3000 .2343
.30 5.00 5.00 5.3697 .3000 .6518
.30 5.00 10.00 5.1816 .3000 1.3509
.30 10.00 1.00 14.2857 .3000 .0490
.30 10.00 2.00 11.9523 .3000 .1171
.30 10.00 5.00 10.7394 .3000 .3259
.30 10.00 10.00 10.3631 .3000 .6755
.40 1.00 1.00 1.6667 .4000 .3600
.40 1.00 2.00 1.2910 .4000 .9295
.40 1.00 5.00 1.1076 .4000 2.7086
.40 1.00 10.00 1.0524 .4000 5.7012
.40 5.00 1.00 8.3333 .4000 .0720
.40 5.00 2.00 6.4550 .4000 .1859
.40 5.00 5.00 5.5378 .4000 .5417
.40 5.00 10.00 5.2620 .4000 1.1402
.40 10.00 1.00 16.6667 .4000 .0360
.40 10.00 2.00 12.9099 .4000 .0930
.40 10.00 5.00 11.0757 .4000 .2709
.40 10.00 10.00 10.5241 .4000 .5701
.50 1.00 1.00 2.0000 .5000 .2500
.50 1.00 2.00 1.4142 .5000 .7071
.50 1.00 5.00 1.1487 .5000 2.1764
.50 1.00 10.00 1.0718 .5000 4.6652
.50 5.00 1.00 10.0000 .5000 .0500
.50 5.00 2.00 7.0711 .5000 .1414
.50 5.00 5.00 5.7435 .5000 .4353
.50 5.00 10.00 5.3589 .5000 .9330
.50 10.00 1.00 20.0000 .5000 .0250
.50 10.00 2.00 14.1421 .5000 .0707
.50 10.00 5.00 11.4870 .5000 .2176
.50 10.00 10.00 10.7177 .5000 .4665
.60 1.00 1.00 2.5000 .6000 .1600
.60 1.00 2.00 1.5811 .6000 .5060
.60 1.00 5.00 1.2011 .6000 1.6651
.60 1.00 10.00 1.0960 .6000 3.6498
.60 5.00 1.00 12.5000 .6000 .0320
.60 5.00 2.00 7.9057 .6000 .1012
.60 5.00 5.00 6.0056 .6000 .3330
.60 5.00 10.00 5.4798 .6000 .7300
.60 10.00 1.00 25.0000 .6000 .0160
.60 10.00 2.00 15.8114 .6000 .0506
.60 10.00 5.00 12.0112 .6000 .1665
.60 10.00 10.00 10.9596 .6000 .3650
.70 1.00 1.00 3.3333 .7000 .0900
.70 1.00 2.00 1.8257 .7000 .3286
.70 1.00 5.00 1.2723 .7000 1.1790
.70 1.00 10.00 1.1279 .7000 2.6597
.70 5.00 1.00 16.6667 .7000 .0180
.70 5.00 2.00 9.1287 .7000 .0657
.70 5.00 5.00 6.3613 .7000 .2358
.70 5.00 10.00 5.6397 .7000 .5319
.70 10.00 1.00 33.3333 .7000 .0090
.70 10.00 2.00 18.2574 .7000 .0329
.70 10.00 5.00 12.7226 .7000 .1179
.70 10.00 10.00 11.2794 .7000 .2660
.80 1.00 1.00 5.0000 .8000 .0400
.80 1.00 2.00 2.2361 .8000 .1789
.80 1.00 5.00 1.3797 .8000 .7248
.80 1.00 10.00 1.1746 .8000 1.7027
.80 5.00 1.00 25.0000 .8000 .0080
.80 5.00 2.00 11.1803 .8000 .0358
.80 5.00 5.00 6.8986 .8000 .1450
.80 5.00 10.00 5.8731 .8000 .3405
.80 10.00 1.00 50.0000 .8000 .0040
.80 10.00 2.00 22.3607 .8000 .0179
.80 10.00 5.00 13.7973 .8000 .0725
.80 10.00 10.00 11.7462 .8000 .1703
.90 1.00 1.00 10.0000 .9000 .0100
.90 1.00 2.00 3.1623 .9000 .0632
.90 1.00 5.00 1.5849 .9000 .3155
.90 1.00 10.00 1.2589 .9000 .7943
.90 5.00 1.00 50.0000 .9000 .0020
.90 5.00 2.00 15.8114 .9000 .0126
.90 5.00 5.00 7.9245 .9000 .0631
.90 5.00 10.00 6.2946 .9000 .1589
.90 10.00 1.00 100.0000 .9000 .0010
.90 10.00 2.00 31.6228 .9000 .0063
.90 10.00 5.00 15.8489 .9000 .0315
.90 10.00 10.00 12.5893 .9000 .0794
.99 1.00 1.00 100.0000 .9900 .0001
.99 1.00 2.00 10.0000 .9900 .0020
.99 1.00 5.00 2.5119 .9900 .0199
.99 1.00 10.00 1.5849 .9900 .0631
.99 5.00 1.00 500.0000 .9900 .0000
.99 5.00 2.00 50.0000 .9900 .0004
.99 5.00 5.00 12.5594 .9900 .0040
.99 5.00 10.00 7.9245 .9900 .0126
.99 10.00 1.00 1000.0000 .9900 .0000
.99 10.00 2.00 100.0000 .9900 .0002
.99 10.00 5.00 25.1189 .9900 .0020
.99 10.00 10.00 15.8489 .9900 .0063
_ATEOF
cat >pareto.sps <<'_ATEOF'
DATA LIST LIST FILE='pareto.in' NOTABLE SKIP=1
/P a b Xx Xcdf Xpdf.
NUMERIC x cdf pdf (F10.4).
COMPUTE x = IDF.pareto(P, a, b).
COMPUTE cdf = cdf.pareto(x, a, b).
COMPUTE pdf = pdf.pareto(x, a, b).
DO IF $CASENUM = 1.
PRINT OUTFILE='pareto.out'/" P a b x cdf pdf ".
END IF.
PRINT OUTFILE='pareto.out'/P a b x cdf pdf.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/randist.at:2282: pspp -O format=csv pareto.sps"
at_fn_check_prepare_trace "randist.at:2282"
( $at_check_trace; pspp -O format=csv pareto.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:2282"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/randist.at:2282: \$PERL compare.pl pareto.in pareto.out"
at_fn_check_prepare_dynamic "$PERL compare.pl pareto.in pareto.out" "randist.at:2282"
( $at_check_trace; $PERL compare.pl pareto.in pareto.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:2282"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1009
#AT_START_1010
at_fn_group_banner 1010 'randist.at:2418' \
"random distributions -- t" " " 128
at_xfail=no
(
$as_echo "1010. $at_setup_line: testing $at_desc ..."
$at_traceon
randist_compare
cat >t.in <<'_ATEOF'
P df x cdf pdf
.01 1.00 -31.8205 .0100 .0003
.01 2.00 -6.9646 .0100 .0028
.01 3.00 -4.5407 .0100 .0059
.01 4.00 -3.7469 .0100 .0087
.01 5.00 -3.3649 .0100 .0109
.01 10.00 -2.7638 .0100 .0172
.01 30.00 -2.4573 .0100 .0231
.01 100.00 -2.3642 .0100 .0255
.10 1.00 -3.0777 .1000 .0304
.10 2.00 -1.8856 .1000 .0764
.10 3.00 -1.6377 .1000 .1025
.10 4.00 -1.5332 .1000 .1181
.10 5.00 -1.4759 .1000 .1283
.10 10.00 -1.3722 .1000 .1507
.10 30.00 -1.3104 .1000 .1670
.10 100.00 -1.2901 .1000 .1729
.20 1.00 -1.3764 .2000 .1100
.20 2.00 -1.0607 .2000 .1810
.20 3.00 -.9785 .2000 .2112
.20 4.00 -.9410 .2000 .2275
.20 5.00 -.9195 .2000 .2376
.20 10.00 -.8791 .2000 .2584
.20 30.00 -.8538 .2000 .2727
.20 100.00 -.8452 .2000 .2778
.30 1.00 -.7265 .3000 .2083
.30 2.00 -.6172 .3000 .2722
.30 3.00 -.5844 .3000 .2963
.30 4.00 -.5686 .3000 .3088
.30 5.00 -.5594 .3000 .3164
.30 10.00 -.5415 .3000 .3319
.30 30.00 -.5300 .3000 .3424
.30 100.00 -.5261 .3000 .3461
.40 1.00 -.3249 .4000 .2879
.40 2.00 -.2887 .4000 .3326
.40 3.00 -.2767 .4000 .3495
.40 4.00 -.2707 .4000 .3584
.40 5.00 -.2672 .4000 .3638
.40 10.00 -.2602 .4000 .3749
.40 30.00 -.2556 .4000 .3825
.40 100.00 -.2540 .4000 .3852
.50 1.00 .0000 .5000 .3183
.50 2.00 .0000 .5000 .3536
.50 3.00 .0000 .5000 .3676
.50 4.00 .0000 .5000 .3750
.50 5.00 .0000 .5000 .3796
.50 10.00 .0000 .5000 .3891
.50 30.00 .0000 .5000 .3956
.50 100.00 .0000 .5000 .3979
.60 1.00 .3249 .6000 .2879
.60 2.00 .2887 .6000 .3326
.60 3.00 .2767 .6000 .3495
.60 4.00 .2707 .6000 .3584
.60 5.00 .2672 .6000 .3638
.60 10.00 .2602 .6000 .3749
.60 30.00 .2556 .6000 .3825
.60 100.00 .2540 .6000 .3852
.70 1.00 .7265 .7000 .2083
.70 2.00 .6172 .7000 .2722
.70 3.00 .5844 .7000 .2963
.70 4.00 .5686 .7000 .3088
.70 5.00 .5594 .7000 .3164
.70 10.00 .5415 .7000 .3319
.70 30.00 .5300 .7000 .3424
.70 100.00 .5261 .7000 .3461
.80 1.00 1.3764 .8000 .1100
.80 2.00 1.0607 .8000 .1810
.80 3.00 .9785 .8000 .2112
.80 4.00 .9410 .8000 .2275
.80 5.00 .9195 .8000 .2376
.80 10.00 .8791 .8000 .2584
.80 30.00 .8538 .8000 .2727
.80 100.00 .8452 .8000 .2778
.90 1.00 3.0777 .9000 .0304
.90 2.00 1.8856 .9000 .0764
.90 3.00 1.6377 .9000 .1025
.90 4.00 1.5332 .9000 .1181
.90 5.00 1.4759 .9000 .1283
.90 10.00 1.3722 .9000 .1507
.90 30.00 1.3104 .9000 .1670
.90 100.00 1.2901 .9000 .1729
.99 1.00 31.8205 .9900 .0003
.99 2.00 6.9646 .9900 .0028
.99 3.00 4.5407 .9900 .0059
.99 4.00 3.7469 .9900 .0087
.99 5.00 3.3649 .9900 .0109
.99 10.00 2.7638 .9900 .0172
.99 30.00 2.4573 .9900 .0231
.99 100.00 2.3642 .9900 .0255
_ATEOF
cat >t.sps <<'_ATEOF'
DATA LIST LIST FILE='t.in' NOTABLE SKIP=1
/P df Xx Xcdf Xpdf.
NUMERIC x cdf pdf (F10.4).
COMPUTE x = IDF.t(P, df).
COMPUTE cdf = cdf.t(x, df).
COMPUTE pdf = pdf.t(x, df).
DO IF $CASENUM = 1.
PRINT OUTFILE='t.out'/" P df x cdf pdf ".
END IF.
PRINT OUTFILE='t.out'/P df x cdf pdf.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/randist.at:2418: pspp -O format=csv t.sps"
at_fn_check_prepare_trace "randist.at:2418"
( $at_check_trace; pspp -O format=csv t.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:2418"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/randist.at:2418: \$PERL compare.pl t.in t.out"
at_fn_check_prepare_dynamic "$PERL compare.pl t.in t.out" "randist.at:2418"
( $at_check_trace; $PERL compare.pl t.in t.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:2418"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1010
#AT_START_1011
at_fn_group_banner 1011 'randist.at:2510' \
"random distributions -- uniform" " " 128
at_xfail=no
(
$as_echo "1011. $at_setup_line: testing $at_desc ..."
$at_traceon
randist_compare
cat >uniform.in <<'_ATEOF'
P a b x cdf pdf
.01 -10.00 40.00 -9.5000 .0100 .0200
.01 -10.00 41.00 -9.4900 .0100 .0196
.01 -10.00 45.00 -9.4500 .0100 .0182
.01 -10.00 50.00 -9.4000 .0100 .0167
.01 .00 40.00 .4000 .0100 .0250
.01 .00 41.00 .4100 .0100 .0244
.01 .00 45.00 .4500 .0100 .0222
.01 .00 50.00 .5000 .0100 .0200
.01 20.00 40.00 20.2000 .0100 .0500
.01 20.00 41.00 20.2100 .0100 .0476
.01 20.00 45.00 20.2500 .0100 .0400
.01 20.00 50.00 20.3000 .0100 .0333
.01 30.00 40.00 30.1000 .0100 .1000
.01 30.00 41.00 30.1100 .0100 .0909
.01 30.00 45.00 30.1500 .0100 .0667
.01 30.00 50.00 30.2000 .0100 .0500
.10 -10.00 40.00 -5.0000 .1000 .0200
.10 -10.00 41.00 -4.9000 .1000 .0196
.10 -10.00 45.00 -4.5000 .1000 .0182
.10 -10.00 50.00 -4.0000 .1000 .0167
.10 .00 40.00 4.0000 .1000 .0250
.10 .00 41.00 4.1000 .1000 .0244
.10 .00 45.00 4.5000 .1000 .0222
.10 .00 50.00 5.0000 .1000 .0200
.10 20.00 40.00 22.0000 .1000 .0500
.10 20.00 41.00 22.1000 .1000 .0476
.10 20.00 45.00 22.5000 .1000 .0400
.10 20.00 50.00 23.0000 .1000 .0333
.10 30.00 40.00 31.0000 .1000 .1000
.10 30.00 41.00 31.1000 .1000 .0909
.10 30.00 45.00 31.5000 .1000 .0667
.10 30.00 50.00 32.0000 .1000 .0500
.20 -10.00 40.00 .0000 .2000 .0200
.20 -10.00 41.00 .2000 .2000 .0196
.20 -10.00 45.00 1.0000 .2000 .0182
.20 -10.00 50.00 2.0000 .2000 .0167
.20 .00 40.00 8.0000 .2000 .0250
.20 .00 41.00 8.2000 .2000 .0244
.20 .00 45.00 9.0000 .2000 .0222
.20 .00 50.00 10.0000 .2000 .0200
.20 20.00 40.00 24.0000 .2000 .0500
.20 20.00 41.00 24.2000 .2000 .0476
.20 20.00 45.00 25.0000 .2000 .0400
.20 20.00 50.00 26.0000 .2000 .0333
.20 30.00 40.00 32.0000 .2000 .1000
.20 30.00 41.00 32.2000 .2000 .0909
.20 30.00 45.00 33.0000 .2000 .0667
.20 30.00 50.00 34.0000 .2000 .0500
.30 -10.00 40.00 5.0000 .3000 .0200
.30 -10.00 41.00 5.3000 .3000 .0196
.30 -10.00 45.00 6.5000 .3000 .0182
.30 -10.00 50.00 8.0000 .3000 .0167
.30 .00 40.00 12.0000 .3000 .0250
.30 .00 41.00 12.3000 .3000 .0244
.30 .00 45.00 13.5000 .3000 .0222
.30 .00 50.00 15.0000 .3000 .0200
.30 20.00 40.00 26.0000 .3000 .0500
.30 20.00 41.00 26.3000 .3000 .0476
.30 20.00 45.00 27.5000 .3000 .0400
.30 20.00 50.00 29.0000 .3000 .0333
.30 30.00 40.00 33.0000 .3000 .1000
.30 30.00 41.00 33.3000 .3000 .0909
.30 30.00 45.00 34.5000 .3000 .0667
.30 30.00 50.00 36.0000 .3000 .0500
.40 -10.00 40.00 10.0000 .4000 .0200
.40 -10.00 41.00 10.4000 .4000 .0196
.40 -10.00 45.00 12.0000 .4000 .0182
.40 -10.00 50.00 14.0000 .4000 .0167
.40 .00 40.00 16.0000 .4000 .0250
.40 .00 41.00 16.4000 .4000 .0244
.40 .00 45.00 18.0000 .4000 .0222
.40 .00 50.00 20.0000 .4000 .0200
.40 20.00 40.00 28.0000 .4000 .0500
.40 20.00 41.00 28.4000 .4000 .0476
.40 20.00 45.00 30.0000 .4000 .0400
.40 20.00 50.00 32.0000 .4000 .0333
.40 30.00 40.00 34.0000 .4000 .1000
.40 30.00 41.00 34.4000 .4000 .0909
.40 30.00 45.00 36.0000 .4000 .0667
.40 30.00 50.00 38.0000 .4000 .0500
.50 -10.00 40.00 15.0000 .5000 .0200
.50 -10.00 41.00 15.5000 .5000 .0196
.50 -10.00 45.00 17.5000 .5000 .0182
.50 -10.00 50.00 20.0000 .5000 .0167
.50 .00 40.00 20.0000 .5000 .0250
.50 .00 41.00 20.5000 .5000 .0244
.50 .00 45.00 22.5000 .5000 .0222
.50 .00 50.00 25.0000 .5000 .0200
.50 20.00 40.00 30.0000 .5000 .0500
.50 20.00 41.00 30.5000 .5000 .0476
.50 20.00 45.00 32.5000 .5000 .0400
.50 20.00 50.00 35.0000 .5000 .0333
.50 30.00 40.00 35.0000 .5000 .1000
.50 30.00 41.00 35.5000 .5000 .0909
.50 30.00 45.00 37.5000 .5000 .0667
.50 30.00 50.00 40.0000 .5000 .0500
.60 -10.00 40.00 20.0000 .6000 .0200
.60 -10.00 41.00 20.6000 .6000 .0196
.60 -10.00 45.00 23.0000 .6000 .0182
.60 -10.00 50.00 26.0000 .6000 .0167
.60 .00 40.00 24.0000 .6000 .0250
.60 .00 41.00 24.6000 .6000 .0244
.60 .00 45.00 27.0000 .6000 .0222
.60 .00 50.00 30.0000 .6000 .0200
.60 20.00 40.00 32.0000 .6000 .0500
.60 20.00 41.00 32.6000 .6000 .0476
.60 20.00 45.00 35.0000 .6000 .0400
.60 20.00 50.00 38.0000 .6000 .0333
.60 30.00 40.00 36.0000 .6000 .1000
.60 30.00 41.00 36.6000 .6000 .0909
.60 30.00 45.00 39.0000 .6000 .0667
.60 30.00 50.00 42.0000 .6000 .0500
.70 -10.00 40.00 25.0000 .7000 .0200
.70 -10.00 41.00 25.7000 .7000 .0196
.70 -10.00 45.00 28.5000 .7000 .0182
.70 -10.00 50.00 32.0000 .7000 .0167
.70 .00 40.00 28.0000 .7000 .0250
.70 .00 41.00 28.7000 .7000 .0244
.70 .00 45.00 31.5000 .7000 .0222
.70 .00 50.00 35.0000 .7000 .0200
.70 20.00 40.00 34.0000 .7000 .0500
.70 20.00 41.00 34.7000 .7000 .0476
.70 20.00 45.00 37.5000 .7000 .0400
.70 20.00 50.00 41.0000 .7000 .0333
.70 30.00 40.00 37.0000 .7000 .1000
.70 30.00 41.00 37.7000 .7000 .0909
.70 30.00 45.00 40.5000 .7000 .0667
.70 30.00 50.00 44.0000 .7000 .0500
.80 -10.00 40.00 30.0000 .8000 .0200
.80 -10.00 41.00 30.8000 .8000 .0196
.80 -10.00 45.00 34.0000 .8000 .0182
.80 -10.00 50.00 38.0000 .8000 .0167
.80 .00 40.00 32.0000 .8000 .0250
.80 .00 41.00 32.8000 .8000 .0244
.80 .00 45.00 36.0000 .8000 .0222
.80 .00 50.00 40.0000 .8000 .0200
.80 20.00 40.00 36.0000 .8000 .0500
.80 20.00 41.00 36.8000 .8000 .0476
.80 20.00 45.00 40.0000 .8000 .0400
.80 20.00 50.00 44.0000 .8000 .0333
.80 30.00 40.00 38.0000 .8000 .1000
.80 30.00 41.00 38.8000 .8000 .0909
.80 30.00 45.00 42.0000 .8000 .0667
.80 30.00 50.00 46.0000 .8000 .0500
.90 -10.00 40.00 35.0000 .9000 .0200
.90 -10.00 41.00 35.9000 .9000 .0196
.90 -10.00 45.00 39.5000 .9000 .0182
.90 -10.00 50.00 44.0000 .9000 .0167
.90 .00 40.00 36.0000 .9000 .0250
.90 .00 41.00 36.9000 .9000 .0244
.90 .00 45.00 40.5000 .9000 .0222
.90 .00 50.00 45.0000 .9000 .0200
.90 20.00 40.00 38.0000 .9000 .0500
.90 20.00 41.00 38.9000 .9000 .0476
.90 20.00 45.00 42.5000 .9000 .0400
.90 20.00 50.00 47.0000 .9000 .0333
.90 30.00 40.00 39.0000 .9000 .1000
.90 30.00 41.00 39.9000 .9000 .0909
.90 30.00 45.00 43.5000 .9000 .0667
.90 30.00 50.00 48.0000 .9000 .0500
.99 -10.00 40.00 39.5000 .9900 .0200
.99 -10.00 41.00 40.4900 .9900 .0196
.99 -10.00 45.00 44.4500 .9900 .0182
.99 -10.00 50.00 49.4000 .9900 .0167
.99 .00 40.00 39.6000 .9900 .0250
.99 .00 41.00 40.5900 .9900 .0244
.99 .00 45.00 44.5500 .9900 .0222
.99 .00 50.00 49.5000 .9900 .0200
.99 20.00 40.00 39.8000 .9900 .0500
.99 20.00 41.00 40.7900 .9900 .0476
.99 20.00 45.00 44.7500 .9900 .0400
.99 20.00 50.00 49.7000 .9900 .0333
.99 30.00 40.00 39.9000 .9900 .1000
.99 30.00 41.00 40.8900 .9900 .0909
.99 30.00 45.00 44.8500 .9900 .0667
.99 30.00 50.00 49.8000 .9900 .0500
_ATEOF
cat >uniform.sps <<'_ATEOF'
DATA LIST LIST FILE='uniform.in' NOTABLE SKIP=1
/P a b Xx Xcdf Xpdf.
NUMERIC x cdf pdf (F10.4).
COMPUTE x = IDF.uniform(P, a, b).
COMPUTE cdf = cdf.uniform(x, a, b).
COMPUTE pdf = pdf.uniform(x, a, b).
DO IF $CASENUM = 1.
PRINT OUTFILE='uniform.out'/" P a b x cdf pdf ".
END IF.
PRINT OUTFILE='uniform.out'/P a b x cdf pdf.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/randist.at:2510: pspp -O format=csv uniform.sps"
at_fn_check_prepare_trace "randist.at:2510"
( $at_check_trace; pspp -O format=csv uniform.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:2510"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/randist.at:2510: \$PERL compare.pl uniform.in uniform.out"
at_fn_check_prepare_dynamic "$PERL compare.pl uniform.in uniform.out" "randist.at:2510"
( $at_check_trace; $PERL compare.pl uniform.in uniform.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:2510"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1011
#AT_START_1012
at_fn_group_banner 1012 'randist.at:2690' \
"random distributions -- weibull" " " 128
at_xfail=no
(
$as_echo "1012. $at_setup_line: testing $at_desc ..."
$at_traceon
randist_compare
cat >weibull.in <<'_ATEOF'
P a b x cdf pdf
.01 .50 1.00 .0050 .0100 1.9800
.01 .50 2.00 .0501 .0100 .3970
.01 .50 4.00 .1583 .0100 .2514
.01 .50 8.00 .2813 .0100 .2829
.01 1.00 1.00 .0101 .0100 .9900
.01 1.00 2.00 .1003 .0100 .1985
.01 1.00 4.00 .3166 .0100 .1257
.01 1.00 8.00 .5627 .0100 .1415
.01 2.00 1.00 .0201 .0100 .4950
.01 2.00 2.00 .2005 .0100 .0992
.01 2.00 4.00 .6332 .0100 .0628
.01 2.00 8.00 1.1254 .0100 .0707
.01 5.00 1.00 .0503 .0100 .1980
.01 5.00 2.00 .5013 .0100 .0397
.01 5.00 4.00 1.5831 .0100 .0251
.01 5.00 8.00 2.8135 .0100 .0283
.10 .50 1.00 .0527 .1000 1.8000
.10 .50 2.00 .1623 .1000 1.1685
.10 .50 4.00 .2849 .1000 1.3315
.10 .50 8.00 .3774 .1000 2.0100
.10 1.00 1.00 .1054 .1000 .9000
.10 1.00 2.00 .3246 .1000 .5843
.10 1.00 4.00 .5697 .1000 .6657
.10 1.00 8.00 .7548 .1000 1.0050
.10 2.00 1.00 .2107 .1000 .4500
.10 2.00 2.00 .6492 .1000 .2921
.10 2.00 4.00 1.1395 .1000 .3329
.10 2.00 8.00 1.5096 .1000 .5025
.10 5.00 1.00 .5268 .1000 .1800
.10 5.00 2.00 1.6230 .1000 .1169
.10 5.00 4.00 2.8487 .1000 .1331
.10 5.00 8.00 3.7740 .1000 .2010
.20 .50 1.00 .1116 .2000 1.6000
.20 .50 2.00 .2362 .2000 1.5116
.20 .50 4.00 .3436 .2000 2.0779
.20 .50 8.00 .4145 .2000 3.4453
.20 1.00 1.00 .2231 .2000 .8000
.20 1.00 2.00 .4724 .2000 .7558
.20 1.00 4.00 .6873 .2000 1.0389
.20 1.00 8.00 .8290 .2000 1.7226
.20 2.00 1.00 .4463 .2000 .4000
.20 2.00 2.00 .9448 .2000 .3779
.20 2.00 4.00 1.3746 .2000 .5195
.20 2.00 8.00 1.6581 .2000 .8613
.20 5.00 1.00 1.1157 .2000 .1600
.20 5.00 2.00 2.3619 .2000 .1512
.20 5.00 4.00 3.4365 .2000 .2078
.20 5.00 8.00 4.1452 .2000 .3445
.30 .50 1.00 .1783 .3000 1.4000
.30 .50 2.00 .2986 .3000 1.6722
.30 .50 4.00 .3864 .3000 2.5846
.30 .50 8.00 .4395 .3000 4.5442
.30 1.00 1.00 .3567 .3000 .7000
.30 1.00 2.00 .5972 .3000 .8361
.30 1.00 4.00 .7728 .3000 1.2923
.30 1.00 8.00 .8791 .3000 2.2721
.30 2.00 1.00 .7133 .3000 .3500
.30 2.00 2.00 1.1944 .3000 .4181
.30 2.00 4.00 1.5456 .3000 .6461
.30 2.00 8.00 1.7582 .3000 1.1360
.30 5.00 1.00 1.7834 .3000 .1400
.30 5.00 2.00 2.9861 .3000 .1672
.30 5.00 4.00 3.8640 .3000 .2585
.30 5.00 8.00 4.3955 .3000 .4544
.40 .50 1.00 .2554 .4000 1.2000
.40 .50 2.00 .3574 .4000 1.7153
.40 .50 4.00 .4227 .4000 2.9003
.40 .50 8.00 .4597 .4000 5.3335
.40 1.00 1.00 .5108 .4000 .6000
.40 1.00 2.00 .7147 .4000 .8577
.40 1.00 4.00 .8454 .4000 1.4502
.40 1.00 8.00 .9195 .4000 2.6667
.40 2.00 1.00 1.0217 .4000 .3000
.40 2.00 2.00 1.4294 .4000 .4288
.40 2.00 4.00 1.6908 .4000 .7251
.40 2.00 8.00 1.8389 .4000 1.3334
.40 5.00 1.00 2.5541 .4000 .1200
.40 5.00 2.00 3.5736 .4000 .1715
.40 5.00 4.00 4.2271 .4000 .2900
.40 5.00 8.00 4.5973 .4000 .5333
.50 .50 1.00 .3466 .5000 1.0000
.50 .50 2.00 .4163 .5000 1.6651
.50 .50 4.00 .4562 .5000 3.0386
.50 .50 8.00 .4776 .5000 5.8051
.50 1.00 1.00 .6931 .5000 .5000
.50 1.00 2.00 .8326 .5000 .8326
.50 1.00 4.00 .9124 .5000 1.5193
.50 1.00 8.00 .9552 .5000 2.9026
.50 2.00 1.00 1.3863 .5000 .2500
.50 2.00 2.00 1.6651 .5000 .4163
.50 2.00 4.00 1.8249 .5000 .7597
.50 2.00 8.00 1.9104 .5000 1.4513
.50 5.00 1.00 3.4657 .5000 .1000
.50 5.00 2.00 4.1628 .5000 .1665
.50 5.00 4.00 4.5622 .5000 .3039
.50 5.00 8.00 4.7761 .5000 .5805
.60 .50 1.00 .4581 .6000 .8000
.60 .50 2.00 .4786 .6000 1.5316
.60 .50 4.00 .4892 .6000 2.9969
.60 .50 8.00 .4946 .6000 5.9287
.60 1.00 1.00 .9163 .6000 .4000
.60 1.00 2.00 .9572 .6000 .7658
.60 1.00 4.00 .9784 .6000 1.4985
.60 1.00 8.00 .9891 .6000 2.9643
.60 2.00 1.00 1.8326 .6000 .2000
.60 2.00 2.00 1.9145 .6000 .3829
.60 2.00 4.00 1.9568 .6000 .7492
.60 2.00 8.00 1.9783 .6000 1.4822
.60 5.00 1.00 4.5815 .6000 .0800
.60 5.00 2.00 4.7862 .6000 .1532
.60 5.00 4.00 4.8919 .6000 .2997
.60 5.00 8.00 4.9457 .6000 .5929
.70 .50 1.00 .6020 .7000 .6000
.70 .50 2.00 .5486 .7000 1.3167
.70 .50 4.00 .5238 .7000 2.7585
.70 .50 8.00 .5117 .7000 5.6465
.70 1.00 1.00 1.2040 .7000 .3000
.70 1.00 2.00 1.0973 .7000 .6584
.70 1.00 4.00 1.0475 .7000 1.3793
.70 1.00 8.00 1.0235 .7000 2.8233
.70 2.00 1.00 2.4079 .7000 .1500
.70 2.00 2.00 2.1945 .7000 .3292
.70 2.00 4.00 2.0950 .7000 .6896
.70 2.00 8.00 2.0469 .7000 1.4116
.70 5.00 1.00 6.0199 .7000 .0600
.70 5.00 2.00 5.4863 .7000 .1317
.70 5.00 4.00 5.2375 .7000 .2759
.70 5.00 8.00 5.1174 .7000 .5647
.80 .50 1.00 .8047 .8000 .4000
.80 .50 2.00 .6343 .8000 1.0149
.80 .50 4.00 .5632 .8000 2.2863
.80 .50 8.00 .5306 .8000 4.8528
.80 1.00 1.00 1.6094 .8000 .2000
.80 1.00 2.00 1.2686 .8000 .5075
.80 1.00 4.00 1.1263 .8000 1.1431
.80 1.00 8.00 1.0613 .8000 2.4264
.80 2.00 1.00 3.2189 .8000 .1000
.80 2.00 2.00 2.5373 .8000 .2537
.80 2.00 4.00 2.2527 .8000 .5716
.80 2.00 8.00 2.1226 .8000 1.2132
.80 5.00 1.00 8.0472 .8000 .0400
.80 5.00 2.00 6.3432 .8000 .1015
.80 5.00 4.00 5.6317 .8000 .2286
.80 5.00 8.00 5.3065 .8000 .4853
.90 .50 1.00 1.1513 .9000 .2000
.90 .50 2.00 .7587 .9000 .6070
.90 .50 4.00 .6159 .9000 1.4954
.90 .50 8.00 .5549 .9000 3.3194
.90 1.00 1.00 2.3026 .9000 .1000
.90 1.00 2.00 1.5174 .9000 .3035
.90 1.00 4.00 1.2318 .9000 .7477
.90 1.00 8.00 1.1099 .9000 1.6597
.90 2.00 1.00 4.6052 .9000 .0500
.90 2.00 2.00 3.0349 .9000 .1517
.90 2.00 4.00 2.4637 .9000 .3738
.90 2.00 8.00 2.2198 .9000 .8298
.90 5.00 1.00 11.5129 .9000 .0200
.90 5.00 2.00 7.5871 .9000 .0607
.90 5.00 4.00 6.1592 .9000 .1495
.90 5.00 8.00 5.5494 .9000 .3319
.99 .50 1.00 2.3026 .9900 .0200
.99 .50 2.00 1.0730 .9900 .0858
.99 .50 4.00 .7325 .9900 .2515
.99 .50 8.00 .6052 .9900 .6088
.99 1.00 1.00 4.6052 .9900 .0100
.99 1.00 2.00 2.1460 .9900 .0429
.99 1.00 4.00 1.4649 .9900 .1257
.99 1.00 8.00 1.2103 .9900 .3044
.99 2.00 1.00 9.2103 .9900 .0050
.99 2.00 2.00 4.2919 .9900 .0215
.99 2.00 4.00 2.9298 .9900 .0629
.99 2.00 8.00 2.4207 .9900 .1522
.99 5.00 1.00 23.0259 .9900 .0020
.99 5.00 2.00 10.7298 .9900 .0086
.99 5.00 4.00 7.3246 .9900 .0251
.99 5.00 8.00 6.0517 .9900 .0609
_ATEOF
cat >weibull.sps <<'_ATEOF'
DATA LIST LIST FILE='weibull.in' NOTABLE SKIP=1
/P a b Xx Xcdf Xpdf.
NUMERIC x cdf pdf (F10.4).
COMPUTE x = IDF.weibull(P, a, b).
COMPUTE cdf = cdf.weibull(x, a, b).
COMPUTE pdf = pdf.weibull(x, a, b).
DO IF $CASENUM = 1.
PRINT OUTFILE='weibull.out'/" P a b x cdf pdf ".
END IF.
PRINT OUTFILE='weibull.out'/P a b x cdf pdf.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/randist.at:2690: pspp -O format=csv weibull.sps"
at_fn_check_prepare_trace "randist.at:2690"
( $at_check_trace; pspp -O format=csv weibull.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:2690"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/randist.at:2690: \$PERL compare.pl weibull.in weibull.out"
at_fn_check_prepare_dynamic "$PERL compare.pl weibull.in weibull.out" "randist.at:2690"
( $at_check_trace; $PERL compare.pl weibull.in weibull.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/randist.at:2690"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1012
#AT_START_1013
at_fn_group_banner 1013 'ascii.at:3' \
"ASCII driver overwriting single-width text" " " 129
at_xfail=no
(
$as_echo "1013. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
## overwriting rest of line
# plain
0 0 0 abc
1 0 0 BCD
# emphasized over plain
0 1 0 efg
1 1 1 FGH
# plain over emphasized
0 2 1 ijk
1 2 0 JKL
# emphasized over emphasized
0 3 1 mno
1 3 1 NOP
## overwriting partial line
# plain
0 5 0 abcdef
0 5 0 A
2 5 0 CDE
# emphasized over plain
0 6 0 ghijkl
0 6 1 G
2 6 1 IJK
# plain over emphasized
0 7 1 mnopqr
0 7 0 M
2 7 0 OPQ
# emphasized over emphasized
0 8 1 stuvwx
0 8 1 S
2 8 1 UVW
## overwriting rest of line with double-width characters
# plain
0 10 0 kakiku
2 10 0 きくけ
# emphasized over plain
0 11 0 kakiku
2 11 1 きくけ
# plain over emphasized
0 12 1 kakiku
2 12 0 きくけ
# emphasized over emphasized
0 13 1 kakiku
2 13 1 きくけ
## overwriting partial line with double-width characters
# plain
0 15 0 kakikukeko
0 15 0 か
4 15 0 くけ
# emphasized over plain
0 16 0 kakikukeko
0 16 1 か
4 16 1 くけ
# plain over emphasized
0 17 1 kakikukeko
0 17 0 か
4 17 0 くけ
# emphasized over emphasized
0 18 1 kakikukeko
0 18 1 か
4 18 1 くけ
_ATEOF
{ set +x
$as_echo "$at_srcdir/ascii.at:70: render-test --draw-mode --emph=none input"
at_fn_check_prepare_trace "ascii.at:70"
( $at_check_trace; render-test --draw-mode --emph=none input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "aBCD
eFGH
iJKL
mNOP
AbCDEf
GhIJKl
MnOPQr
StUVWx
kaきくけ
kaきくけ
kaきくけ
kaきくけ
かkiくけko
かkiくけko
かkiくけko
かkiくけko
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ascii.at:70"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/ascii.at:91: render-test --draw-mode --emph=bold input"
at_fn_check_prepare_trace "ascii.at:91"
( $at_check_trace; render-test --draw-mode --emph=bold input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "aBCD
eFFGGHH
iiJKL
mmNNOOPP
AbCDEf
GGhIIJJKKl
MnnOPQrr
SSttUUVVWWxx
kaきくけ
kaききくくけけ
kkaaきくけ
kkaaききくくけけ
かkiくけko
かかkiくくけけko
かkkiiくけkkoo
かかkkiiくくけけkkoo
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ascii.at:91"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/ascii.at:112: render-test --draw-mode --emph=underline input"
at_fn_check_prepare_trace "ascii.at:112"
( $at_check_trace; render-test --draw-mode --emph=underline input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "aBCD
e_F_G_H
_iJKL
_m_N_O_P
AbCDEf
_Gh_I_J_Kl
M_nOPQ_r
_S_t_U_V_W_x
kaきくけ
ka_き_く_け
_k_aきくけ
_k_a_き_く_け
かkiくけko
_かki_く_けko
か_k_iくけ_k_o
_か_k_i_く_け_k_o
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ascii.at:112"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1013
#AT_START_1014
at_fn_group_banner 1014 'ascii.at:135' \
"ASCII driver overwriting double-width text" " " 129
at_xfail=no
(
$as_echo "1014. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
## overwrite rest of line, aligned double-width over double-width
# plain
0 0 0 あいう
2 0 0 きくけ
# emphasized over plain
0 1 0 あいう
2 1 1 きくけ
# plain over emphasized
0 2 1 あいう
2 2 0 きくけ
# emphasized over emphasized
0 3 1 あいう
2 3 1 きくけ
## overwrite rest of line, misaligned double-width over double-width
# plain
0 5 0 あいう
3 5 0 きくけ
# emphasized over plain
0 6 0 あいう
3 6 1 きくけ
# plain over emphasized
0 7 1 あいう
3 7 0 きくけ
# emphasized over emphasized
0 8 1 あいう
3 8 1 きくけ
## overwrite partial line, aligned double-width over double-width
# plain
0 10 0 あいうえお
0 10 0 か
4 10 0 くけ
# emphasized over plain
0 11 0 あいうえお
0 11 1 か
4 11 1 くけ
# plain over emphasized
0 12 1 あいうえお
0 12 0 か
4 12 0 くけ
# emphasized over emphasized
0 13 1 あいうえお
0 13 1 か
4 13 1 くけ
## overwrite partial line, misaligned double-width over double-width
# plain
0 15 0 あいうえおさ
1 15 0 か
5 15 0 くけ
# emphasized over plain
0 16 0 あいうえおさ
1 16 1 か
5 16 1 くけ
# plain over emphasized
0 17 1 あいうえおさ
1 17 0 か
5 17 0 くけ
# emphasized over emphasized
0 18 1 あいうえおさ
1 18 1 か
5 18 1 くけ
## overwrite rest of line, aligned single-width over double-width
# plain
0 20 0 あいう
2 20 0 kikuko
# emphasized over plain
0 21 0 あいう
2 21 1 kikuko
# plain over emphasized
0 22 1 あいう
2 22 0 kikuko
# emphasized over emphasized
0 23 1 あいう
2 23 1 kikuko
## overwrite rest of line, misaligned single-width over double-width
# plain
0 25 0 あいう
3 25 0 kikuko
# emphasized over plain
0 26 0 あいう
3 26 1 kikuko
# plain over emphasized
0 27 1 あいう
3 27 0 kikuko
# emphasized over emphasized
0 28 1 あいう
3 28 1 kikuko
## overwrite partial line, aligned single-width over double-width
# plain
0 30 0 あいうえお
0 30 0 ka
4 30 0 kuke
# emphasized over plain
0 31 0 あいうえお
0 31 1 ka
4 31 1 kuke
# plain over emphasized
0 32 1 あいうえお
0 32 0 ka
4 32 0 kuke
# emphasized over emphasized
0 33 1 あいうえお
0 33 1 ka
4 33 1 kuke
## overwrite partial line, misaligned single-width over double-width
# plain
0 35 0 あいうえおさ
1 35 0 a
5 35 0 kuke
# emphasized over plain
0 36 0 あいうえおさ
1 36 1 a
5 36 1 kuke
# plain over emphasized
0 37 1 あいうえおさ
1 37 0 a
5 37 0 kuke
# emphasized over emphasized
0 38 1 あいうえおさ
1 38 1 a
5 38 1 kuke
_ATEOF
{ set +x
$as_echo "$at_srcdir/ascii.at:266: render-test --draw-mode --emph=none input"
at_fn_check_prepare_trace "ascii.at:266"
( $at_check_trace; render-test --draw-mode --emph=none input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "あきくけ
あきくけ
あきくけ
あきくけ
あ?きくけ
あ?きくけ
あ?きくけ
あ?きくけ
かいくけお
かいくけお
かいくけお
かいくけお
?か??くけ?さ
?か??くけ?さ
?か??くけ?さ
?か??くけ?さ
あkikuko
あkikuko
あkikuko
あkikuko
あ?kikuko
あ?kikuko
あ?kikuko
あ?kikuko
kaいkukeお
kaいkukeお
kaいkukeお
kaいkukeお
?aい?kuke?さ
?aい?kuke?さ
?aい?kuke?さ
?aい?kuke?さ
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ascii.at:266"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/ascii.at:307: render-test --draw-mode --emph=bold input"
at_fn_check_prepare_trace "ascii.at:307"
( $at_check_trace; render-test --draw-mode --emph=bold input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "あきくけ
あききくくけけ
ああきくけ
ああききくくけけ
あ?きくけ
あ?ききくくけけ
ああ?きくけ
ああ?ききくくけけ
かいくけお
かかいくくけけお
かいいくけおお
かかいいくくけけおお
?か??くけ?さ
?かか??くくけけ?さ
?か??くけ?ささ
?かか??くくけけ?ささ
あkikuko
あkkiikkuukkoo
ああkikuko
ああkkiikkuukkoo
あ?kikuko
あ?kkiikkuukkoo
ああ?kikuko
ああ?kkiikkuukkoo
kaいkukeお
kkaaいkkuukkeeお
kaいいkukeおお
kkaaいいkkuukkeeおお
?aい?kuke?さ
?aaい?kkuukkee?さ
?aいい?kuke?ささ
?aaいい?kkuukkee?ささ
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ascii.at:307"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/ascii.at:348: render-test --draw-mode --emph=underline input"
at_fn_check_prepare_trace "ascii.at:348"
( $at_check_trace; render-test --draw-mode --emph=underline input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "あきくけ
あ_き_く_け
_あきくけ
_あ_き_く_け
あ?きくけ
あ?_き_く_け
_あ?きくけ
_あ?_き_く_け
かいくけお
_かい_く_けお
か_いくけ_お
_か_い_く_け_お
?か??くけ?さ
?_か??_く_け?さ
?か??くけ?_さ
?_か??_く_け?_さ
あkikuko
あ_k_i_k_u_k_o
_あkikuko
_あ_k_i_k_u_k_o
あ?kikuko
あ?_k_i_k_u_k_o
_あ?kikuko
_あ?_k_i_k_u_k_o
kaいkukeお
_k_aい_k_u_k_eお
ka_いkuke_お
_k_a_い_k_u_k_e_お
?aい?kuke?さ
?_aい?_k_u_k_e?さ
?a_い?kuke?_さ
?_a_い?_k_u_k_e?_さ
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ascii.at:348"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1014
#AT_START_1015
at_fn_group_banner 1015 'ascii.at:391' \
"ASCII driver overwriting combining characters" " " 129
at_xfail=no
(
$as_echo "1015. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
## overwriting rest of line, ordinary over combining
# plain
0 0 0 àéî
1 0 0 xyz
# emphasized over plain
0 1 0 àéî
1 1 1 xyz
# plain over emphasized
0 2 1 àéî
1 2 0 xyz
# emphasized over emphasized
0 3 1 àéî
1 3 1 xyz
## overwriting rest of line, combining over ordinary
# plain
0 5 0 xyz
1 5 0 àéî
# emphasized over plain
0 6 0 xyz
1 6 1 àéî
# plain over emphasized
0 7 1 xyz
1 7 0 àéî
# emphasized over emphasized
0 8 1 xyz
1 8 1 àéî
## overwriting partial line, ordinary over combining
# plain
0 10 0 àéîo̧ũẙ
0 10 0 a
2 10 0 iou
# emphasized over plain
0 11 0 àéîo̧ũẙ
0 11 1 a
2 11 1 iou
# plain over emphasized
0 12 1 àéîo̧ũẙ
0 12 0 a
2 12 0 iou
# emphasized over emphasized
0 13 1 àéîo̧ũẙ
0 13 1 a
2 13 1 iou
## overwriting partial line, combining over ordinary
# plain
0 15 0 aeiouy
0 15 0 à
2 15 0 îo̧ũ
# emphasized over plain
0 16 0 aeiouy
0 16 1 à
2 16 1 îo̧ũ
# plain over emphasized
0 17 1 aeiouy
0 17 0 à
2 17 0 îo̧ũ
# emphasized over emphasized
0 18 1 aeiouy
0 18 1 à
2 18 1 îo̧ũ
_ATEOF
{ set +x
$as_echo "$at_srcdir/ascii.at:458: render-test --draw-mode --emph=none input"
at_fn_check_prepare_trace "ascii.at:458"
( $at_check_trace; render-test --draw-mode --emph=none input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "àxyz
àxyz
àxyz
àxyz
xàéî
xàéî
xàéî
xàéî
aéiouẙ
aéiouẙ
aéiouẙ
aéiouẙ
àeîo̧ũy
àeîo̧ũy
àeîo̧ũy
àeîo̧ũy
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ascii.at:458"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/ascii.at:479: render-test --draw-mode --emph=bold input"
at_fn_check_prepare_trace "ascii.at:479"
( $at_check_trace; render-test --draw-mode --emph=bold input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "àxyz
àxxyyzz
aàxyz
aàxxyyzz
xàéî
xaàeéiî
xxàéî
xxaàeéiî
aéiouẙ
aaéiioouuẙ
aeéiouyẙ
aaeéiioouuyẙ
àeîo̧ũy
aàeiîoo̧uũy
àeeîo̧ũyy
aàeeiîoo̧uũyy
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ascii.at:479"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/ascii.at:500: render-test --draw-mode --emph=underline input"
at_fn_check_prepare_trace "ascii.at:500"
( $at_check_trace; render-test --draw-mode --emph=underline input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "àxyz
à_x_y_z
_àxyz
_à_x_y_z
xàéî
x_à_é_î
_xàéî
_x_à_é_î
aéiouẙ
_aé_i_o_uẙ
a_éiou_ẙ
_a_é_i_o_u_ẙ
àeîo̧ũy
_àe_î_o̧_ũy
à_eîo̧ũ_y
_à_e_î_o̧_ũ_y
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ascii.at:500"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1015
#AT_START_1016
at_fn_group_banner 1016 'ascii.at:523' \
"ASCII driver u8_line_set_length" " " 129
at_xfail=no
(
$as_echo "1016. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
0 0 0 àéî
0 1 0 àéî
0 2 0 àéî
0 3 0 àéî
0 4 0 àéî
set-length 0 4
set-length 1 3
set-length 2 2
set-length 3 1
set-length 4 0
0 6 0 あい
0 7 0 あい
0 8 0 あい
0 9 0 あい
0 10 0 あい
0 11 0 あい
set-length 6 5
set-length 7 4
set-length 8 3
set-length 9 2
set-length 10 1
set-length 11 0
_ATEOF
{ set +x
$as_echo "$at_srcdir/ascii.at:550: render-test --draw-mode input"
at_fn_check_prepare_trace "ascii.at:550"
( $at_check_trace; render-test --draw-mode input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "àéî
àéî
àé
à
あい
あい
あ?
あ
?
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ascii.at:550"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1016
#AT_START_1017
at_fn_group_banner 1017 'ascii.at:564' \
"ASCII driver Unicode box characters" " " 129
at_xfail=no
(
$as_echo "1017. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
3 3
1*2 @abc
2*1 @d\ne\nf
2*1 @g\nh\ni
@j
1*2 @klm
_ATEOF
{ set +x
$as_echo "$at_srcdir/ascii.at:573: render-test --box=unicode input"
at_fn_check_prepare_trace "ascii.at:573"
( $at_check_trace; render-test --box=unicode input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "╭───┬─╮
│abc│d│
├─┬─┤e│
│g│j│f│
│h├─┴─┤
│i│klm│
╰─┴───╯
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ascii.at:573"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1017
#AT_START_1018
at_fn_group_banner 1018 'ascii.at:584' \
"ASCII driver syntax printback" " " 129
at_xfail=no
(
$as_echo "1018. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >ascii.sps <<'_ATEOF'
SET PRINTBACK=ON.
DATA LIST LIST /x * y * a (a23).
BEGIN DATA.
1 11 One
2 22 Two
3 33 Three
END DATA.
REGRESSION
/VARIABLES= a
/DEPENDENT= x y
/STATISTICS=COEFF R ANOVA.
_ATEOF
{ set +x
$as_echo "$at_srcdir/ascii.at:599: pspp ascii.sps"
at_fn_check_prepare_trace "ascii.at:599"
( $at_check_trace; pspp ascii.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "SET PRINTBACK=ON.
DATA LIST LIST /x * y * a (a23).
Reading free-form data from INLINE.
+--------+------+
|Variable|Format|
#========#======#
|x |F8.0 |
|y |F8.0 |
|a |A23 |
+--------+------+
BEGIN DATA.
1 11 One
2 22 Two
3 33 Three
END DATA.
REGRESSION
/VARIABLES= a
ascii.sps:11: warning: REGRESSION: a is not a numeric variable. It will not be
included in the variable list.
/DEPENDENT= x y
/STATISTICS=COEFF R ANOVA.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ascii.at:599"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1018
#AT_START_1019
at_fn_group_banner 1019 'ascii.at:631' \
"ASCII unicode box chars" " " 129
at_xfail=no
(
$as_echo "1019. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >uc.sps <<'_ATEOF'
SET FORMAT=F8.4.
DATA LIST NOTABLE LIST /x * .
BEGIN DATA.
1
2
3
END DATA.
DESCRIPTIVES X.
_ATEOF
{ set +x
$as_echo "$at_srcdir/ascii.at:646: pspp -O box=unicode uc.sps"
at_fn_check_prepare_trace "ascii.at:646"
( $at_check_trace; pspp -O box=unicode uc.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Valid cases = 3; cases with missing value(s) = 0.
╭────────╥─┬──────┬───────┬───────┬───────╮
│Variable║N│ Mean │Std Dev│Minimum│Maximum│
╞════════╬═╪══════╪═══════╪═══════╪═══════╡
│x ║3│2.0000│ 1.0000│ 1.0000│ 3.0000│
╰────────╨─┴──────┴───────┴───────┴───────╯
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/ascii.at:646"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1019
#AT_START_1020
at_fn_group_banner 1020 'charts.at:8' \
"Examine" " " 130
at_xfail=no
(
$as_echo "1020. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >charts.sps <<'_ATEOF'
input program.
loop #i = 1 to 1000.
compute x = rv.normal (56, 3) + rv.uniform (1, 1).
compute y = rv.normal (6, 2) + rv.uniform (1, 2).
compute A = rv.uniform (-1, 1).
compute A = (A > 0).
end case.
end loop.
end file.
end input program.
examine x y by a
/plot = histogram, npplot spreadlevel(1)
.
examine x y by a
/compare = groups
/plot = boxplot
.
examine x y by a
/compare = variables
/plot = boxplot
.
_ATEOF
{ set +x
$as_echo "$at_srcdir/charts.at:36: pspp -o pspp.txt charts.sps"
at_fn_check_prepare_trace "charts.at:36"
( $at_check_trace; pspp -o pspp.txt charts.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/charts.at:36"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1020
#AT_START_1021
at_fn_group_banner 1021 'charts.at:40' \
"Roc" " " 130
at_xfail=no
(
$as_echo "1021. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >roc.sps <<'_ATEOF'
data list list /fred * group * w *.
begin data.
99 0 1000
99 1 3
97 0 908
97 1 2
95 0 904
96 1 7
94 1 9
93 0 823
93 1 12
90 0 723
90 1 42
84 0 523
84 1 98
73 0 500
75 1 180
63 0 520
69 1 320
60 0 510
60 1 418
50 0 488
54 1 432
46 0 428
43 1 528
36 0 324
36 1 612
26 0 294
28 1 682
20 0 119
20 1 719
10 0 97
10 1 809
end data.
weight by w.
compute bert = fred + (group < 0.5) * 45.
compute charlie = fred + (group > 0.5) * 15.
ROC /fred bert charlie by group (0)
/plot = curve (reference).
_ATEOF
{ set +x
$as_echo "$at_srcdir/charts.at:88: pspp -o pspp.txt roc.sps"
at_fn_check_prepare_trace "charts.at:88"
( $at_check_trace; pspp -o pspp.txt roc.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/charts.at:88"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1021
#AT_START_1022
at_fn_group_banner 1022 'charts.at:95' \
"Scree" " " 130
at_xfail=no
(
$as_echo "1022. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >scree.sps <<'_ATEOF'
input program.
vector vec(10).
loop #i = 1 to 100.
loop #v = 1 to 3.
compute vec(#v) = rv.normal (0, 45).
end loop.
loop #v = 4 to 10.
compute vec(#v) = vec (#v - 3) + rv.normal (0, 30).
end loop.
end case.
end loop.
end file.
end input program.
factor /variables = all
/print initial
/plot = eigen.
_ATEOF
{ set +x
$as_echo "$at_srcdir/charts.at:118: pspp -o pspp.txt scree.sps"
at_fn_check_prepare_trace "charts.at:118"
( $at_check_trace; pspp -o pspp.txt scree.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/charts.at:118"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1022
#AT_START_1023
at_fn_group_banner 1023 'charts.at:123' \
"Histogram" " " 130
at_xfail=no
(
$as_echo "1023. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >histogram.sps <<'_ATEOF'
* This test is designed to "torture" the code which
generates histograms. It is no-crash test. However
the code is rich in assertions, so any problems we
hope will be caught there.
input program.
loop #i = 1 to 1000.
compute pos = rv.normal (56, 3) + rv.uniform (1, 1).
compute neg = rv.normal (-86, 2) + rv.uniform (1, 1).
compute pn = rv.normal (0, 2) + rv.uniform (1, 2).
compute A = rv.uniform (-1, 1).
compute A = (A > 0).
end case.
end loop.
end file.
end input program.
examine pos neg pn by a
/plot = histogram
.
frequencies pos neg pn
/format=notable
/histogram=normal.
_ATEOF
{ set +x
$as_echo "$at_srcdir/charts.at:155: pspp --testing-mode -o pspp.txt histogram.sps"
at_fn_check_prepare_trace "charts.at:155"
( $at_check_trace; pspp --testing-mode -o pspp.txt histogram.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/charts.at:155"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1023
#AT_START_1024
at_fn_group_banner 1024 'charts.at:160' \
"FREQUENCIES charts" " " 130
at_xfail=no
(
$as_echo "1024. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >xxx.sps <<'_ATEOF'
DATA LIST LIST /nationality (A10) religion (A20) gender (A8).
BEGIN DATA.
Australian Sikh Male
Australian Sikh Male
Australian Sikh Male
Australian Sikh Male
British Zoroastrian Female
British Buddist Female
British Buddist Female
British Zoroastrian Female
German Muslim Male
German Christian Male
German Christian Female
German Christian Male
German Zoroastrian Female
German Sikh Female
German Muslim Female
German Pastafarian Female
German "Jedi Knight" Female
Belgian Sikh Male
French Muslim Male
French Muslim Male
French Christian Male
END DATA.
FREQUENCIES /VARIABLES=religion nationality /BARCHART /PIECHART.
_ATEOF
{ set +x
$as_echo "$at_srcdir/charts.at:192: pspp -o pspp.txt xxx.sps"
at_fn_check_prepare_trace "charts.at:192"
( $at_check_trace; pspp -o pspp.txt xxx.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/charts.at:192"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1024
#AT_START_1025
at_fn_group_banner 1025 'charts.at:198' \
"CROSSTABS charts" " " 130
at_xfail=no
(
$as_echo "1025. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >xxx.sps <<'_ATEOF'
DATA LIST LIST /nationality (A10) religion (A20) gender (A8).
BEGIN DATA.
Australian Sikh Male
Australian Sikh Male
Australian Sikh Male
Australian Sikh Male
British Zoroastrian Female
British Buddist Female
British Buddist Female
British Zoroastrian Female
German Muslim Male
German Christian Male
German Christian Female
German Christian Male
German Zoroastrian Female
German Sikh Female
German Muslim Female
German Pastafarian Female
German "Jedi Knight" Female
Belgian Sikh Male
French Muslim Male
French Muslim Male
French Christian Male
END DATA.
CROSSTABS
/tables = nationality by religion by gender
/tables = nationality by religion
/tables = religion by gender
/tables = nationality by religion by gender
/barchart.
_ATEOF
{ set +x
$as_echo "$at_srcdir/charts.at:235: pspp -o pspp.txt xxx.sps"
at_fn_check_prepare_trace "charts.at:235"
( $at_check_trace; pspp -o pspp.txt xxx.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/charts.at:235"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1025
#AT_START_1026
at_fn_group_banner 1026 'output.at:23' \
"output csv to unwritable directory" " " 131
at_xfail=no
(
$as_echo "1026. $at_setup_line: testing $at_desc ..."
$at_traceon
mkdir unwritable
chmod u-w unwritable
$as_echo "output.at:23" >"$at_check_line_file"
(: > unwritable/test) \
&& at_fn_check_skip 77 "$at_srcdir/output.at:23"
cat >unwritable.sps <<'_ATEOF'
data list /x 1.
begin data.
1
2
3
end data.
frequencies x/histogram.
_ATEOF
{ set +x
$as_echo "$at_srcdir/output.at:23: cd unwritable && pspp -o pspp.csv ../unwritable.sps"
at_fn_check_prepare_trace "output.at:23"
( $at_check_trace; cd unwritable && pspp -o pspp.csv ../unwritable.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/output.at:23"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1026
#AT_START_1027
at_fn_group_banner 1027 'output.at:24' \
"output html to unwritable directory" " " 131
at_xfail=no
(
$as_echo "1027. $at_setup_line: testing $at_desc ..."
$at_traceon
mkdir unwritable
chmod u-w unwritable
$as_echo "output.at:24" >"$at_check_line_file"
(: > unwritable/test) \
&& at_fn_check_skip 77 "$at_srcdir/output.at:24"
cat >unwritable.sps <<'_ATEOF'
data list /x 1.
begin data.
1
2
3
end data.
frequencies x/histogram.
_ATEOF
{ set +x
$as_echo "$at_srcdir/output.at:24: cd unwritable && pspp -o pspp.html ../unwritable.sps"
at_fn_check_prepare_trace "output.at:24"
( $at_check_trace; cd unwritable && pspp -o pspp.html ../unwritable.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/output.at:24"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1027
#AT_START_1028
at_fn_group_banner 1028 'output.at:25' \
"output odt to unwritable directory" " " 131
at_xfail=no
(
$as_echo "1028. $at_setup_line: testing $at_desc ..."
$at_traceon
mkdir unwritable
chmod u-w unwritable
$as_echo "output.at:25" >"$at_check_line_file"
(: > unwritable/test) \
&& at_fn_check_skip 77 "$at_srcdir/output.at:25"
cat >unwritable.sps <<'_ATEOF'
data list /x 1.
begin data.
1
2
3
end data.
frequencies x/histogram.
_ATEOF
{ set +x
$as_echo "$at_srcdir/output.at:25: cd unwritable && pspp -o pspp.odt ../unwritable.sps"
at_fn_check_prepare_trace "output.at:25"
( $at_check_trace; cd unwritable && pspp -o pspp.odt ../unwritable.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/output.at:25"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1028
#AT_START_1029
at_fn_group_banner 1029 'output.at:26' \
"output pdf to unwritable directory" " " 131
at_xfail=no
(
$as_echo "1029. $at_setup_line: testing $at_desc ..."
$at_traceon
mkdir unwritable
chmod u-w unwritable
$as_echo "output.at:26" >"$at_check_line_file"
(: > unwritable/test) \
&& at_fn_check_skip 77 "$at_srcdir/output.at:26"
cat >unwritable.sps <<'_ATEOF'
data list /x 1.
begin data.
1
2
3
end data.
frequencies x/histogram.
_ATEOF
{ set +x
$as_echo "$at_srcdir/output.at:26: cd unwritable && pspp -o pspp.pdf ../unwritable.sps"
at_fn_check_prepare_trace "output.at:26"
( $at_check_trace; cd unwritable && pspp -o pspp.pdf ../unwritable.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/output.at:26"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1029
#AT_START_1030
at_fn_group_banner 1030 'output.at:27' \
"output txt to unwritable directory" " " 131
at_xfail=no
(
$as_echo "1030. $at_setup_line: testing $at_desc ..."
$at_traceon
mkdir unwritable
chmod u-w unwritable
$as_echo "output.at:27" >"$at_check_line_file"
(: > unwritable/test) \
&& at_fn_check_skip 77 "$at_srcdir/output.at:27"
cat >unwritable.sps <<'_ATEOF'
data list /x 1.
begin data.
1
2
3
end data.
frequencies x/histogram.
_ATEOF
{ set +x
$as_echo "$at_srcdir/output.at:27: cd unwritable && pspp -o pspp.txt ../unwritable.sps"
at_fn_check_prepare_trace "output.at:27"
( $at_check_trace; cd unwritable && pspp -o pspp.txt ../unwritable.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/output.at:27"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1030
#AT_START_1031
at_fn_group_banner 1031 'paper-size.at:3' \
"letter default paper size" " " 132
at_xfail=no
(
$as_echo "1031. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >paper-size.sps <<'_ATEOF'
debug paper size ''.
_ATEOF
{ set +x
$as_echo "$at_srcdir/paper-size.at:7: PAPERSIZE=letter pspp --testing-mode -O format=csv paper-size.sps"
at_fn_check_prepare_trace "paper-size.at:7"
( $at_check_trace; PAPERSIZE=letter pspp --testing-mode -O format=csv paper-size.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"\" => 8.5 x 11.0 in, 216 x 279 mm
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/paper-size.at:7"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1031
#AT_START_1032
at_fn_group_banner 1032 'paper-size.at:12' \
"a4 default paper size" " " 132
at_xfail=no
(
$as_echo "1032. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >paper-size.sps <<'_ATEOF'
debug paper size ''.
_ATEOF
{ set +x
$as_echo "$at_srcdir/paper-size.at:16: PAPERSIZE=a4 pspp --testing-mode -O format=csv paper-size.sps"
at_fn_check_prepare_trace "paper-size.at:16"
( $at_check_trace; PAPERSIZE=a4 pspp --testing-mode -O format=csv paper-size.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"\" => 8.3 x 11.7 in, 210 x 297 mm
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/paper-size.at:16"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1032
#AT_START_1033
at_fn_group_banner 1033 'paper-size.at:21' \
"specific paper sizes" " " 132
at_xfail=no
(
$as_echo "1033. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >paper-size.sps <<'_ATEOF'
debug paper size 'a4'.
debug paper size 'letter'.
debug paper size '10x14in'.
debug paper size '210x297mm'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/paper-size.at:29: PAPERSIZE=a4 pspp --testing-mode -O format=csv paper-size.sps"
at_fn_check_prepare_trace "paper-size.at:29"
( $at_check_trace; PAPERSIZE=a4 pspp --testing-mode -O format=csv paper-size.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\"a4\" => 8.3 x 11.7 in, 210 x 297 mm
\"letter\" => 8.5 x 11.0 in, 216 x 279 mm
\"10x14in\" => 10.0 x 14.0 in, 254 x 356 mm
\"210x297mm\" => 8.3 x 11.7 in, 210 x 297 mm
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/paper-size.at:29"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1033
#AT_START_1034
at_fn_group_banner 1034 'render.at:161' \
"single cell" " " 133
at_xfail=no
(
$as_echo "1034. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
1 1
abc
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:166: render-test input"
at_fn_check_prepare_trace "render.at:166"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "abc
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:166"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1034
#AT_START_1035
at_fn_group_banner 1035 'render.at:170' \
"nested single cell" " " 133
at_xfail=no
(
$as_echo "1035. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
1 1
abc
1 1
{0}
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:177: render-test input"
at_fn_check_prepare_trace "render.at:177"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "abc
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:177"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1035
#AT_START_1036
at_fn_group_banner 1036 'render.at:181' \
"single cell with border" " " 133
at_xfail=no
(
$as_echo "1036. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
1 1
@abc
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:186: render-test input"
at_fn_check_prepare_trace "render.at:186"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+---+
|abc|
+---+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:186"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1036
#AT_START_1037
at_fn_group_banner 1037 'render.at:193' \
"nested single cell with border" " " 133
at_xfail=no
(
$as_echo "1037. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
1 1
@abc
1 1
@{0}
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:200: render-test input"
at_fn_check_prepare_trace "render.at:200"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-----+
|+---+|
||abc||
|+---+|
+-----+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:200"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1037
#AT_START_1038
at_fn_group_banner 1038 'render.at:209' \
"joined columns" " " 133
at_xfail=no
(
$as_echo "1038. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
2 2
1*2 @abcdefg
@hij
@klm
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:216: render-test input"
at_fn_check_prepare_trace "render.at:216"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-------+
|abcdefg|
+---+---+
|hij|klm|
+---+---+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:216"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1038
#AT_START_1039
at_fn_group_banner 1039 'render.at:225' \
"3x3, joined rows and columns" " " 133
at_xfail=no
(
$as_echo "1039. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
3 3
1*2 @abc
2*1 @d\ne\nf
2*1 @g\nh\ni
@j
1*2 @klm
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:234: render-test input"
at_fn_check_prepare_trace "render.at:234"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+---+-+
|abc|d|
+-+-+e|
|g|j|f|
|h+-+-+
|i|klm|
+-+---+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:234"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1039
#AT_START_1040
at_fn_group_banner 1040 'render.at:245' \
"joined rows and columns (with footnotes)" " " 133
at_xfail=no
(
$as_echo "1040. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
3 3
1*2 @abc#Approximation.
2*1 @d\ne\nf#This is a very long footnote that will have to wrap from one line to the next. Let's see if the rendering engine does it acceptably.
2*1 @g\nh\ni#One#Two#Three
@j
1*2 @klm
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:254: render-test --csv input"
at_fn_check_prepare_trace "render.at:254"
( $at_check_trace; render-test --csv input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+------------+----+
| abc[a]| d|
+----------+-+ e|
| g|j|f[b]|
| h+-+----+
|i[c][d][e]| klm|
+----------+------+
[a] Approximation.
[b] This is a very long footnote that will have to wrap from one line to the
next. Let's see if the rendering engine does it acceptably.
[c] One
[d] Two
[e] Three
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:254"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:269: cat render.csv"
at_fn_check_prepare_trace "render.at:269"
( $at_check_trace; cat render.csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "abc[a],,\"d
e
f[b]\"
\"g
h
i[c][d][e]\",j,
,klm,
Footnotes:
a,Approximation.
b,This is a very long footnote that will have to wrap from one line to the next. Let's see if the rendering engine does it acceptably.
c,One
d,Two
e,Three
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:269"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1040
#AT_START_1041
at_fn_group_banner 1041 'render.at:287' \
"6x6, joined rows and columns" " " 133
at_xfail=no
(
$as_echo "1041. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
6 6
@a
1*2 @bcd
@e
2*1 @f\ng\nh
@i
2*1 @j\nk\nl
@m
1*2 @nop
2*1 @q\nr\ns
2*1 @t\nu\nv
@w
1*2 @xyz
@A
2*1 @B\nC\nD
@E
1*2 @FGH
1*2 @IJK
2*1 @L\nM\nN
@O
@P
@Q
1*2 @RST
@U
@V
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:290: render-test input"
at_fn_check_prepare_trace "render.at:290"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-+---+-+-+-+
|a|bcd|e|f|i|
+-+-+-+-+g+-+
|j|m|nop|h|q|
|k+-+-+-+-+r|
|l|t|w|xyz|s|
+-+u+-+-+-+-+
|A|v|B|E|FGH|
+-+-+C+-+-+-+
|IJK|D|L|O|P|
+-+-+-+M+-+-+
|Q|RST|N|U|V|
+-+---+-+-+-+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:290"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1041
#AT_START_1042
at_fn_group_banner 1042 'render.at:307' \
"3 rows with many joined cells" " " 133
at_xfail=no
(
$as_echo "1042. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
3 19
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
@1
1*2 @2
1*2 @3
1*2 @4
1*2 @5
1*2 @6
1*2 @7
1*2 @8
1*2 @9
1*2 @10
1*2 @11
1*2 @12
1*2 @13
1*2 @14
1*2 @15
1*2 @16
1*2 @17
1*2 @18
1*2 @19
@20
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:316: render-test input"
at_fn_check_prepare_trace "render.at:316"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " a b c d e f g h i j k l m n o p q r s
+-+---+---+---+---+---+---+---+---+----+
|1| 2| 3| 4| 5| 6| 7| 8| 9| 10|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+--+
| 11| 12| 13| 14| 15| 16| 17| 18| 19|20|
+---+---+---+---+---+---+---+---+---+--+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:316"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1042
#AT_START_1043
at_fn_group_banner 1043 'render.at:326' \
"3 columns with many joined cells" " " 133
at_xfail=no
(
$as_echo "1043. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
3 19
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
@1
1*2 @2\nab\ncd
1*2 @3\nab\ncd
1*2 @4\nab\ncd
1*2 @5\nab\ncd
1*2 @6\nab\ncd
1*2 @7\nab\ncd
1*2 @8\nab\ncd
1*2 @9\nab\ncd
1*2 @10\nab\ncd
1*2 @11\nab\ncd
1*2 @12\nab\ncd
1*2 @13\nab\ncd
1*2 @14\nab\ncd
1*2 @15\nab\ncd
1*2 @16\nab\ncd
1*2 @17\nab\ncd
1*2 @18\nab\ncd
1*2 @19\nab\ncd
@20
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:335: render-test --transpose input"
at_fn_check_prepare_trace "render.at:335"
( $at_check_trace; render-test --transpose input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " +--+--+
a| 1|11|
+--+ab|
b| 2|cd|
|ab+--+
c|cd|12|
+--+ab|
d| 3|cd|
|ab+--+
e|cd|13|
+--+ab|
f| 4|cd|
|ab+--+
g|cd|14|
+--+ab|
h| 5|cd|
|ab+--+
i|cd|15|
+--+ab|
j| 6|cd|
|ab+--+
k|cd|16|
+--+ab|
l| 7|cd|
|ab+--+
m|cd|17|
+--+ab|
n| 8|cd|
|ab+--+
o|cd|18|
+--+ab|
p| 9|cd|
|ab+--+
q|cd|19|
+--+ab|
r|10|cd|
|ab+--+
s|cd|20|
+--+--+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:335"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1043
#AT_START_1044
at_fn_group_banner 1044 'render.at:378' \
"joined rows" " " 133
at_xfail=no
(
$as_echo "1044. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
2 2
2*1 @ab\ncd\nef
@hij
@klm
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:385: render-test input"
at_fn_check_prepare_trace "render.at:385"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+--+---+
|ab|hij|
|cd+---+
|ef|klm|
+--+---+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:385"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1044
#AT_START_1045
at_fn_group_banner 1045 'render.at:394' \
"nested joined rows" " " 133
at_xfail=no
(
$as_echo "1045. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
2 2
2*1 @ab\ncd\nef
@hij
@klm
1 1
@{0}
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:403: render-test input"
at_fn_check_prepare_trace "render.at:403"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+--------+
|+--+---+|
||ab|hij||
||cd+---+|
||ef|klm||
|+--+---+|
+--------+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:403"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1045
#AT_START_1046
at_fn_group_banner 1046 'render.at:416' \
"joined rows only, no rules" " " 133
at_xfail=no
(
$as_echo "1046. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
2 2
2*1 ab\ncd\nef
2*1 hij\nklm\nnop
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:422: render-test input"
at_fn_check_prepare_trace "render.at:422"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "ab hij
cd klm
ef nop
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:422"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1046
#AT_START_1047
at_fn_group_banner 1047 'render.at:429' \
"joined columns only, no rules" " " 133
at_xfail=no
(
$as_echo "1047. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
2 2
1*2 abc\ndef
1*2 hij\nklm\nnop
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:435: render-test input"
at_fn_check_prepare_trace "render.at:435"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "abc
def
hij
klm
nop
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:435"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1047
#AT_START_1048
at_fn_group_banner 1048 'render.at:444' \
"5 big narrow cells" " " 133
at_xfail=no
(
$as_echo "1048. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
1 5
@This cell has a lot of text but its minimum width is pretty narrow.
@This cell also has a lot of text but its minimum width is pretty narrow.
@A third cell with a lot of text but a pretty narrow minimum width.
@A fourth cell with a lot of text but a pretty narrow minimum width.
@A fifth cell with a lot of text but a pretty narrow minimum width.
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:453: render-test input"
at_fn_check_prepare_trace "render.at:453"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+---------------+---------------+--------------+---------------+--------------+
|This cell has a| This cell also| A third cell| A fourth cell| A fifth cell|
|lot of text but| has a lot of| with a lot of| with a lot of| with a lot of|
| its minimum| text but its| text but a| text but a| text but a|
|width is pretty| minimum width| pretty narrow| pretty narrow| pretty narrow|
| narrow.| is pretty|minimum width.| minimum width.|minimum width.|
| | narrow.| | | |
+---------------+---------------+--------------+---------------+--------------+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:453"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1048
#AT_START_1049
at_fn_group_banner 1049 'render.at:465' \
"9 big narrow cells" " " 133
at_xfail=no
(
$as_echo "1049. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
1 9
@This cell has a lot of text but its minimum width is pretty narrow.
@This cell also has a lot of text but its minimum width is pretty narrow.
@A third cell with a lot of text but a pretty narrow minimum width.
@A fourth cell with a lot of text but a pretty narrow minimum width.
@A fifth cell with a lot of text but a pretty narrow minimum width.
@A sixth cell with a lot of text but a pretty narrow minimum width.
@A seventh cell with a lot of text but a pretty narrow minimum width.
@A eighth cell with a lot of text but a pretty narrow minimum width.
@A ninth cell with a lot of text but a pretty narrow minimum width.
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:478: render-test input"
at_fn_check_prepare_trace "render.at:478"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+--------+-------+--------+--------+-------+--------+--------+-------+--------+
| This| This| A third|A fourth|A fifth| A sixth| A| A| A ninth|
|cell has| cell| cell| cell| cell| cell| seventh| eighth| cell|
|a lot of| also| with a| with a| with a| with a| cell| cell| with a|
|text but| has a| lot of| lot of| lot of| lot of| with a| with a| lot of|
| its| lot of|text but|text but| text|text but| lot of| lot of|text but|
| minimum| text|a pretty|a pretty| but a|a pretty|text but| text|a pretty|
|width is|but its| narrow| narrow| pretty| narrow|a pretty| but a| narrow|
| pretty|minimum| minimum| minimum| narrow| minimum| narrow| pretty| minimum|
| narrow.| width| width.| width.|minimum| width.| minimum| narrow| width.|
| | is| | | width.| | width.|minimum| |
| | pretty| | | | | | width.| |
| |narrow.| | | | | | | |
+--------+-------+--------+--------+-------+--------+--------+-------+--------+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:478"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1049
#AT_START_1050
at_fn_group_banner 1050 'render.at:496' \
"2 big cells with new-lines" " " 133
at_xfail=no
(
$as_echo "1050. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
1 2
@PSPP does not place many restrictions on ordering of commands. The main restriction is that variables must be defined before they are otherwise referenced. This section describes the details of command ordering, but most users will have no need to refer to them. PSPP possesses five internal states, called initial, INPUT PROGRAM, FILE TYPE, transformation, and procedure states.
@PSPP includes special support\nfor unknown numeric data values.\nMissing observations are assigned\na special value, called the\n``system‑missing value''. This\n``value'' actually indicates the\nabsence of a value; it\nmeans that the actual\nvalue is unknown.
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:502: render-test input"
at_fn_check_prepare_trace "render.at:502"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+----------------------------------------------------------+------------------+
| PSPP does not place many restrictions on ordering of| PSPP includes|
| commands. The main restriction is that variables must be| special support|
| defined before they are otherwise referenced. This| for unknown|
| section describes the details of command ordering, but| numeric data|
| most users will have no need to refer to them. PSPP| values.|
| possesses five internal states, called initial, INPUT| Missing|
| PROGRAM, FILE TYPE, transformation, and procedure states.| observations are|
| | assigned|
| | a special value,|
| | called the|
| | \`\`system‑missing|
| | value''. This|
| |\`\`value'' actually|
| | indicates the|
| | absence of a|
| | value; it|
| | means that the|
| | actual|
| | value is unknown.|
+----------------------------------------------------------+------------------+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:502"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1050
#AT_START_1051
at_fn_group_banner 1051 'render.at:527' \
"8x8 with many 2x2 joins" " " 133
at_xfail=no
(
$as_echo "1051. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
8 8
2*2 @abc\ndef\nghi
1*2 @jkl
2*2 @mno\npqr\nstu
1*2 @vwx
2*2 @yzA\nBCD\nEFG
2*2 @HIJ\nKLM\nNOP
3*1 @Q\nR\nS\nT\nU
@V
2*1 @W\nX\nY
@Z
2*2 @012\n345\n678
@9
2*2 @abc\ndef\nghi
3*1 @j\nk\nl\nm\nn
2*2 @opq\nrst\nuvw
2*2 @xyz\nABC\nDEF
2*1 @G\nH\nI
1*2 @JKL
2*3 @MNOPQ\nRSTUV\nWXYZ0
2*2 @123\n456\n789
1*3 @abcde
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:530: render-test input"
at_fn_check_prepare_trace "render.at:530"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+---+---+----+----+
|abc|jkl| mno| vwx|
|def| | pqr| |
|ghi+---+ stu+----+
| |yzA| | HIJ|
+-+-+BCD+-+--+ KLM|
|Q|V|EFG|W| Z| NOP|
|R| | |X| | |
|S+-+-+-+Y+--+-+--+
|T|012|9| | abc| j|
|U|345| | | def| k|
| |678+-+-+ ghi| l|
| | |opq| | m|
+-+-+-+rst+----+ n|
|xyz|G|uvw| JKL| |
|ABC|H| | | |
|DEF|I+---+--+-+--+
| | | MNOPQ| 123|
+---+-+ RSTUV| 456|
|abcde| WXYZ0| 789|
| | | |
+-----+------+----+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:530"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1051
#AT_START_1052
at_fn_group_banner 1052 'render.at:556' \
"nested 8x8" " " 133
at_xfail=no
(
$as_echo "1052. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
8 8
@a
@b
@c
@d
@e
@f
@g
@h
@i
1*2 @jkl
@m
1*2 @nop
2*1 @q\nr\ns
@t
@u
@v
1*2 @wxy
@z
2*1 @A\nB\nC
@D
@E
2*1 @F\nG\nH
@I
1*2 @JKL
2*1 @M\nN\nO
@P
@Q
2*1 @R\nS\nT
1*2 @UVW
@X
@Y
@Z
2*1 @0\n1\n2
@3
1*2 @456
@7
@8
@9
1*2 @abc
@d
1*2 @efg
@h
@i
@j
@k
@l
@m
@n
@o
@p
1 1
@{0}
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:562: render-test input"
at_fn_check_prepare_trace "render.at:562"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-----------------+
|+-+-+-+-+-+-+-+-+|
||a|b|c|d|e|f|g|h||
|+-+-+-+-+-+-+-+-+|
||i|jkl|m|nop|q|t||
|+-+-+-+-+-+-+r+-+|
||u|v|wxy|z|A|s|D||
|+-+-+-+-+-+B+-+-+|
||E|F|I|JKL|C|M|P||
|+-+G+-+---+-+N+-+|
||Q|H|R|UVW|X|O|Y||
|+-+-+S+-+-+-+-+-+|
||Z|0|T|3|456|7|8||
|+-+1+-+-+-+-+-+-+|
||9|2|abc|d|efg|h||
|+-+-+-+-+-+-+-+-+|
||i|j|k|l|m|n|o|p||
|+-+-+-+-+-+-+-+-+|
+-----------------+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:562"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1052
#AT_START_1053
at_fn_group_banner 1053 'render.at:585' \
"nested 8x8s and 6x6s" " " 133
at_xfail=no
(
$as_echo "1053. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
8 8
@a
@b
@c
@d
@e
@f
@g
@h
@i
1*2 @jkl
@m
1*2 @nop
2*1 @q\nr\ns
@t
@u
@v
1*2 @wxy
@z
2*1 @A\nB\nC
@D
@E
2*1 @F\nG\nH
@I
1*2 @JKL
2*1 @M\nN\nO
@P
@Q
2*1 @R\nS\nT
1*2 @UVW
@X
@Y
@Z
2*1 @0\n1\n2
@3
1*2 @456
@7
@8
@9
1*2 @abc
@d
1*2 @efg
@h
@i
@j
@k
@l
@m
@n
@o
@p
6 6
@a
1*2 @bcd
@e
2*1 @f\ng\nh
@i
2*1 @j\nk\nl
@m
1*2 @nop
2*1 @q\nr\ns
2*1 @t\nu\nv
@w
1*2 @xyz
@A
2*1 @B\nC\nD
@E
1*2 @FGH
1*2 @IJK
2*1 @L\nM\nN
@O
@P
@Q
1*2 @RST
@U
@V
4 2
@{0}
@{1}
@{1}
@|{1}
@|{1}
@({1}
@({1}
@{0}
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:598: render-test input"
at_fn_check_prepare_trace "render.at:598"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-----------------+-----------------+
|+-+-+-+-+-+-+-+-+| +-+---+-+-+-+|
||a|b|c|d|e|f|g|h|| |a|bcd|e|f|i||
|+-+-+-+-+-+-+-+-+| +-+-+-+-+g+-+|
||i|jkl|m|nop|q|t|| |j|m|nop|h|q||
|+-+-+-+-+-+-+r+-+| |k+-+-+-+-+r||
||u|v|wxy|z|A|s|D|| |l|t|w|xyz|s||
|+-+-+-+-+-+B+-+-+| +-+u+-+-+-+-+|
||E|F|I|JKL|C|M|P|| |A|v|B|E|FGH||
|+-+G+-+---+-+N+-+| +-+-+C+-+-+-+|
||Q|H|R|UVW|X|O|Y|| |IJK|D|L|O|P||
|+-+-+S+-+-+-+-+-+| +-+-+-+M+-+-+|
||Z|0|T|3|456|7|8|| |Q|RST|N|U|V||
|+-+1+-+-+-+-+-+-+| +-+---+-+-+-+|
||9|2|abc|d|efg|h|| |
|+-+-+-+-+-+-+-+-+| |
||i|j|k|l|m|n|o|p|| |
|+-+-+-+-+-+-+-+-+| |
+-----------------+-----------------+
| +-+---+-+-+-+| +-+---+-+-+-+ |
| |a|bcd|e|f|i|| |a|bcd|e|f|i| |
| +-+-+-+-+g+-+| +-+-+-+-+g+-+ |
| |j|m|nop|h|q|| |j|m|nop|h|q| |
| |k+-+-+-+-+r|| |k+-+-+-+-+r| |
| |l|t|w|xyz|s|| |l|t|w|xyz|s| |
| +-+u+-+-+-+-+| +-+u+-+-+-+-+ |
| |A|v|B|E|FGH|| |A|v|B|E|FGH| |
| +-+-+C+-+-+-+| +-+-+C+-+-+-+ |
| |IJK|D|L|O|P|| |IJK|D|L|O|P| |
| +-+-+-+M+-+-+| +-+-+-+M+-+-+ |
| |Q|RST|N|U|V|| |Q|RST|N|U|V| |
| +-+---+-+-+-+| +-+---+-+-+-+ |
+-----------------+-----------------+
| +-+---+-+-+-+ |+-+---+-+-+-+ |
| |a|bcd|e|f|i| ||a|bcd|e|f|i| |
| +-+-+-+-+g+-+ |+-+-+-+-+g+-+ |
| |j|m|nop|h|q| ||j|m|nop|h|q| |
| |k+-+-+-+-+r| ||k+-+-+-+-+r| |
| |l|t|w|xyz|s| ||l|t|w|xyz|s| |
| +-+u+-+-+-+-+ |+-+u+-+-+-+-+ |
| |A|v|B|E|FGH| ||A|v|B|E|FGH| |
| +-+-+C+-+-+-+ |+-+-+C+-+-+-+ |
| |IJK|D|L|O|P| ||IJK|D|L|O|P| |
| +-+-+-+M+-+-+ |+-+-+-+M+-+-+ |
| |Q|RST|N|U|V| ||Q|RST|N|U|V| |
| +-+---+-+-+-+ |+-+---+-+-+-+ |
+-----------------+-----------------+
|+-+---+-+-+-+ |+-+-+-+-+-+-+-+-+|
||a|bcd|e|f|i| ||a|b|c|d|e|f|g|h||
|+-+-+-+-+g+-+ |+-+-+-+-+-+-+-+-+|
||j|m|nop|h|q| ||i|jkl|m|nop|q|t||
||k+-+-+-+-+r| |+-+-+-+-+-+-+r+-+|
||l|t|w|xyz|s| ||u|v|wxy|z|A|s|D||
|+-+u+-+-+-+-+ |+-+-+-+-+-+B+-+-+|
||A|v|B|E|FGH| ||E|F|I|JKL|C|M|P||
|+-+-+C+-+-+-+ |+-+G+-+---+-+N+-+|
||IJK|D|L|O|P| ||Q|H|R|UVW|X|O|Y||
|+-+-+-+M+-+-+ |+-+-+S+-+-+-+-+-+|
||Q|RST|N|U|V| ||Z|0|T|3|456|7|8||
|+-+---+-+-+-+ |+-+1+-+-+-+-+-+-+|
| ||9|2|abc|d|efg|h||
| |+-+-+-+-+-+-+-+-+|
| ||i|j|k|l|m|n|o|p||
| |+-+-+-+-+-+-+-+-+|
+-----------------+-----------------+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:598"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1053
#AT_START_1054
at_fn_group_banner 1054 'render.at:667' \
"doubly nested cells" " " 133
at_xfail=no
(
$as_echo "1054. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
8 8
@a
@b
@c
@d
@e
@f
@g
@h
@i
1*2 @jkl
@m
1*2 @nop
2*1 @q\nr\ns
@t
@u
@v
1*2 @wxy
@z
2*1 @A\nB\nC
@D
@E
2*1 @F\nG\nH
@I
1*2 @JKL
2*1 @M\nN\nO
@P
@Q
2*1 @R\nS\nT
1*2 @UVW
@X
@Y
@Z
2*1 @0\n1\n2
@3
1*2 @456
@7
@8
@9
1*2 @abc
@d
1*2 @efg
@h
@i
@j
@k
@l
@m
@n
@o
@p
6 6
@a
1*2 @bcd
@e
2*1 @f\ng\nh
@i
2*1 @j\nk\nl
@m
1*2 @nop
2*1 @q\nr\ns
2*1 @t\nu\nv
@w
1*2 @xyz
@A
2*1 @B\nC\nD
@E
1*2 @FGH
1*2 @IJK
2*1 @L\nM\nN
@O
@P
@Q
1*2 @RST
@U
@V
4 2
@{0}
@{1}
@{1}
@|{1}
@|{1}
@({1}
@({1}
@{0}
1 1
@{2}
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:682: render-test input --length=70"
at_fn_check_prepare_trace "render.at:682"
( $at_check_trace; render-test input --length=70
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-------------------------------------+
|+-----------------+-----------------+|
||+-+-+-+-+-+-+-+-+| +-+---+-+-+-+||
|||a|b|c|d|e|f|g|h|| |a|bcd|e|f|i|||
||+-+-+-+-+-+-+-+-+| +-+-+-+-+g+-+||
|||i|jkl|m|nop|q|t|| |j|m|nop|h|q|||
||+-+-+-+-+-+-+r+-+| |k+-+-+-+-+r|||
|||u|v|wxy|z|A|s|D|| |l|t|w|xyz|s|||
||+-+-+-+-+-+B+-+-+| +-+u+-+-+-+-+||
|||E|F|I|JKL|C|M|P|| |A|v|B|E|FGH|||
||+-+G+-+---+-+N+-+| +-+-+C+-+-+-+||
|||Q|H|R|UVW|X|O|Y|| |IJK|D|L|O|P|||
||+-+-+S+-+-+-+-+-+| +-+-+-+M+-+-+||
|||Z|0|T|3|456|7|8|| |Q|RST|N|U|V|||
||+-+1+-+-+-+-+-+-+| +-+---+-+-+-+||
|||9|2|abc|d|efg|h|| ||
||+-+-+-+-+-+-+-+-+| ||
|||i|j|k|l|m|n|o|p|| ||
||+-+-+-+-+-+-+-+-+| ||
|+-----------------+-----------------+|
|| +-+---+-+-+-+| +-+---+-+-+-+ ||
|| |a|bcd|e|f|i|| |a|bcd|e|f|i| ||
|| +-+-+-+-+g+-+| +-+-+-+-+g+-+ ||
|| |j|m|nop|h|q|| |j|m|nop|h|q| ||
|| |k+-+-+-+-+r|| |k+-+-+-+-+r| ||
|| |l|t|w|xyz|s|| |l|t|w|xyz|s| ||
|| +-+u+-+-+-+-+| +-+u+-+-+-+-+ ||
|| |A|v|B|E|FGH|| |A|v|B|E|FGH| ||
|| +-+-+C+-+-+-+| +-+-+C+-+-+-+ ||
|| |IJK|D|L|O|P|| |IJK|D|L|O|P| ||
|| +-+-+-+M+-+-+| +-+-+-+M+-+-+ ||
|| |Q|RST|N|U|V|| |Q|RST|N|U|V| ||
|| +-+---+-+-+-+| +-+---+-+-+-+ ||
|+-----------------+-----------------+|
|| +-+---+-+-+-+ |+-+---+-+-+-+ ||
|| |a|bcd|e|f|i| ||a|bcd|e|f|i| ||
|| +-+-+-+-+g+-+ |+-+-+-+-+g+-+ ||
|| |j|m|nop|h|q| ||j|m|nop|h|q| ||
|| |k+-+-+-+-+r| ||k+-+-+-+-+r| ||
|| |l|t|w|xyz|s| ||l|t|w|xyz|s| ||
|| +-+u+-+-+-+-+ |+-+u+-+-+-+-+ ||
|| |A|v|B|E|FGH| ||A|v|B|E|FGH| ||
|| +-+-+C+-+-+-+ |+-+-+C+-+-+-+ ||
|| |IJK|D|L|O|P| ||IJK|D|L|O|P| ||
|| +-+-+-+M+-+-+ |+-+-+-+M+-+-+ ||
|| |Q|RST|N|U|V| ||Q|RST|N|U|V| ||
|| +-+---+-+-+-+ |+-+---+-+-+-+ ||
|+-----------------+-----------------+|
||+-+---+-+-+-+ |+-+-+-+-+-+-+-+-+||
|||a|bcd|e|f|i| ||a|b|c|d|e|f|g|h|||
||+-+-+-+-+g+-+ |+-+-+-+-+-+-+-+-+||
|||j|m|nop|h|q| ||i|jkl|m|nop|q|t|||
|||k+-+-+-+-+r| |+-+-+-+-+-+-+r+-+||
|||l|t|w|xyz|s| ||u|v|wxy|z|A|s|D|||
||+-+u+-+-+-+-+ |+-+-+-+-+-+B+-+-+||
|||A|v|B|E|FGH| ||E|F|I|JKL|C|M|P|||
||+-+-+C+-+-+-+ |+-+G+-+---+-+N+-+||
|||IJK|D|L|O|P| ||Q|H|R|UVW|X|O|Y|||
||+-+-+-+M+-+-+ |+-+-+S+-+-+-+-+-+||
|||Q|RST|N|U|V| ||Z|0|T|3|456|7|8|||
||+-+---+-+-+-+ |+-+1+-+-+-+-+-+-+||
|| ||9|2|abc|d|efg|h|||
|| |+-+-+-+-+-+-+-+-+||
|| ||i|j|k|l|m|n|o|p|||
|| |+-+-+-+-+-+-+-+-+||
|+-----------------+-----------------+|
+-------------------------------------+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:682"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1054
#AT_START_1055
at_fn_group_banner 1055 'render.at:755' \
"breaking row of many small cells" " " 134
at_xfail=no
(
$as_echo "1055. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
1 50
@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
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:761: render-test input"
at_fn_check_prepare_trace "render.at:761"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-+-+-+-+-+-+-+-+-+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|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|
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:761"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:770: render-test input -o mb0 --min-break=0"
at_fn_check_prepare_trace "render.at:770"
( $at_check_trace; render-test input -o mb0 --min-break=0
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-+-+-+-+-+-+-+-+-+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|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|
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:770"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1055
#AT_START_1056
at_fn_group_banner 1056 'render.at:781' \
"breaking row of many small cells, with headers" " " 134
at_xfail=no
(
$as_echo "1056. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
1 54 2 2
@ha
@hb
@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
@hc
@hd
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:792: render-test input"
at_fn_check_prepare_trace "render.at:792"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+--+--+-+-+-+-+-+-+-+-+-+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|ha|hb|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|hc|hd|
+--+--+-+-+-+-+-+-+-+-+-+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|ha|hb|26|27|28|29|30|31|32|33|34|35|36|37|38|39|40|41|42|43|44|45|46|47|hc|hd|
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
+--+--+--+--+--+--+--+
|ha|hb|48|49|50|hc|hd|
+--+--+--+--+--+--+--+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:792"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:805: render-test -o mb0 --min-break=0 input"
at_fn_check_prepare_trace "render.at:805"
( $at_check_trace; render-test -o mb0 --min-break=0 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+--+--+-+-+-+-+-+-+-+-+-+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|ha|hb|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|hc|hd|
+--+--+-+-+-+-+-+-+-+-+-+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|ha|hb|26|27|28|29|30|31|32|33|34|35|36|37|38|39|40|41|42|43|44|45|46|47|hc|hd|
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
+--+--+--+--+--+--+--+
|ha|hb|48|49|50|hc|hd|
+--+--+--+--+--+--+--+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:805"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1056
#AT_START_1057
at_fn_group_banner 1057 'render.at:820' \
"breaking row of many medium-size cells" " " 134
at_xfail=no
(
$as_echo "1057. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
1 50
@cell 1
@cell 2
@cell 3
@cell 4
@cell 5
@cell 6
@cell 7
@cell 8
@cell 9
@cell 10
@cell 11
@cell 12
@cell 13
@cell 14
@cell 15
@cell 16
@cell 17
@cell 18
@cell 19
@cell 20
@cell 21
@cell 22
@cell 23
@cell 24
@cell 25
@cell 26
@cell 27
@cell 28
@cell 29
@cell 30
@cell 31
@cell 32
@cell 33
@cell 34
@cell 35
@cell 36
@cell 37
@cell 38
@cell 39
@cell 40
@cell 41
@cell 42
@cell 43
@cell 44
@cell 45
@cell 46
@cell 47
@cell 48
@cell 49
@cell 50
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:826: render-test input"
at_fn_check_prepare_trace "render.at:826"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+
|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|
| 1| 2| 3| 4| 5| 6| 7| 8| 9| 10| 11| 12| 13| 14| 15|
+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+
+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+
|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|
| 16| 17| 18| 19| 20| 21| 22| 23| 24| 25| 26| 27| 28| 29| 30|
+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+
+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+
|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|
| 31| 32| 33| 34| 35| 36| 37| 38| 39| 40| 41| 42| 43| 44| 45|
+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+
+----+----+----+----+----+
|cell|cell|cell|cell|cell|
| 46| 47| 48| 49| 50|
+----+----+----+----+----+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:826"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:847: render-test -o mb0 --min-break=0 input"
at_fn_check_prepare_trace "render.at:847"
( $at_check_trace; render-test -o mb0 --min-break=0 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+---
|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cel
| 1| 2| 3| 4| 5| 6| 7| 8| 9| 10| 11| 12| 13| 14| 15| 1
+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+---
-+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+--
l|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|ce
6| 17| 18| 19| 20| 21| 22| 23| 24| 25| 26| 27| 28| 29| 30| 31|
-+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+--
--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+-
ll|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|c
32| 33| 34| 35| 36| 37| 38| 39| 40| 41| 42| 43| 44| 45| 46| 47|
--+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+-
---+----+----+
ell|cell|cell|
48| 49| 50|
---+----+----+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:847"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1057
#AT_START_1058
at_fn_group_banner 1058 'render.at:870' \
"breaking row of many medium-size cells, with headers" "" 134
at_xfail=no
(
$as_echo "1058. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
1 52 1 1
header1
@cell 1
@cell 2
@cell 3
@cell 4
@cell 5
@cell 6
@cell 7
@cell 8
@cell 9
@cell 10
@cell 11
@cell 12
@cell 13
@cell 14
@cell 15
@cell 16
@cell 17
@cell 18
@cell 19
@cell 20
@cell 21
@cell 22
@cell 23
@cell 24
@cell 25
@cell 26
@cell 27
@cell 28
@cell 29
@cell 30
@cell 31
@cell 32
@cell 33
@cell 34
@cell 35
@cell 36
@cell 37
@cell 38
@cell 39
@cell 40
@cell 41
@cell 42
@cell 43
@cell 44
@cell 45
@cell 46
@cell 47
@cell 48
@cell 49
@cell 50
header2
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:879: render-test input"
at_fn_check_prepare_trace "render.at:879"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " +----+----+----+----+----+----+----+----+----+----+----+----+
header1|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|header2
| 1| 2| 3| 4| 5| 6| 7| 8| 9| 10| 11| 12|
+----+----+----+----+----+----+----+----+----+----+----+----+
+----+----+----+----+----+----+----+----+----+----+----+----+
header1|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|header2
| 13| 14| 15| 16| 17| 18| 19| 20| 21| 22| 23| 24|
+----+----+----+----+----+----+----+----+----+----+----+----+
+----+----+----+----+----+----+----+----+----+----+----+----+
header1|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|header2
| 25| 26| 27| 28| 29| 30| 31| 32| 33| 34| 35| 36|
+----+----+----+----+----+----+----+----+----+----+----+----+
+----+----+----+----+----+----+----+----+----+----+----+----+
header1|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|header2
| 37| 38| 39| 40| 41| 42| 43| 44| 45| 46| 47| 48|
+----+----+----+----+----+----+----+----+----+----+----+----+
+----+----+
header1|cell|cell|header2
| 49| 50|
+----+----+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:879"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:905: render-test -o mb0 --min-break=0 input"
at_fn_check_prepare_trace "render.at:905"
( $at_check_trace; render-test -o mb0 --min-break=0 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " +----+----+----+----+----+----+----+----+----+----+----+----+--+
header1|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|ce|header2
| 1| 2| 3| 4| 5| 6| 7| 8| 9| 10| 11| 12| |
+----+----+----+----+----+----+----+----+----+----+----+----+--+
+--+----+----+----+----+----+----+----+----+----+----+----+----+
header1|ll|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|header2
|13| 14| 15| 16| 17| 18| 19| 20| 21| 22| 23| 24| 25|
+--+----+----+----+----+----+----+----+----+----+----+----+----+
+----+----+----+----+----+----+----+----+----+----+----+----+--+
header1|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|ce|header2
| 26| 27| 28| 29| 30| 31| 32| 33| 34| 35| 36| 37| |
+----+----+----+----+----+----+----+----+----+----+----+----+--+
+--+----+----+----+----+----+----+----+----+----+----+----+----+
header1|ll|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|cell|header2
|38| 39| 40| 41| 42| 43| 44| 45| 46| 47| 48| 49| 50|
+--+----+----+----+----+----+----+----+----+----+----+----+----+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:905"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1058
#AT_START_1059
at_fn_group_banner 1059 'render.at:928' \
"breaking row of many big narrow cells" " " 134
at_xfail=no
(
$as_echo "1059. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
1 50
@This is cell 1 in a series of 50.
@This is cell 2 in a series of 50.
@This is cell 3 in a series of 50.
@This is cell 4 in a series of 50.
@This is cell 5 in a series of 50.
@This is cell 6 in a series of 50.
@This is cell 7 in a series of 50.
@This is cell 8 in a series of 50.
@This is cell 9 in a series of 50.
@This is cell 10 in a series of 50.
@This is cell 11 in a series of 50.
@This is cell 12 in a series of 50.
@This is cell 13 in a series of 50.
@This is cell 14 in a series of 50.
@This is cell 15 in a series of 50.
@This is cell 16 in a series of 50.
@This is cell 17 in a series of 50.
@This is cell 18 in a series of 50.
@This is cell 19 in a series of 50.
@This is cell 20 in a series of 50.
@This is cell 21 in a series of 50.
@This is cell 22 in a series of 50.
@This is cell 23 in a series of 50.
@This is cell 24 in a series of 50.
@This is cell 25 in a series of 50.
@This is cell 26 in a series of 50.
@This is cell 27 in a series of 50.
@This is cell 28 in a series of 50.
@This is cell 29 in a series of 50.
@This is cell 30 in a series of 50.
@This is cell 31 in a series of 50.
@This is cell 32 in a series of 50.
@This is cell 33 in a series of 50.
@This is cell 34 in a series of 50.
@This is cell 35 in a series of 50.
@This is cell 36 in a series of 50.
@This is cell 37 in a series of 50.
@This is cell 38 in a series of 50.
@This is cell 39 in a series of 50.
@This is cell 40 in a series of 50.
@This is cell 41 in a series of 50.
@This is cell 42 in a series of 50.
@This is cell 43 in a series of 50.
@This is cell 44 in a series of 50.
@This is cell 45 in a series of 50.
@This is cell 46 in a series of 50.
@This is cell 47 in a series of 50.
@This is cell 48 in a series of 50.
@This is cell 49 in a series of 50.
@This is cell 50 in a series of 50.
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:934: render-test input"
at_fn_check_prepare_trace "render.at:934"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+------+------+------+------+------+------+------+------+------+------+------+
| This| This| This| This| This| This| This| This| This| This| This|
| is| is| is| is| is| is| is| is| is| is| is|
|cell 1|cell 2|cell 3|cell 4|cell 5|cell 6|cell 7|cell 8|cell 9| cell| cell|
| in a| in a| in a| in a| in a| in a| in a| in a| in a| 10 in| 11 in|
|series|series|series|series|series|series|series|series|series| a| a|
|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|series|series|
| | | | | | | | | |of 50.|of 50.|
+------+------+------+------+------+------+------+------+------+------+------+
+------+------+------+------+------+------+------+------+------+------+------+
| This| This| This| This| This| This| This| This| This| This| This|
| is| is| is| is| is| is| is| is| is| is| is|
| cell| cell| cell| cell| cell| cell| cell| cell| cell| cell| cell|
| 12 in| 13 in| 14 in| 15 in| 16 in| 17 in| 18 in| 19 in| 20 in| 21 in| 22 in|
| a| a| a| a| a| a| a| a| a| a| a|
|series|series|series|series|series|series|series|series|series|series|series|
|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|
+------+------+------+------+------+------+------+------+------+------+------+
+------+------+------+------+------+------+------+------+------+------+------+
| This| This| This| This| This| This| This| This| This| This| This|
| is| is| is| is| is| is| is| is| is| is| is|
| cell| cell| cell| cell| cell| cell| cell| cell| cell| cell| cell|
| 23 in| 24 in| 25 in| 26 in| 27 in| 28 in| 29 in| 30 in| 31 in| 32 in| 33 in|
| a| a| a| a| a| a| a| a| a| a| a|
|series|series|series|series|series|series|series|series|series|series|series|
|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|
+------+------+------+------+------+------+------+------+------+------+------+
+------+------+------+------+------+------+------+------+------+------+------+
| This| This| This| This| This| This| This| This| This| This| This|
| is| is| is| is| is| is| is| is| is| is| is|
| cell| cell| cell| cell| cell| cell| cell| cell| cell| cell| cell|
| 34 in| 35 in| 36 in| 37 in| 38 in| 39 in| 40 in| 41 in| 42 in| 43 in| 44 in|
| a| a| a| a| a| a| a| a| a| a| a|
|series|series|series|series|series|series|series|series|series|series|series|
|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|
+------+------+------+------+------+------+------+------+------+------+------+
+------+------+------+------+------+------+
| This| This| This| This| This| This|
| is| is| is| is| is| is|
| cell| cell| cell| cell| cell| cell|
| 45 in| 46 in| 47 in| 48 in| 49 in| 50 in|
| a| a| a| a| a| a|
|series|series|series|series|series|series|
|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|
+------+------+------+------+------+------+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:934"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:985: render-test -o mb0 --min-break=0 input"
at_fn_check_prepare_trace "render.at:985"
( $at_check_trace; render-test -o mb0 --min-break=0 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+------+------+------+------+------+------+------+------+------+------+------+-
| This| This| This| This| This| This| This| This| This| This| This|
| is| is| is| is| is| is| is| is| is| is| is|
|cell 1|cell 2|cell 3|cell 4|cell 5|cell 6|cell 7|cell 8|cell 9| cell| cell|
| in a| in a| in a| in a| in a| in a| in a| in a| in a| 10 in| 11 in|
|series|series|series|series|series|series|series|series|series| a| a|
|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|series|series|s
| | | | | | | | | |of 50.|of 50.|o
+------+------+------+------+------+------+------+------+------+------+------+-
-----+------+------+------+------+------+------+------+------+------+------+---
This| This| This| This| This| This| This| This| This| This| This| T
is| is| is| is| is| is| is| is| is| is| is|
cell| cell| cell| cell| cell| cell| cell| cell| cell| cell| cell| c
12 in| 13 in| 14 in| 15 in| 16 in| 17 in| 18 in| 19 in| 20 in| 21 in| 22 in| 23
a| a| a| a| a| a| a| a| a| a| a|
eries|series|series|series|series|series|series|series|series|series|series|ser
f 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of
-----+------+------+------+------+------+------+------+------+------+------+---
---+------+------+------+------+------+------+------+------+------+------+-----
his| This| This| This| This| This| This| This| This| This| This| Thi
is| is| is| is| is| is| is| is| is| is| is| i
ell| cell| cell| cell| cell| cell| cell| cell| cell| cell| cell| cel
in| 24 in| 25 in| 26 in| 27 in| 28 in| 29 in| 30 in| 31 in| 32 in| 33 in| 34 i
a| a| a| a| a| a| a| a| a| a| a|
ies|series|series|series|series|series|series|series|series|series|series|serie
50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50
---+------+------+------+------+------+------+------+------+------+------+-----
-+------+------+------+------+------+------+------+------+------+------+------+
s| This| This| This| This| This| This| This| This| This| This| This|
s| is| is| is| is| is| is| is| is| is| is| is|
l| cell| cell| cell| cell| cell| cell| cell| cell| cell| cell| cell|
n| 35 in| 36 in| 37 in| 38 in| 39 in| 40 in| 41 in| 42 in| 43 in| 44 in| 45 in|
a| a| a| a| a| a| a| a| a| a| a| a|
s|series|series|series|series|series|series|series|series|series|series|series|
.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|of 50.|
-+------+------+------+------+------+------+------+------+------+------+------+
+------+------+------+------+------+
| This| This| This| This| This|
| is| is| is| is| is|
| cell| cell| cell| cell| cell|
| 46 in| 47 in| 48 in| 49 in| 50 in|
| a| a| a| a| a|
|series|series|series|series|series|
|of 50.|of 50.|of 50.|of 50.|of 50.|
+------+------+------+------+------+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:985"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1059
#AT_START_1060
at_fn_group_banner 1060 'render.at:1038' \
"breaking 2 rows of many small cells" " " 134
at_xfail=no
(
$as_echo "1060. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
2 50
@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
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:1044: render-test input"
at_fn_check_prepare_trace "render.at:1044"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| 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|
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|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|
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+---+
|27|28|29|30|31|32|33|34|35|36|37|38|39|40|41|42|43|44|45|46|47|48|49| 50|
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+---+
|77|78|79|80|81|82|83|84|85|86|87|88|89|90|91|92|93|94|95|96|97|98|99|100|
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+---+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1044"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:1057: render-test -o mb0 --min-break=0 input"
at_fn_check_prepare_trace "render.at:1057"
( $at_check_trace; render-test -o mb0 --min-break=0 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| 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|
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|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|
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+---+
|27|28|29|30|31|32|33|34|35|36|37|38|39|40|41|42|43|44|45|46|47|48|49| 50|
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+---+
|77|78|79|80|81|82|83|84|85|86|87|88|89|90|91|92|93|94|95|96|97|98|99|100|
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+---+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1057"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1060
#AT_START_1061
at_fn_group_banner 1061 'render.at:1072' \
"breaking 3 rows with many joined cells" " " 134
at_xfail=no
(
$as_echo "1061. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
3 49
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
@1
1*2 @2
1*2 @3
1*2 @4
1*2 @5
1*2 @6
1*2 @7
1*2 @8
1*2 @9
1*2 @10
1*2 @11
1*2 @12
1*2 @13
1*2 @14
1*2 @15
1*2 @16
1*2 @17
1*2 @18
1*2 @19
1*2 @20
1*2 @21
1*2 @22
1*2 @23
1*2 @24
1*2 @25
1*2 @26
1*2 @27
1*2 @28
1*2 @29
1*2 @30
1*2 @31
1*2 @32
1*2 @33
1*2 @34
1*2 @35
1*2 @36
1*2 @37
1*2 @38
1*2 @39
1*2 @40
1*2 @41
1*2 @42
1*2 @43
1*2 @44
1*2 @45
1*2 @46
1*2 @47
1*2 @48
1*2 @49
@50
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:1082: render-test input"
at_fn_check_prepare_trace "render.at:1082"
( $at_check_trace; render-test input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M
+-+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
|1| 2| 3| 4| 5| 6| 7| 8| 9| 10| 11| 12| 13| 14| 15| 16| 17| 18| 19| 20|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 26| 27| 28| 29| 30| 31| 32| 33| 34| 35| 36| 37| 38| 39| 40| 41| 42| 43| 44| 4
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+--
N O P Q R S T U V W
+---+---+---+---+----+
| 21| 22| 23| 24| 25|
+-+-+-+-+-+-+-+-+-+--+
45| 46| 47| 48| 49|50|
--+---+---+---+---+--+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1082"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:1097: render-test -o mb0 --min-break=0 input"
at_fn_check_prepare_trace "render.at:1097"
( $at_check_trace; render-test -o mb0 --min-break=0 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M
+-+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
|1| 2| 3| 4| 5| 6| 7| 8| 9| 10| 11| 12| 13| 14| 15| 16| 17| 18| 19| 20|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 26| 27| 28| 29| 30| 31| 32| 33| 34| 35| 36| 37| 38| 39| 40| 41| 42| 43| 44| 4
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+--
N O P Q R S T U V W
+---+---+---+---+----+
| 21| 22| 23| 24| 25|
+-+-+-+-+-+-+-+-+-+--+
45| 46| 47| 48| 49|50|
--+---+---+---+---+--+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1097"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1061
#AT_START_1062
at_fn_group_banner 1062 'render.at:1114' \
"horz break 6x6, joined rows and columns" " " 134
at_xfail=no
(
$as_echo "1062. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
6 6
@a
1*2 @bcd
@e
2*1 @f\ng\nh
@i
2*1 @j\nk\nl
@m
1*2 @nop
2*1 @q\nr\ns
2*1 @t\nu\nv
@w
1*2 @xyz
@A
2*1 @B\nC\nD
@E
1*2 @FGH
1*2 @IJK
2*1 @L\nM\nN
@O
@P
@Q
1*2 @RST
@U
@V
_ATEOF
cat >expout <<'_ATEOF'
+-+--
|a|bc
+-+-+
|j|m|
|k+-+
|l|t|
+-+u|
|A|v|
+-+-+
|IJK|
+-+-+
|Q|RS
+-+--
--+-+
cd|e|
+-+-+
|nop|
+-+-+
|w|xy
+-+-+
|B|E|
|C+-+
|D|L|
+-+M|
ST|N|
--+-+
+-+-+
|f|i|
|g+-+
|h|q|
+-+r|
yz|s|
+-+-+
|FGH|
+-+-+
|O|P|
+-+-+
|U|V|
+-+-+
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:1160: render-test --width=6 input"
at_fn_check_prepare_trace "render.at:1160"
( $at_check_trace; render-test --width=6 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1160"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:1161: render-test -o mb0 --min-break=0 --width=6 input"
at_fn_check_prepare_trace "render.at:1161"
( $at_check_trace; render-test -o mb0 --min-break=0 --width=6 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1161"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1062
#AT_START_1063
at_fn_group_banner 1063 'render.at:1164' \
"horz break 6x6, joined rows and columns, left header" "" 134
at_xfail=no
(
$as_echo "1063. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
6 6 1 0 0 0
@a
1*2 @bcd
@e
2*1 @f\ng\nh
@i
2*1 @j\nk\nl
@m
1*2 @nop
2*1 @q\nr\ns
2*1 @t\nu\nv
@w
1*2 @xyz
@A
2*1 @B\nC\nD
@E
1*2 @FGH
1*2 @IJK
2*1 @L\nM\nN
@O
@P
@Q
1*2 @RST
@U
@V
_ATEOF
cat >expout <<'_ATEOF'
+-+---+-+
|a|bcd|e|
+-+-+-+-+
|j|m|nop|
|k+-+-+-+
|l|t|w|xy
+-+u+-+-+
|A|v|B|E|
+-+-+C+-+
|IJK|D|L|
+-+-+-+M|
|Q|RST|N|
+-+---+-+
+-+-+-+
|a|f|i|
+-+g+-+
|j|h|q|
|k+-+r|
|l|z|s|
+-+-+-+
|A|FGH|
+-+-+-+
|K|O|P|
+-+-+-+
|Q|U|V|
+-+-+-+
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:1196: render-test --width=10 input"
at_fn_check_prepare_trace "render.at:1196"
( $at_check_trace; render-test --width=10 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1196"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:1197: render-test -o mb0 --min-break=0 --width=10 input"
at_fn_check_prepare_trace "render.at:1197"
( $at_check_trace; render-test -o mb0 --min-break=0 --width=10 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1197"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1063
#AT_START_1064
at_fn_group_banner 1064 'render.at:1200' \
"horz break 6x6, joined rows and columns, right header" "" 134
at_xfail=no
(
$as_echo "1064. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
6 6 0 1 0 0
@a
1*2 @bcd
@e
2*1 @f\ng\nh
@i
2*1 @j\nk\nl
@m
1*2 @nop
2*1 @q\nr\ns
2*1 @t\nu\nv
@w
1*2 @xyz
@A
2*1 @B\nC\nD
@E
1*2 @FGH
1*2 @IJK
2*1 @L\nM\nN
@O
@P
@Q
1*2 @RST
@U
@V
_ATEOF
cat >expout <<'_ATEOF'
+-+---+-+
|a|bcd|i|
+-+-+-+-+
|j|m|n|q|
|k+-+-+r|
|l|t|w|s|
+-+u+-+-+
|A|v|B|H|
+-+-+C+-+
|IJK|D|P|
+-+-+-+-+
|Q|RST|V|
+-+---+-+
+-+-+-+
|e|f|i|
+-+g+-+
op|h|q|
+-+-+r|
|xyz|s|
+-+-+-+
|E|FGH|
+-+-+-+
|L|O|P|
|M+-+-+
|N|U|V|
+-+-+-+
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:1232: render-test --width=10 input"
at_fn_check_prepare_trace "render.at:1232"
( $at_check_trace; render-test --width=10 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1232"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:1233: render-test -o mb0 --min-break=0 --width=10 input"
at_fn_check_prepare_trace "render.at:1233"
( $at_check_trace; render-test -o mb0 --min-break=0 --width=10 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1233"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1064
#AT_START_1065
at_fn_group_banner 1065 'render.at:1236' \
"breaking joined cells too wide for page" " " 134
at_xfail=no
(
$as_echo "1065. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
4 6
1*6 @abc def ghi jkl
1*3 @mno pqr
1*3 @stu vwx
1*2 @yzA
1*2 @BCD
1*2 @EFG
@H
@I
@J
@K
@L
@M
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:1252: render-test --width=10 input"
at_fn_check_prepare_trace "render.at:1252"
( $at_check_trace; render-test --width=10 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+--------
|abc def
|
+-----+--
| mno|
| pqr|
+---+-+-+
|yzA|BCD|
+-+-+-+-+
|H|I|J|K|
+-+-+-+-+
----+
ghi|
jkl|
----+
stu|
vwx|
+---+
|EFG|
+-+-+
|L|M|
+-+-+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1252"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:1277: render-test -o mb0 --min-break=0 --width=10 input"
at_fn_check_prepare_trace "render.at:1277"
( $at_check_trace; render-test -o mb0 --min-break=0 --width=10 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+--------
|abc def
|
+-----+--
| mno|
| pqr|
+---+-+-+
|yzA|BCD|
+-+-+-+-+
|H|I|J|K|
+-+-+-+-+
----+
ghi|
jkl|
----+
stu|
vwx|
+---+
|EFG|
+-+-+
|L|M|
+-+-+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1277"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1065
#AT_START_1066
at_fn_group_banner 1066 'render.at:1304' \
"breaking joined cells much too wide for page" " " 134
at_xfail=no
(
$as_echo "1066. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
4 6
1*6 @abc def ghi jkl
1*3 @mno pqr
1*3 @stu vwx
1*2 @yzA
1*2 @BCD
1*2 @EFG
@H
@I
@J
@K
@L
@M
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:1320: render-test --width=6 input"
at_fn_check_prepare_trace "render.at:1320"
( $at_check_trace; render-test --width=6 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+----
|abc
|
+----
| mn
| pq
+---+
|yzA|
+-+-+
|H|I|
+-+-+
-----
def
--+--
no|
qr|
+-+-+
|BCD|
+-+-+
|J|K|
+-+-+
----+
ghi|
jkl|
----+
stu|
vwx|
+---+
|EFG|
+-+-+
|L|M|
+-+-+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1320"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:1357: render-test -o mb0 --min-break=0 --width=6 input"
at_fn_check_prepare_trace "render.at:1357"
( $at_check_trace; render-test -o mb0 --min-break=0 --width=6 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+----
|abc
|
+----
| mn
| pq
+---+
|yzA|
+-+-+
|H|I|
+-+-+
-----
def
--+--
no|
qr|
+-+-+
|BCD|
+-+-+
|J|K|
+-+-+
----+
ghi|
jkl|
----+
stu|
vwx|
+---+
|EFG|
+-+-+
|L|M|
+-+-+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1357"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1066
#AT_START_1067
at_fn_group_banner 1067 'render.at:1396' \
"breaking cell too wide for page, no border" " " 134
at_xfail=no
(
$as_echo "1067. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
1 1
abcdefghijklmnopqrstuvwxyz
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:1402: render-test --width=6 input"
at_fn_check_prepare_trace "render.at:1402"
( $at_check_trace; render-test --width=6 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "abcdef
ghijkl
mnopqr
stuvwx
yz
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1402"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:1413: render-test -o mb0 --min-break=0 --width=6 input"
at_fn_check_prepare_trace "render.at:1413"
( $at_check_trace; render-test -o mb0 --min-break=0 --width=6 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "abcdef
ghijkl
mnopqr
stuvwx
yz
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1413"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1067
#AT_START_1068
at_fn_group_banner 1068 'render.at:1426' \
"breaking cell too wide for page, with border" " " 134
at_xfail=no
(
$as_echo "1068. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
1 1
@abcdefghijklmnopqrstuvwxyz
_ATEOF
cat >expout <<'_ATEOF'
+-----
|abcde
+-----
------
fghijk
------
------
lmnopq
------
------
rstuvw
------
---+
xyz|
---+
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:1453: render-test --width=6 input"
at_fn_check_prepare_trace "render.at:1453"
( $at_check_trace; render-test --width=6 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1453"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:1454: render-test -o mb0 --min-break=0 --width=6 input"
at_fn_check_prepare_trace "render.at:1454"
( $at_check_trace; render-test -o mb0 --min-break=0 --width=6 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1454"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1068
#AT_START_1069
at_fn_group_banner 1069 'render.at:1457' \
"horz break 8x8 with many 2x2 joins" " " 134
at_xfail=no
(
$as_echo "1069. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
8 8
2*2 @abc\ndef\nghi
1*2 @jkl
2*2 @mno\npqr\nstu
1*2 @vwx
2*2 @yzA\nBCD\nEFG
2*2 @HIJ\nKLM\nNOP
3*1 @Q\nR\nS\nT\nU
@V
2*1 @W\nX\nY
@Z
2*2 @012\n345\n678
@9
2*2 @abc\ndef\nghi
3*1 @j\nk\nl\nm\nn
2*2 @opq\nrst\nuvw
2*2 @xyz\nABC\nDEF
2*1 @G\nH\nI
1*2 @JKL
2*3 @MNOPQ\nRSTUV\nWXYZ0
2*2 @123\n456\n789
1*3 @abcde
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:1460: render-test --width=8 input"
at_fn_check_prepare_trace "render.at:1460"
( $at_check_trace; render-test --width=8 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+---+--
|abc|jk
|def|
|ghi+--
| |yz
+-+-+BC
|Q|V|EF
|R| |
|S+-+-+
|T|012|
|U|345|
| |678|
| | |
+-+-+-+
|xyz|G|
|ABC|H|
|DEF|I|
| | |
+---+-+
|abcde|
| |
+-----+
--+----+
kl| mno|
| pqr|
--+ stu|
zA| |
CD+-+--+
FG|W| Z|
|X| |
+-+Y+--+
|9| | ab
| | | de
+-+-+ gh
|opq|
|rst+---
|uvw| JK
| |
+---+--+
| MNOPQ|
| RSTUV|
| WXYZ0|
| |
+------+
+----+
| vwx|
| |
+----+
| HIJ|
| KLM|
| NOP|
| |
+-+--+
bc| j|
ef| k|
hi| l|
| m|
--+ n|
KL| |
| |
+-+--+
| 123|
| 456|
| 456|
| 789|
| |
+----+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1460"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:1532: render-test -o mb0 --min-break=0 --width=8 input"
at_fn_check_prepare_trace "render.at:1532"
( $at_check_trace; render-test -o mb0 --min-break=0 --width=8 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+---+--
|abc|jk
|def|
|ghi+--
| |yz
+-+-+BC
|Q|V|EF
|R| |
|S+-+-+
|T|012|
|U|345|
| |678|
| | |
+-+-+-+
|xyz|G|
|ABC|H|
|DEF|I|
| | |
+---+-+
|abcde|
| |
+-----+
--+----+
kl| mno|
| pqr|
--+ stu|
zA| |
CD+-+--+
FG|W| Z|
|X| |
+-+Y+--+
|9| | ab
| | | de
+-+-+ gh
|opq|
|rst+---
|uvw| JK
| |
+---+--+
| MNOPQ|
| RSTUV|
| WXYZ0|
| |
+------+
+----+
| vwx|
| |
+----+
| HIJ|
| KLM|
| NOP|
| |
+-+--+
bc| j|
ef| k|
hi| l|
| m|
--+ n|
KL| |
| |
+-+--+
| 123|
| 456|
| 789|
| |
+----+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1532"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1069
#AT_START_1070
at_fn_group_banner 1070 'render.at:1607' \
"breaking column of many small cells" " " 135
at_xfail=no
(
$as_echo "1070. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
20 1
@1
@2
@3
@4
@5
@6
@7
@8
@9
@10
@11
@12
@13
@14
@15
@16
@17
@18
@19
@20
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:1613: render-test --length=10 input"
at_fn_check_prepare_trace "render.at:1613"
( $at_check_trace; render-test --length=10 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+--+
| 1|
+--+
| 2|
+--+
| 3|
+--+
| 4|
+--+
+--+
| 5|
+--+
| 6|
+--+
| 7|
+--+
| 8|
+--+
+--+
| 9|
+--+
|10|
+--+
|11|
+--+
|12|
+--+
+--+
|13|
+--+
|14|
+--+
|15|
+--+
|16|
+--+
+--+
|17|
+--+
|18|
+--+
|19|
+--+
|20|
+--+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1613"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:1664: render-test -o mb0 --min-break=0 --length=10 input"
at_fn_check_prepare_trace "render.at:1664"
( $at_check_trace; render-test -o mb0 --min-break=0 --length=10 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+--+
| 1|
+--+
| 2|
+--+
| 3|
+--+
| 4|
+--+
+--+
| 5|
+--+
| 6|
+--+
| 7|
+--+
| 8|
+--+
+--+
| 9|
+--+
|10|
+--+
|11|
+--+
|12|
+--+
+--+
|13|
+--+
|14|
+--+
|15|
+--+
|16|
+--+
+--+
|17|
+--+
|18|
+--+
|19|
+--+
|20|
+--+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1664"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1070
#AT_START_1071
at_fn_group_banner 1071 'render.at:1717' \
"breaking column of many small cells, with headers" "" 135
at_xfail=no
(
$as_echo "1071. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
17 1 0 0 1 1
@a
@1
@2
@3
@4
@5
@6
@7
@8
@9
@10
@11
@12
@13
@14
@15
@b
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:1725: render-test --length=13 input"
at_fn_check_prepare_trace "render.at:1725"
( $at_check_trace; render-test --length=13 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+--+
| a|
+--+
| 1|
+--+
| 2|
+--+
| 3|
+--+
| 4|
+--+
| b|
+--+
+--+
| a|
+--+
| 5|
+--+
| 6|
+--+
| 7|
+--+
| 8|
+--+
| b|
+--+
+--+
| a|
+--+
| 9|
+--+
|10|
+--+
|11|
+--+
|12|
+--+
| b|
+--+
+--+
| a|
+--+
|13|
+--+
|14|
+--+
|15|
+--+
| b|
+--+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1725"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:1780: render-test -o mb0 --min-break=0 --length=13 input"
at_fn_check_prepare_trace "render.at:1780"
( $at_check_trace; render-test -o mb0 --min-break=0 --length=13 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+--+
| a|
+--+
| 1|
+--+
| 2|
+--+
| 3|
+--+
| 4|
+--+
| b|
+--+
+--+
| a|
+--+
| 5|
+--+
| 6|
+--+
| 7|
+--+
| 8|
+--+
| b|
+--+
+--+
| a|
+--+
| 9|
+--+
|10|
+--+
|11|
+--+
|12|
+--+
| b|
+--+
+--+
| a|
+--+
|13|
+--+
|14|
+--+
|15|
+--+
| b|
+--+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1780"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1071
#AT_START_1072
at_fn_group_banner 1072 'render.at:1837' \
"disabling too-big headers" " " 135
at_xfail=no
(
$as_echo "1072. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
17 1 0 0 1 1
@a
@1
@2
@3
@4
@5
@6
@7
@8
@9
@10
@11
@12
@13
@14
@15
@b
_ATEOF
cat >expout <<'_ATEOF'
+--+
| a|
+--+
| 1|
+--+
| 2|
+--+
| 3|
+--+
+--+
| 4|
+--+
| 5|
+--+
| 6|
+--+
| 7|
+--+
+--+
| 8|
+--+
| 9|
+--+
|10|
+--+
|11|
+--+
+--+
|12|
+--+
|13|
+--+
|14|
+--+
|15|
+--+
+--+
| b|
+--+
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:1890: render-test --length=10 input"
at_fn_check_prepare_trace "render.at:1890"
( $at_check_trace; render-test --length=10 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1890"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:1891: render-test -o mb0 --min-break=0 --length=10 input"
at_fn_check_prepare_trace "render.at:1891"
( $at_check_trace; render-test -o mb0 --min-break=0 --length=10 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1891"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1072
#AT_START_1073
at_fn_group_banner 1073 'render.at:1894' \
"breaking column of many medium-size cells" " " 135
at_xfail=no
(
$as_echo "1073. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
20 1
@top 1\ncell 1\nbottom 1
@top 2\ncell 2\nbottom 2
@top 3\ncell 3\nbottom 3
@top 4\ncell 4\nbottom 4
@top 5\ncell 5\nbottom 5
@top 6\ncell 6\nbottom 6
@top 7\ncell 7\nbottom 7
@top 8\ncell 8\nbottom 8
@top 9\ncell 9\nbottom 9
@top 10\ncell 10\nbottom 10
@top 11\ncell 11\nbottom 11
@top 12\ncell 12\nbottom 12
@top 13\ncell 13\nbottom 13
@top 14\ncell 14\nbottom 14
@top 15\ncell 15\nbottom 15
@top 16\ncell 16\nbottom 16
@top 17\ncell 17\nbottom 17
@top 18\ncell 18\nbottom 18
@top 19\ncell 19\nbottom 19
@top 20\ncell 20\nbottom 20
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:1900: render-test --length 10 input"
at_fn_check_prepare_trace "render.at:1900"
( $at_check_trace; render-test --length 10 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+---------+
| top 1|
| cell 1|
| bottom 1|
+---------+
| top 2|
| cell 2|
| bottom 2|
+---------+
+---------+
| top 3|
| cell 3|
| bottom 3|
+---------+
| top 4|
| cell 4|
| bottom 4|
+---------+
+---------+
| top 5|
| cell 5|
| bottom 5|
+---------+
| top 6|
| cell 6|
| bottom 6|
+---------+
+---------+
| top 7|
| cell 7|
| bottom 7|
+---------+
| top 8|
| cell 8|
| bottom 8|
+---------+
+---------+
| top 9|
| cell 9|
| bottom 9|
+---------+
| top 10|
| cell 10|
|bottom 10|
+---------+
+---------+
| top 11|
| cell 11|
|bottom 11|
+---------+
| top 12|
| cell 12|
|bottom 12|
+---------+
+---------+
| top 13|
| cell 13|
|bottom 13|
+---------+
| top 14|
| cell 14|
|bottom 14|
+---------+
+---------+
| top 15|
| cell 15|
|bottom 15|
+---------+
| top 16|
| cell 16|
|bottom 16|
+---------+
+---------+
| top 17|
| cell 17|
|bottom 17|
+---------+
| top 18|
| cell 18|
|bottom 18|
+---------+
+---------+
| top 19|
| cell 19|
|bottom 19|
+---------+
| top 20|
| cell 20|
|bottom 20|
+---------+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:1900"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:2001: render-test -o mb0 --min-break=0 --length 10 input"
at_fn_check_prepare_trace "render.at:2001"
( $at_check_trace; render-test -o mb0 --min-break=0 --length 10 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+---------+
| top 1|
| cell 1|
| bottom 1|
+---------+
| top 2|
| cell 2|
| bottom 2|
+---------+
| top 3|
| cell 3|
| bottom 3|
+---------+
| top 4|
| cell 4|
| bottom 4|
+---------+
| top 5|
| cell 5|
| bottom 5|
+---------+
| top 6|
| cell 6|
| bottom 6|
+---------+
| top 7|
| cell 7|
| bottom 7|
+---------+
+---------+
| top 8|
| cell 8|
| bottom 8|
+---------+
| top 9|
| cell 9|
| bottom 9|
+---------+
| top 10|
| cell 10|
|bottom 10|
+---------+
| top 11|
| cell 11|
|bottom 11|
+---------+
| top 12|
| cell 12|
|bottom 12|
+---------+
| top 13|
| cell 13|
|bottom 13|
+---------+
| top 14|
| cell 14|
|bottom 14|
+---------+
+---------+
| top 15|
| cell 15|
|bottom 15|
+---------+
| top 16|
| cell 16|
|bottom 16|
+---------+
| top 17|
| cell 17|
|bottom 17|
+---------+
| top 18|
| cell 18|
|bottom 18|
+---------+
| top 19|
| cell 19|
|bottom 19|
+---------+
| top 20|
| cell 20|
|bottom 20|
+---------+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2001"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1073
#AT_START_1074
at_fn_group_banner 1074 'render.at:2096' \
"breaking 3 columns with many joined cells" " " 135
at_xfail=no
(
$as_echo "1074. $at_setup_line: testing $at_desc ..."
$at_traceon
# +--+--+
# a| 1|11|
# +--+ab|
# b| 2|cd|
# |ab+--+
# c|cd|12|
# +--+ab|
# d| 3|cd|
# |ab+--+
# e|cd|13|
# +--+ab|
# f| 4|cd|
# |ab+--+
# g|cd|14|
# +--+ab|
# h| 5|cd|
# |ab+--+
# i|cd|15|
# +--+ab|
# j| 6|cd|
# |ab+--+
# k|cd|16|
# +--+ab|
# l| 7|cd|
# |ab+--+
# m|cd|17|
# +--+ab|
# n| 8|cd|
# |ab+--+
# o|cd|18|
# +--+ab|
# p| 9|cd|
# |ab+--+
# q|cd|19|
# +--+ab|
# r|10|cd|
# |ab+--+
# s|cd|20|
# +--+--+
cat >input <<'_ATEOF'
3 19
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
@1
1*2 @2\nab\ncd
1*2 @3\nab\ncd
1*2 @4\nab\ncd
1*2 @5\nab\ncd
1*2 @6\nab\ncd
1*2 @7\nab\ncd
1*2 @8\nab\ncd
1*2 @9\nab\ncd
1*2 @10\nab\ncd
1*2 @11\nab\ncd
1*2 @12\nab\ncd
1*2 @13\nab\ncd
1*2 @14\nab\ncd
1*2 @15\nab\ncd
1*2 @16\nab\ncd
1*2 @17\nab\ncd
1*2 @18\nab\ncd
1*2 @19\nab\ncd
@20
_ATEOF
cat >expout <<'_ATEOF'
+--+--+
a| 1|11|
+--+ab|
b| 2|cd|
|ab+--+
|ab+--+
c|cd|12|
+--+ab|
d| 3|cd|
|ab+--+
|ab+--+
e|cd|13|
+--+ab|
f| 4|cd|
|ab+--+
|ab+--+
g|cd|14|
+--+ab|
h| 5|cd|
|ab+--+
|ab+--+
i|cd|15|
+--+ab|
j| 6|cd|
|ab+--+
|ab+--+
k|cd|16|
+--+ab|
l| 7|cd|
|ab+--+
|ab+--+
m|cd|17|
+--+ab|
n| 8|cd|
|ab+--+
|ab+--+
o|cd|18|
+--+ab|
p| 9|cd|
|ab+--+
|ab+--+
q|cd|19|
+--+ab|
r|10|cd|
|ab+--+
|ab+--+
s|cd|20|
+--+--+
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:2203: render-test --length=6 --transpose input"
at_fn_check_prepare_trace "render.at:2203"
( $at_check_trace; render-test --length=6 --transpose input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2203"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:2204: render-test -o mb0 --min-break=0 --length=6 --transpose input"
at_fn_check_prepare_trace "render.at:2204"
( $at_check_trace; render-test -o mb0 --min-break=0 --length=6 --transpose input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2204"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1074
#AT_START_1075
at_fn_group_banner 1075 'render.at:2208' \
"vert break 6x6, joined rows and columns" " " 135
at_xfail=no
(
$as_echo "1075. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
6 6
@a
1*2 @bcd
@e
2*1 @f\ng\nh
@i
2*1 @j\nk\nl
@m
1*2 @nop
2*1 @q\nr\ns
2*1 @t\nu\nv
@w
1*2 @xyz
@A
2*1 @B\nC\nD
@E
1*2 @FGH
1*2 @IJK
2*1 @L\nM\nN
@O
@P
@Q
1*2 @RST
@U
@V
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:2211: render-test --length=6 input"
at_fn_check_prepare_trace "render.at:2211"
( $at_check_trace; render-test --length=6 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-+---+-+-+-+
|a|bcd|e|f|i|
+-+-+-+-+g+-+
|j|m|nop|h|q|
|k+-+---+-+r|
|k+-+-+---+r|
|l|t|w|xyz|s|
+-+u+-+-+-+-+
|A|v|B|E|FGH|
+-+-+C+-+---+
+---+C+-+-+-+
|IJK|D|L|O|P|
+-+-+-+M+-+-+
|Q|RST|N|U|V|
+-+---+-+-+-+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2211"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:2230: render-test -o mb0 --min-break=0 --length=6 input"
at_fn_check_prepare_trace "render.at:2230"
( $at_check_trace; render-test -o mb0 --min-break=0 --length=6 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-+---+-+-+-+
|a|bcd|e|f|i|
+-+-+-+-+g+-+
|j|m|nop|h|q|
|k+-+---+-+r|
|k+-+-+---+r|
|l|t|w|xyz|s|
+-+u+-+-+-+-+
|A|v|B|E|FGH|
+-+-+C+-+---+
+---+C+-+-+-+
|IJK|D|L|O|P|
+-+-+-+M+-+-+
|Q|RST|N|U|V|
+-+---+-+-+-+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2230"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1075
#AT_START_1076
at_fn_group_banner 1076 'render.at:2251' \
"breaking joined cells too tall for page" " " 135
at_xfail=no
(
$as_echo "1076. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
4 6
1*6 @abc\ndef\nghi\njkl\nmno\npqr\nstu\nvwx\nyzA\nBCD\nEFG
1*3 @HIJ\nKLM\nOPQ\nRST\nUVW
1*3 @XYZ\n012\n345\n678\n90a
1*2 @bcd\nefg\nhij
1*2 @klm\nnop\nqrs
1*2 @tuv\nwxy\nzAB
@C
@D
@E
@F
@G
@H
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:2267: render-test --transpose --length=6 input"
at_fn_check_prepare_trace "render.at:2267"
( $at_check_trace; render-test --transpose --length=6 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+---+---+---+-+
|abc|HIJ|bcd|C|
|def|KLM|efg+-+
|ghi|OPQ|hij|D|
|jkl|RST+---+-+
|jkl|RST+---+-+
|mno|UVW|klm|E|
|pqr+---+nop+-+
|stu|XYZ|qrs|F|
|vwx|012+---+-+
|vwx|012+---+-+
|yzA|345|tuv|G|
|BCD|678|wxy+-+
|EFG|90a|zAB|H|
+---+---+---+-+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2267"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:2286: render-test -o mb0 --min-break=0 --transpose --length=6 input"
at_fn_check_prepare_trace "render.at:2286"
( $at_check_trace; render-test -o mb0 --min-break=0 --transpose --length=6 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+---+---+---+-+
|abc|HIJ|bcd|C|
|def|KLM|efg+-+
|ghi|OPQ|hij|D|
|jkl|RST+---+-+
|jkl|RST+---+-+
|mno|UVW|klm|E|
|pqr+---+nop+-+
|stu|XYZ|qrs|F|
|vwx|012+---+-+
|vwx|012+---+-+
|yzA|345|tuv|G|
|BCD|678|wxy+-+
|EFG|90a|zAB|H|
+---+---+---+-+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2286"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1076
#AT_START_1077
at_fn_group_banner 1077 'render.at:2307' \
"breaking cell too tall for page, no border" " " 135
at_xfail=no
(
$as_echo "1077. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
1 1
abc defg hij klmn opq rstu vwx yz ABCDE FGH I JK LMNOP QR STU VWXYZ
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:2313: render-test --width=6 --length=6 input"
at_fn_check_prepare_trace "render.at:2313"
( $at_check_trace; render-test --width=6 --length=6 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " abc
defg
hij
klmn
opq
rstu
vwx yz
ABCDE
FGH I
JK
LMNOP
QR STU
VWXYZ
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2313"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:2330: render-test -o mb0 --min-break=0 --width=6 --length=6 input"
at_fn_check_prepare_trace "render.at:2330"
( $at_check_trace; render-test -o mb0 --min-break=0 --width=6 --length=6 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " abc
defg
hij
klmn
opq
rstu
vwx yz
ABCDE
FGH I
JK
LMNOP
QR STU
VWXYZ
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2330"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1077
#AT_START_1078
at_fn_group_banner 1078 'render.at:2349' \
"breaking cell too tall for page, with border" " " 135
at_xfail=no
(
$as_echo "1078. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
1 1
@abc defg hij klmn opq rstu vwx yz ABCDE FGH I JK LMNOP QR STU VWXYZ
_ATEOF
cat >expout <<'_ATEOF'
+-----+
| abc|
| defg|
| hij|
| klmn|
| opq|
| rstu|
| vwx|
| yz|
|ABCDE|
|FGH I|
| JK|
|LMNOP|
| QR|
| STU|
|VWXYZ|
+-----+
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:2376: render-test --width=7 --length=6 input"
at_fn_check_prepare_trace "render.at:2376"
( $at_check_trace; render-test --width=7 --length=6 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2376"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:2377: render-test -o mb0 --min-break=0 --width=7 --length=6 input"
at_fn_check_prepare_trace "render.at:2377"
( $at_check_trace; render-test -o mb0 --min-break=0 --width=7 --length=6 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2377"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1078
#AT_START_1079
at_fn_group_banner 1079 'render.at:2381' \
"breaking nested cell too tall for page" " " 135
at_xfail=no
(
$as_echo "1079. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
8 8
@a
@b
@c
@d
@e
@f
@g
@h
@i
1*2 @jkl
@m
1*2 @nop
2*1 @q\nr\ns
@t
@u
@v
1*2 @wxy
@z
2*1 @A\nB\nC
@D
@E
2*1 @F\nG\nH
@I
1*2 @JKL
2*1 @M\nN\nO
@P
@Q
2*1 @R\nS\nT
1*2 @UVW
@X
@Y
@Z
2*1 @0\n1\n2
@3
1*2 @456
@7
@8
@9
1*2 @abc
@d
1*2 @efg
@h
@i
@j
@k
@l
@m
@n
@o
@p
6 6
@a
1*2 @bcd
@e
2*1 @f\ng\nh
@i
2*1 @j\nk\nl
@m
1*2 @nop
2*1 @q\nr\ns
2*1 @t\nu\nv
@w
1*2 @xyz
@A
2*1 @B\nC\nD
@E
1*2 @FGH
1*2 @IJK
2*1 @L\nM\nN
@O
@P
@Q
1*2 @RST
@U
@V
1 2
@{0}
@{1}
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:2389: render-test input --length=10"
at_fn_check_prepare_trace "render.at:2389"
( $at_check_trace; render-test input --length=10
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-----------------+-------------+
|+-+-+-+-+-+-+-+-+|+-+---+-+-+-+|
||a|b|c|d|e|f|g|h|||a|bcd|e|f|i||
|+-+-+-+-+-+-+-+-+|+-+-+-+-+g+-+|
||i|jkl|m|nop|q|t|||j|m|nop|h|q||
|+-+-+-+-+-+-+r+-+||k+-+-+-+-+r||
||u|v|wxy|z|A|s|D|||l|t|w|xyz|s||
|+-+-+-+-+-+B+-+-+|+-+u+-+-+-+-+|
||E|F|I|JKL|C|M|P|||A|v|B|E|FGH||
|+-+G+-+---+-+N+-+|+-+-+C+-+-+-+|
||Q|H|R|UVW|X|O|Y|||IJK|D|L|O|P||
|+-+-+S+-+-+-+-+-+|+-+-+-+M+-+-+|
||Z|0|T|3|456|7|8|||Q|RST|N|U|V||
|+-+1+-+-+-+-+-+-+|+-+---+-+-+-+|
||9|2|abc|d|efg|h|| |
|+-+-+-+-+-+-+-+-+| |
||i|j|k|l|m|n|o|p|| |
|+-+-+-+-+-+-+-+-+| |
+-----------------+-------------+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2389"
$at_failed && at_fn_log_failure \
"input"
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1079
#AT_START_1080
at_fn_group_banner 1080 'render.at:2415' \
"double break 6x6, joined rows and columns" " " 136
at_xfail=no
(
$as_echo "1080. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
6 6
@a
1*2 @bcd
@e
2*1 @f\ng\nh
@i
2*1 @j\nk\nl
@m
1*2 @nop
2*1 @q\nr\ns
2*1 @t\nu\nv
@w
1*2 @xyz
@A
2*1 @B\nC\nD
@E
1*2 @FGH
1*2 @IJK
2*1 @L\nM\nN
@O
@P
@Q
1*2 @RST
@U
@V
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:2418: render-test --width=6 --length=6 input"
at_fn_check_prepare_trace "render.at:2418"
( $at_check_trace; render-test --width=6 --length=6 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-+--
|a|bc
+-+-+
|j|m|
|k+-+
|k+-+
|l|t|
+-+u|
|A|v|
+-+-+
+---+
|IJK|
+-+-+
|Q|RS
+-+--
--+-+
cd|e|
+-+-+
|nop|
+---+
+-+--
|w|xy
+-+-+
|B|E|
|C+-+
|C+-+
|D|L|
+-+M|
ST|N|
--+-+
+-+-+
|f|i|
|g+-+
|h|q|
+-+r|
--+r|
yz|s|
+-+-+
|FGH|
+---+
+-+-+
|O|P|
+-+-+
|U|V|
+-+-+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2418"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:2473: render-test -o mb0 --min-break=0 --width=6 --length=6 input"
at_fn_check_prepare_trace "render.at:2473"
( $at_check_trace; render-test -o mb0 --min-break=0 --width=6 --length=6 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-+--
|a|bc
+-+-+
|j|m|
|k+-+
|k+-+
|l|t|
+-+u|
|A|v|
+-+-+
+---+
|IJK|
+-+-+
|Q|RS
+-+--
--+-+
cd|e|
+-+-+
|nop|
+---+
+-+--
|w|xy
+-+-+
|B|E|
|C+-+
|C+-+
|D|L|
+-+M|
ST|N|
--+-+
+-+-+
|f|i|
|g+-+
|h|q|
+-+r|
--+r|
yz|s|
+-+-+
|FGH|
+---+
+-+-+
|O|P|
+-+-+
|U|V|
+-+-+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2473"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1080
#AT_START_1081
at_fn_group_banner 1081 'render.at:2530' \
"double break 8x8, with joins, left and right headers" "" 136
at_xfail=no
(
$as_echo "1081. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
8 8 1 1 0 0
@a
@b
@c
@d
@e
@f
@g
@h
@i
1*2 @jkl
@m
1*2 @nop
2*1 @q\nr\ns
@t
@u
@v
1*2 @wxy
@z
2*1 @A\nB\nC
@D
@E
2*1 @F\nG\nH
@I
1*2 @JKL
2*1 @M\nN\nO
@P
@Q
2*1 @R\nS\nT
1*2 @UVW
@X
@Y
@Z
2*1 @0\n1\n2
@3
1*2 @456
@7
@8
@9
1*2 @abc
@d
1*2 @efg
@h
@i
@j
@k
@l
@m
@n
@o
@p
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:2533: render-test input --width=14 --length=14"
at_fn_check_prepare_trace "render.at:2533"
( $at_check_trace; render-test input --width=14 --length=14
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-+-+-+-+-+-+
|a|b|c|d|e|h|
+-+-+-+-+-+-+
|i|jkl|m|n|t|
+-+-+-+-+-+-+
|u|v|wxy|z|D|
+-+-+-+-+-+-+
|E|F|I|JKL|P|
+-+G+-+---+-+
|Q|H|R|UVW|Y|
+-+-+S+-+-+-+
|Z|0|T|3|4|8|
+-+1+-+-+-+-+
+-+1+---+-+-+
|9|2|abc|d|h|
+-+-+-+-+-+-+
|i|j|k|l|m|p|
+-+-+-+-+-+-+
+-+--+-+-+
|a| f|g|h|
+-+--+-+-+
|i|op|q|t|
+-+--+r+-+
|u| A|s|D|
+-+ B+-+-+
+-+ B+-+-+
|E| C|M|P|
+-+--+N+-+
|Q| X|O|Y|
+-+--+-+-+
|Z|56|7|8|
+-+--+-+-+
|9| efg|h|
+-+--+-+-+
|i| n|o|p|
+-+--+-+-+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2533"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:2574: render-test -o mb0 --min-break=0 input --width=14 --length=14"
at_fn_check_prepare_trace "render.at:2574"
( $at_check_trace; render-test -o mb0 --min-break=0 input --width=14 --length=14
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-+-+-+-+-+-+
|a|b|c|d|e|h|
+-+-+-+-+-+-+
|i|jkl|m|n|t|
+-+-+-+-+-+-+
|u|v|wxy|z|D|
+-+-+-+-+-+-+
|E|F|I|JKL|P|
+-+G+-+---+-+
|Q|H|R|UVW|Y|
+-+-+S+-+-+-+
|Z|0|T|3|4|8|
+-+1+-+-+-+-+
+-+1+---+-+-+
|9|2|abc|d|h|
+-+-+-+-+-+-+
|i|j|k|l|m|p|
+-+-+-+-+-+-+
+-+--+-+-+
|a| f|g|h|
+-+--+-+-+
|i|op|q|t|
+-+--+r+-+
|u| A|s|D|
+-+ B+-+-+
+-+ B+-+-+
|E| C|M|P|
+-+--+N+-+
|Q| X|O|Y|
+-+--+-+-+
|Z|56|7|8|
+-+--+-+-+
|9| efg|h|
+-+--+-+-+
|i| n|o|p|
+-+--+-+-+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2574"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1081
#AT_START_1082
at_fn_group_banner 1082 'render.at:2617' \
"double break 8x8, with joins, top and bottom headers" "" 136
at_xfail=no
(
$as_echo "1082. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
8 8 0 0 1 1
@a
@b
@c
@d
@e
@f
@g
@h
@i
1*2 @jkl
@m
1*2 @nop
2*1 @q\nr\ns
@t
@u
@v
1*2 @wxy
@z
2*1 @A\nB\nC
@D
@E
2*1 @F\nG\nH
@I
1*2 @JKL
2*1 @M\nN\nO
@P
@Q
2*1 @R\nS\nT
1*2 @UVW
@X
@Y
@Z
2*1 @0\n1\n2
@3
1*2 @456
@7
@8
@9
1*2 @abc
@d
1*2 @efg
@h
@i
@j
@k
@l
@m
@n
@o
@p
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:2620: render-test input --width=14 --length=14"
at_fn_check_prepare_trace "render.at:2620"
( $at_check_trace; render-test input --width=14 --length=14
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-+-+-+-+-+-+
|a|b|c|d|e|f|
+-+-+-+-+-+-+
|i|jkl|m|nop|
+-+-+-+-+-+-+
|u|v|wxy|z|A|
+-+-+-+-+-+B|
|E|F|I|JKL|C|
+-+G+-+---+-+
|Q|H|R|UVW|X|
+-+-+-+-+-+-+
|i|j|k|l|m|n|
+-+-+-+-+-+-+
+-+-+-+-+-+-+
|a|b|c|d|e|f|
+-+-+-+-+-+-+
|Z|0|S|3|456|
| |1|T| | |
+-+2+-+-+-+-+
|9| |abc|d|ef
+-+-+-+-+-+-+
|i|j|k|l|m|n|
+-+-+-+-+-+-+
+-+-+
|g|h|
+-+-+
|q|t|
|r+-+
|s|D|
+-+-+
|M|P|
|N+-+
|O|Y|
+-+-+
|o|p|
+-+-+
+-+-+
|g|h|
+-+-+
|7|8|
| | |
+-+-+
fg|h|
+-+-+
|o|p|
+-+-+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2620"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:2671: render-test -o mb0 --min-break=0 input --width=14 --length=14"
at_fn_check_prepare_trace "render.at:2671"
( $at_check_trace; render-test -o mb0 --min-break=0 input --width=14 --length=14
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-+-+-+-+-+-+
|a|b|c|d|e|f|
+-+-+-+-+-+-+
|i|jkl|m|nop|
+-+-+-+-+-+-+
|u|v|wxy|z|A|
+-+-+-+-+-+B|
|E|F|I|JKL|C|
+-+G+-+---+-+
|Q|H|R|UVW|X|
+-+-+-+-+-+-+
|i|j|k|l|m|n|
+-+-+-+-+-+-+
+-+-+-+-+-+-+
|a|b|c|d|e|f|
+-+-+-+-+-+-+
|Z|0|S|3|456|
| |1|T| | |
+-+2+-+-+-+-+
|9| |abc|d|ef
+-+-+-+-+-+-+
|i|j|k|l|m|n|
+-+-+-+-+-+-+
+-+-+
|g|h|
+-+-+
|q|t|
|r+-+
|s|D|
+-+-+
|M|P|
|N+-+
|O|Y|
+-+-+
|o|p|
+-+-+
+-+-+
|g|h|
+-+-+
|7|8|
| | |
+-+-+
fg|h|
+-+-+
|o|p|
+-+-+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2671"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1082
#AT_START_1083
at_fn_group_banner 1083 'render.at:2724' \
"double break 8x8, with joins, all headers" " " 136
at_xfail=no
(
$as_echo "1083. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
8 8 1 1 1 1
@a
@b
@c
@d
@e
@f
@g
@h
@i
1*2 @jkl
@m
1*2 @nop
2*1 @q\nr\ns
@t
@u
@v
1*2 @wxy
@z
2*1 @A\nB\nC
@D
@E
2*1 @F\nG\nH
@I
1*2 @JKL
2*1 @M\nN\nO
@P
@Q
2*1 @R\nS\nT
1*2 @UVW
@X
@Y
@Z
2*1 @0\n1\n2
@3
1*2 @456
@7
@8
@9
1*2 @abc
@d
1*2 @efg
@h
@i
@j
@k
@l
@m
@n
@o
@p
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:2727: render-test input --width=14 --length=14"
at_fn_check_prepare_trace "render.at:2727"
( $at_check_trace; render-test input --width=14 --length=14
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-+-+-+-+-+-+
|a|b|c|d|e|h|
+-+-+-+-+-+-+
|i|jkl|m|n|t|
+-+-+-+-+-+-+
|u|v|wxy|z|D|
+-+-+-+-+-+-+
|E|F|I|JKL|P|
+-+G+-+---+-+
|Q|H|R|UVW|Y|
+-+-+-+-+-+-+
|i|j|k|l|m|p|
+-+-+-+-+-+-+
+-+-+-+-+-+-+
|a|b|c|d|e|h|
+-+-+-+-+-+-+
|Z|0|S|3|4|8|
| |1|T| | | |
+-+2+-+-+-+-+
|9| |abc|d|h|
+-+-+-+-+-+-+
|i|j|k|l|m|p|
+-+-+-+-+-+-+
+-+--+-+-+
|a| f|g|h|
+-+--+-+-+
|i|op|q|t|
+-+--+r+-+
|u| A|s|D|
+-+ B+-+-+
|E| C|M|P|
+-+--+N+-+
|Q| X|O|Y|
+-+--+-+-+
|i| n|o|p|
+-+--+-+-+
+-+--+-+-+
|a| f|g|h|
+-+--+-+-+
|Z|56|7|8|
| | | | |
+-+--+-+-+
|9| efg|h|
+-+--+-+-+
|i| n|o|p|
+-+--+-+-+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2727"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:2778: render-test -o mb0 --min-break=0 input --width=14 --length=14"
at_fn_check_prepare_trace "render.at:2778"
( $at_check_trace; render-test -o mb0 --min-break=0 input --width=14 --length=14
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-+-+-+-+-+-+
|a|b|c|d|e|h|
+-+-+-+-+-+-+
|i|jkl|m|n|t|
+-+-+-+-+-+-+
|u|v|wxy|z|D|
+-+-+-+-+-+-+
|E|F|I|JKL|P|
+-+G+-+---+-+
|Q|H|R|UVW|Y|
+-+-+-+-+-+-+
|i|j|k|l|m|p|
+-+-+-+-+-+-+
+-+-+-+-+-+-+
|a|b|c|d|e|h|
+-+-+-+-+-+-+
|Z|0|S|3|4|8|
| |1|T| | | |
+-+2+-+-+-+-+
|9| |abc|d|h|
+-+-+-+-+-+-+
|i|j|k|l|m|p|
+-+-+-+-+-+-+
+-+--+-+-+
|a| f|g|h|
+-+--+-+-+
|i|op|q|t|
+-+--+r+-+
|u| A|s|D|
+-+ B+-+-+
|E| C|M|P|
+-+--+N+-+
|Q| X|O|Y|
+-+--+-+-+
|i| n|o|p|
+-+--+-+-+
+-+--+-+-+
|a| f|g|h|
+-+--+-+-+
|Z|56|7|8|
| | | | |
+-+--+-+-+
|9| efg|h|
+-+--+-+-+
|i| n|o|p|
+-+--+-+-+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2778"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1083
#AT_START_1084
at_fn_group_banner 1084 'render.at:2831' \
"double break joined cells too big for page" " " 136
at_xfail=no
(
$as_echo "1084. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
7 7
@a
@b
@c
@d
@e
@f
@g
@h
6*6 @The MISSING subcommand determines the handling of missing variables. If INCLUDE is set, then user‑missing values are included in the calculations. If NOINCLUDE is set, which is the default, user‑missing values are excluded.
@i
@j
@k
@l
@m
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:2849: render-test --width=15 --length=15 input"
at_fn_check_prepare_trace "render.at:2849"
( $at_check_trace; render-test --width=15 --length=15 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-+--+--+---+
|a| b| c| d|
+-+--+--+---+
|h| The
| | su
+-+ determ
|i| han
| |missing va
| |If INCLUDE
+-+ then user
|j| va
| | include
| | calculati
+-+ NOINCLUDE
+-+ NOINCLUDE
|k| whic
| |
| | user
+-+ va
|l| e
| |
| |
+-+
|m|
| |
+-+----------
+--+--+--+
| e| f| g|
+--+--+--+
e MISSING|
ubcommand|
mines the|
ndling of|
ariables.|
E is set,|
r‑missing|
alues are|
ed in the|
ions. If|
E is set,|
E is set,|
ch is the|
default,|
r‑missing|
alues are|
excluded.|
|
|
|
|
|
---------+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2849"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/render.at:2906: render-test -o mb0 --min-break=0 --width=15 --length=15 input"
at_fn_check_prepare_trace "render.at:2906"
( $at_check_trace; render-test -o mb0 --min-break=0 --width=15 --length=15 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-+--+--+---+-
|a| b| c| d|
+-+--+--+---+-
|h| The
| | sub
+-+ determi
|i| hand
| |missing var
| |If INCLUDE
+-+ then user‑
|j| val
| | included
| | calculatio
+-+ NOINCLUDE
|k| which
| | d
| | user‑
+-+ val
|l| ex
| |
| |
+-+
|m|
| |
+-+-----------
-+--+--+
e| f| g|
-+--+--+
MISSING|
command|
nes the|
ling of|
iables.|
is set,|
missing|
ues are|
in the|
ns. If|
is set,|
is the|
efault,|
missing|
ues are|
cluded.|
|
|
|
|
|
-------+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2906"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1084
#AT_START_1085
at_fn_group_banner 1085 'render.at:2968' \
"LIST puts space between columns" " " 137
at_xfail=no
(
$as_echo "1085. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >list.sps <<'_ATEOF'
DATA LIST LIST NOTABLE /x y z (F1.0).
BEGIN DATA.
1 2 3
4 5 6
7 8 9
END DATA.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:2979: pspp list.sps"
at_fn_check_prepare_trace "render.at:2979"
( $at_check_trace; pspp list.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Data List
x y z
-----
1 2 3
4 5 6
7 8 9
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:2979"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1085
#AT_START_1086
at_fn_group_banner 1086 'render.at:2993' \
"ASCII driver renders end of line spaces reasonably" "" 137
at_xfail=no
(
$as_echo "1086. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
3 3
@a
@b
@xyzzy
@d
@e
@f
@g
@h
@i
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:3007: render-test --width=15 --length=15 input"
at_fn_check_prepare_trace "render.at:3007"
( $at_check_trace; render-test --width=15 --length=15 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-+-+-----+
|a|b|xyzzy|
+-+-+-----+
|d|e| f|
+-+-+-----+
|g|h| i|
+-+-+-----+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:3007"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1086
#AT_START_1087
at_fn_group_banner 1087 'render.at:3031' \
"multiple spanned cells all contribute to dimensions" "" 137
at_xfail=no
(
$as_echo "1087. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >input <<'_ATEOF'
2 2
1*2 @A long text string.
1*2 @shorter
_ATEOF
{ set +x
$as_echo "$at_srcdir/render.at:3038: render-test --width=30 --length=15 input"
at_fn_check_prepare_trace "render.at:3038"
( $at_check_trace; render-test --width=30 --length=15 input
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+-------------------+
|A long text string.|
+-------------------+
| shorter|
+-------------------+
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/render.at:3038"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1087
#AT_START_1088
at_fn_group_banner 1088 'tables.at:3' \
"precision" " " 138
at_xfail=no
(
$as_echo "1088. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >prec.sps <<'_ATEOF'
data list notable list /A * B *.
begin data.
2.0 3.0
1.0 2.0
2.0 4.5
2.0 4.5
3.0 6.0
end data.
OUTPUT MODIFY
/SELECT TABLES
/TABLECELLS SELECT = [ SIGNIFICANCE ]
FORMAT = F.3.
t-test /PAIRS a with b (PAIRED).
OUTPUT MODIFY
/SELECT TABLES
/TABLECELLS SELECT = [ SIGNIFICANCE ]
FORMAT = F12.5.
t-test /PAIRS a with b (PAIRED).
_ATEOF
{ set +x
$as_echo "$at_srcdir/tables.at:31: pspp -O format=csv prec.sps"
at_fn_check_prepare_trace "tables.at:31"
( $at_check_trace; pspp -O format=csv prec.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Paired Sample Statistics
,,Mean,N,Std. Deviation,S.E. Mean
Pair 1,A,2.00,5,.71,.32
,B,4.00,5,1.54,.69
Table: Paired Samples Correlations
,,N,Correlation,Sig.
Pair 1,A & B,5,.92,.028
Table: Paired Samples Test
,,Paired Differences,,,,,,,
,,,,,95% Confidence Interval of the Difference,,,,
,,Mean,Std. Deviation,Std. Error Mean,Lower,Upper,t,df,Sig. (2-tailed)
Pair 1,A - B,-2.00,.94,.42,-3.16,-.84,-4.78,4,.009
Table: Paired Sample Statistics
,,Mean,N,Std. Deviation,S.E. Mean
Pair 1,A,2.00,5,.71,.32
,B,4.00,5,1.54,.69
Table: Paired Samples Correlations
,,N,Correlation,Sig.
Pair 1,A & B,5,.92,.02801
Table: Paired Samples Test
,,Paired Differences,,,,,,,
,,,,,95% Confidence Interval of the Difference,,,,
,,Mean,Std. Deviation,Std. Error Mean,Lower,Upper,t,df,Sig. (2-tailed)
Pair 1,A - B,-2.00,.94,.42,-3.16,-.84,-4.78,4,.00877
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/tables.at:31"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1088
#AT_START_1089
at_fn_group_banner 1089 'main.at:3' \
"nonexistent syntax file crash" " " 139
at_xfail=no
(
$as_echo "1089. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/main.at:4: pspp nonexistent"
at_fn_check_prepare_trace "main.at:4"
( $at_check_trace; pspp nonexistent
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "error: Opening \`nonexistent': No such file or directory.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/main.at:4"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1089
#AT_START_1090
at_fn_group_banner 1090 'main.at:9' \
"SIGTERM yields clean shutdown" " " 139
at_xfail=no
(
$as_echo "1090. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >main.sps <<'_ATEOF'
INPUT PROGRAM.
COMPUTE x = x + 1.
DO IF x = 10000.
END CASE.
ELSE IF x < 0.
END FILE.
END IF.
END INPUT PROGRAM.
EXECUTE.
_ATEOF
{ set +x
$as_echo "$at_srcdir/main.at:21: pspp main.sps & sleep 1; kill \$!; wait \$!"
at_fn_check_prepare_dynamic "pspp main.sps & sleep 1; kill $!; wait $!" "main.at:21"
( $at_check_trace; pspp main.sps & sleep 1; kill $!; wait $!
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 143 $at_status "$at_srcdir/main.at:21"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1090
#AT_START_1091
at_fn_group_banner 1091 'main.at:24' \
"SIGSEGV yields error report" " " 139
at_xfail=no
(
$as_echo "1091. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/main.at:25: echo 'host command=[\"kill -SEGV \$PPID\"].' | pspp -O format=csv"
at_fn_check_prepare_notrace 'a shell pipeline' "main.at:25"
( $at_check_trace; echo 'host command=["kill -SEGV $PPID"].' | pspp -O format=csv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; tee stderr <"$at_stderr"
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 139 $at_status "$at_srcdir/main.at:25"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >expout <<'_ATEOF'
******************************************************
You have discovered a bug in PSPP. Please report this
to bug-gnu-pspp@gnu.org. Please include this entire
message, *plus* several lines of output just above it.
For the best chance at having the bug fixed, also
include the syntax file that triggered it and a sample
of any data file used for input.
proximate cause: Segmentation Violation
_ATEOF
{ set +x
$as_echo "$at_srcdir/main.at:37: sed '/proximate/q' < stderr"
at_fn_check_prepare_trace "main.at:37"
( $at_check_trace; sed '/proximate/q' < stderr
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
$at_diff expout "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/main.at:37"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1091
#AT_START_1092
at_fn_group_banner 1092 'main.at:42' \
"argument parsing" " " 139
at_xfail=no
(
$as_echo "1092. $at_setup_line: testing $at_desc ..."
$at_traceon
cat >main.sps <<'_ATEOF'
ECHO 'This is a test'.
FINISH.
_ATEOF
{ set +x
$as_echo "$at_srcdir/main.at:49: pspp --syntax=enhanced main.sps"
at_fn_check_prepare_trace "main.at:49"
( $at_check_trace; pspp --syntax=enhanced main.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/main.at:49"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1092
#AT_START_1093
at_fn_group_banner 1093 'syntax-gen.at:3' \
"Syntax Generation - printf like" " " 140
at_xfail=no
(
$as_echo "1093. $at_setup_line: testing $at_desc ..."
$at_traceon
{ set +x
$as_echo "$at_srcdir/syntax-gen.at:5: \$abs_top_builddir/tests/ui/syntax-gen-test"
at_fn_check_prepare_dynamic "$abs_top_builddir/tests/ui/syntax-gen-test" "syntax-gen.at:5"
( $at_check_trace; $abs_top_builddir/tests/ui/syntax-gen-test
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "A simple string: Hello worldEND
A syntax string: \"Hello world\"END
A syntax string containing \": 'here\"is the quote'END
A syntax string containing non-printables: X'41204374726C4C0C63686172'END
An integer: 98765END
A floating point number: 3.142END
A floating point number with default precision: 1.234000END
A floating point number with given precision: 1.23399999999999998579END
A literal %
and finally a \"concatination\" of 6 different 20.309000 examples 23.09 of 100% conversions.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syntax-gen.at:5"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1093
#AT_START_1094
at_fn_group_banner 1094 'perl-module.at:17' \
"Perl create system file" " " 141
at_xfail=no
(
$as_echo "1094. $at_setup_line: testing $at_desc ..."
$at_traceon
$as_echo "perl-module.at:18" >"$at_check_line_file"
(test "$WITH_PERL_MODULE" = no) \
&& at_fn_check_skip 77 "$at_srcdir/perl-module.at:18"
cat >test.pl <<'_ATEOF'
use warnings;
use strict;
use PSPP;
my $d = PSPP::Dict->new();
die "dictionary creation" if !ref $d;
die if $d->get_var_cnt () != 0;
$d->set_label ("My Dictionary");
$d->set_documents ("These Documents");
# Tests for variable creation
my $var0 = PSPP::Var->new ($d, "le");
die "trap illegal variable name" if ref $var0;
die if $d->get_var_cnt () != 0;
$var0 = PSPP::Var->new ($d, "legal");
die "accept legal variable name" if !ref $var0;
die if $d->get_var_cnt () != 1;
my $var1 = PSPP::Var->new ($d, "money",
(fmt=>PSPP::Fmt::DOLLAR,
width=>4, decimals=>2) );
die "cappet valid format" if !ref $var1;
die if $d->get_var_cnt () != 2;
$d->set_weight ($var1);
my $sysfile = PSPP::Sysfile->new ('testfile.sav', $d);
die "create sysfile object" if !ref $sysfile;
$sysfile->close ();
_ATEOF
{ set +x
$as_echo "$at_srcdir/perl-module.at:54: LD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
DYLD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
\$PERL -I\$abs_top_builddir/perl-module/blib/arch \\
-I\$abs_top_builddir/perl-module/blib/lib test.pl"
at_fn_check_prepare_notrace 'an embedded newline' "perl-module.at:54"
( $at_check_trace; LD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
DYLD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
$PERL -I$abs_top_builddir/perl-module/blib/arch \
-I$abs_top_builddir/perl-module/blib/lib test.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:54"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >dump-dict.sps <<'_ATEOF'
GET FILE='testfile.sav'.
DISPLAY FILE LABEL.
DISPLAY DOCUMENTS.
DISPLAY DICTIONARY.
SHOW WEIGHT.
_ATEOF
{ set +x
$as_echo "$at_srcdir/perl-module.at:62: pspp -O format=csv dump-dict.sps"
at_fn_check_prepare_trace "perl-module.at:62"
( $at_check_trace; pspp -O format=csv dump-dict.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "File label: My Dictionary
Documents in the active dataset:
These Documents
Variable,Description,Position
legal,Format: F9.2,1
money,Format: DOLLAR6.2,2
dump-dict.sps:5: note: SHOW: WEIGHT is money.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:62"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1094
#AT_START_1095
at_fn_group_banner 1095 'perl-module.at:77' \
"Perl writing cases to system files" " " 141
at_xfail=no
(
$as_echo "1095. $at_setup_line: testing $at_desc ..."
$at_traceon
$as_echo "perl-module.at:78" >"$at_check_line_file"
(test "$WITH_PERL_MODULE" = no) \
&& at_fn_check_skip 77 "$at_srcdir/perl-module.at:78"
cat >test.pl <<'_ATEOF'
use warnings;
use strict;
use PSPP;
my $d = PSPP::Dict->new();
PSPP::Var->new ($d, "id",
(
fmt=>PSPP::Fmt::F,
width=>2,
decimals=>0
)
);
PSPP::Var->new ($d, "name",
(
fmt=>PSPP::Fmt::A,
width=>20,
)
);
$d->set_documents ("This should not appear");
$d->clear_documents ();
$d->add_document ("This is a document line");
$d->set_label ("This is the file label");
# Check that we can write cases to system files.
my $sysfile = PSPP::Sysfile->new ("testfile.sav", $d);
my $res = $sysfile->append_case ( [34, "frederick"]);
die "append case" if !$res;
$res = $sysfile->append_case ( [34, "frederick", "extra"]);
die "append case with too many variables" if $res;
$sysfile->close ();
# Check that sysfiles are closed properly automaticallly in the destructor.
my $sysfile2 = PSPP::Sysfile->new ("testfile2.sav", $d);
$res = $sysfile2->append_case ( [21, "wheelbarrow"]);
die "append case 2" if !$res;
$res = $sysfile->append_case ( [34, "frederick", "extra"]);
die "append case with too many variables" if $res;
# Don't close. We want to test that the destructor does that.
_ATEOF
{ set +x
$as_echo "$at_srcdir/perl-module.at:125: LD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
DYLD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
\$PERL -I\$abs_top_builddir/perl-module/blib/arch \\
-I\$abs_top_builddir/perl-module/blib/lib test.pl"
at_fn_check_prepare_notrace 'an embedded newline' "perl-module.at:125"
( $at_check_trace; LD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
DYLD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
$PERL -I$abs_top_builddir/perl-module/blib/arch \
-I$abs_top_builddir/perl-module/blib/lib test.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:125"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >dump-dicts.sps <<'_ATEOF'
GET FILE='testfile.sav'.
DISPLAY DICTIONARY.
DISPLAY FILE LABEL.
DISPLAY DOCUMENTS.
LIST.
GET FILE='testfile2.sav'.
DISPLAY DICTIONARY.
DISPLAY FILE LABEL.
DISPLAY DOCUMENTS.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/perl-module.at:139: pspp -O format=csv dump-dicts.sps"
at_fn_check_prepare_trace "perl-module.at:139"
( $at_check_trace; pspp -O format=csv dump-dicts.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
id,Format: F2.0,1
name,Format: A20,2
File label: This is the file label
Documents in the active dataset:
This is a document line
Table: Data List
id,name
34,frederick
Variable,Description,Position
id,Format: F2.0,1
name,Format: A20,2
File label: This is the file label
Documents in the active dataset:
This is a document line
Table: Data List
id,name
21,wheelbarrow
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:139"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1095
#AT_START_1096
at_fn_group_banner 1096 'perl-module.at:170' \
"Perl write variable parameters" " " 141
at_xfail=no
(
$as_echo "1096. $at_setup_line: testing $at_desc ..."
$at_traceon
$as_echo "perl-module.at:171" >"$at_check_line_file"
(test "$WITH_PERL_MODULE" = no) \
&& at_fn_check_skip 77 "$at_srcdir/perl-module.at:171"
cat >test.pl <<'_ATEOF'
use warnings;
use strict;
use PSPP;
my $dict = PSPP::Dict->new();
die "dictionary creation" if !ref $dict;
my $int = PSPP::Var->new ($dict, "integer",
(width=>8, decimals=>0) );
$int->set_label ("My Integer");
$int->add_value_label (99, "Silly");
$int->clear_value_labels ();
$int->add_value_label (0, "Zero");
$int->add_value_label (1, "Unity");
$int->add_value_label (2, "Duality");
my $str = PSPP::Var->new ($dict, "string",
(fmt=>PSPP::Fmt::A, width=>8) );
$str->set_label ("My String");
$str->add_value_label ("xx", "foo");
$str->add_value_label ("yy", "bar");
$str->set_missing_values ("this", "that");
my $longstr = PSPP::Var->new ($dict, "longstring",
(fmt=>PSPP::Fmt::A, width=>9) );
$longstr->set_label ("My Long String");
my $re = $longstr->add_value_label ("xxx", "xfoo");
$int->set_missing_values (9, 99);
my $sysfile = PSPP::Sysfile->new ("testfile.sav", $dict);
$sysfile->close ();
_ATEOF
{ set +x
$as_echo "$at_srcdir/perl-module.at:215: LD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
DYLD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
\$PERL -I\$abs_top_builddir/perl-module/blib/arch \\
-I\$abs_top_builddir/perl-module/blib/lib test.pl"
at_fn_check_prepare_notrace 'an embedded newline' "perl-module.at:215"
( $at_check_trace; LD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
DYLD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
$PERL -I$abs_top_builddir/perl-module/blib/arch \
-I$abs_top_builddir/perl-module/blib/lib test.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:215"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >dump-dict.sps <<'_ATEOF'
GET FILE='testfile.sav'.
DISPLAY DICTIONARY.
_ATEOF
{ set +x
$as_echo "$at_srcdir/perl-module.at:220: pspp -O format=csv dump-dict.sps"
at_fn_check_prepare_trace "perl-module.at:220"
( $at_check_trace; pspp -O format=csv dump-dict.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
integer,\"Label: My Integer
Format: F8.0
Missing Values: 9; 99
Value,Label
0,Zero
1,Unity
2,Duality\",1
string,\"Label: My String
Format: A8
Missing Values: \"\"this \"\"; \"\"that \"\"
Value,Label
xx ,foo
yy ,bar\",2
longstring,\"Label: My Long String
Format: A9
Value,Label
xxx ,xfoo\",3
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:220"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1096
#AT_START_1097
at_fn_group_banner 1097 'perl-module.at:245' \
"Perl dictionary survives system file" " " 141
at_xfail=no
(
$as_echo "1097. $at_setup_line: testing $at_desc ..."
$at_traceon
$as_echo "perl-module.at:246" >"$at_check_line_file"
(test "$WITH_PERL_MODULE" = no) \
&& at_fn_check_skip 77 "$at_srcdir/perl-module.at:246"
cat >test.pl <<'_ATEOF'
use warnings;
use strict;
use PSPP;
my $sysfile ;
{
my $d = PSPP::Dict->new();
PSPP::Var->new ($d, "id",
(
fmt=>PSPP::Fmt::F,
width=>2,
decimals=>0
)
);
$sysfile = PSPP::Sysfile->new ("testfile.sav", $d);
}
my $res = $sysfile->append_case ([3]);
print "Dictionary survives sysfile\n" if $res;
_ATEOF
{ set +x
$as_echo "$at_srcdir/perl-module.at:271: LD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
DYLD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
\$PERL -I\$abs_top_builddir/perl-module/blib/arch \\
-I\$abs_top_builddir/perl-module/blib/lib test.pl"
at_fn_check_prepare_notrace 'an embedded newline' "perl-module.at:271"
( $at_check_trace; LD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
DYLD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
$PERL -I$abs_top_builddir/perl-module/blib/arch \
-I$abs_top_builddir/perl-module/blib/lib test.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Dictionary survives sysfile
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:271"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1097
#AT_START_1098
at_fn_group_banner 1098 'perl-module.at:314' \
"Perl read system file" " " 141
at_xfail=no
(
$as_echo "1098. $at_setup_line: testing $at_desc ..."
$at_traceon
$as_echo "perl-module.at:315" >"$at_check_line_file"
(test "$WITH_PERL_MODULE" = no) \
&& at_fn_check_skip 77 "$at_srcdir/perl-module.at:315"
cat >sample.sps <<'_ATEOF'
data list notable list /string (a8) longstring (a12) numeric (f10) date (date11) dollar (dollar8.2) datetime (datetime17)
begin data.
1111 One 1 1/1/1 1 1/1/1+01:01
2222 Two 2 2/2/2 2 2/2/2+02:02
3333 Three 3 3/3/3 3 3/3/3+03:03
. . . . . .
5555 Five 5 5/5/5 5 5/5/5+05:05
end data.
variable labels string 'A Short String Variable'
/longstring 'A Long String Variable'
/numeric 'A Numeric Variable'
/date 'A Date Variable'
/dollar 'A Dollar Variable'
/datetime 'A Datetime Variable'.
missing values numeric (9, 5, 999).
missing values string ("3333").
add value labels
/string '1111' 'ones' '2222' 'twos' '3333' 'threes'
/numeric 1 'Unity' 2 'Duality' 3 'Thripality'.
variable attribute
variables = numeric
attribute=colour[1]('blue') colour[2]('pink') colour[3]('violet')
attribute=size('large') nationality('foreign').
save outfile='sample.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/perl-module.at:316: pspp -O format=csv sample.sps"
at_fn_check_prepare_trace "perl-module.at:316"
( $at_check_trace; pspp -O format=csv sample.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:316"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >test.pl <<'_ATEOF'
use warnings;
use strict;
use PSPP;
my $sf = PSPP::Reader->open ("sample.sav");
my $dict = $sf->get_dict ();
for (my $v = 0 ; $v < $dict->get_var_cnt() ; $v++)
{
my $var = $dict->get_var ($v);
my $name = $var->get_name ();
my $label = $var->get_label ();
print "Variable $v is \"$name\", label is \"$label\"\n";
my $vl = $var->get_value_labels ();
print "Value Labels:\n";
print "$_ => $vl->{$_}\n" for sort (keys %$vl);
}
while (my @c = $sf->get_next_case () )
{
for (my $v = 0; $v < $dict->get_var_cnt(); $v++)
{
print "val$v: \"$c[$v]\"\n";
}
print "\n";
}
_ATEOF
{ set +x
$as_echo "$at_srcdir/perl-module.at:349: LD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
DYLD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
\$PERL -I\$abs_top_builddir/perl-module/blib/arch \\
-I\$abs_top_builddir/perl-module/blib/lib test.pl"
at_fn_check_prepare_notrace 'an embedded newline' "perl-module.at:349"
( $at_check_trace; LD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
DYLD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
$PERL -I$abs_top_builddir/perl-module/blib/arch \
-I$abs_top_builddir/perl-module/blib/lib test.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable 0 is \"string\", label is \"A Short String Variable\"
Value Labels:
1111 => ones
2222 => twos
3333 => threes
Variable 1 is \"longstring\", label is \"A Long String Variable\"
Value Labels:
Variable 2 is \"numeric\", label is \"A Numeric Variable\"
Value Labels:
1 => Unity
2 => Duality
3 => Thripality
Variable 3 is \"date\", label is \"A Date Variable\"
Value Labels:
Variable 4 is \"dollar\", label is \"A Dollar Variable\"
Value Labels:
Variable 5 is \"datetime\", label is \"A Datetime Variable\"
Value Labels:
val0: \"1111 \"
val1: \"One \"
val2: \"1\"
val3: \"13197686400\"
val4: \"1\"
val5: \"13197690060\"
val0: \"2222 \"
val1: \"Two \"
val2: \"2\"
val3: \"13231987200\"
val4: \"2\"
val5: \"13231994520\"
val0: \"3333 \"
val1: \"Three \"
val2: \"3\"
val3: \"13266028800\"
val4: \"3\"
val5: \"13266039780\"
val0: \". \"
val1: \". \"
val2: \"\"
val3: \"\"
val4: \"\"
val5: \"\"
val0: \"5555 \"
val1: \"Five \"
val2: \"5\"
val3: \"13334630400\"
val4: \"5\"
val5: \"13334648700\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:349"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1098
#AT_START_1099
at_fn_group_banner 1099 'perl-module.at:406' \
"Perl copying system files" " " 141
at_xfail=no
(
$as_echo "1099. $at_setup_line: testing $at_desc ..."
$at_traceon
$as_echo "perl-module.at:407" >"$at_check_line_file"
(test "$WITH_PERL_MODULE" = no) \
&& at_fn_check_skip 77 "$at_srcdir/perl-module.at:407"
cat >sample.sps <<'_ATEOF'
data list notable list /string (a8) longstring (a12) numeric (f10) date (date11) dollar (dollar8.2) datetime (datetime17)
begin data.
1111 One 1 1/1/1 1 1/1/1+01:01
2222 Two 2 2/2/2 2 2/2/2+02:02
3333 Three 3 3/3/3 3 3/3/3+03:03
. . . . . .
5555 Five 5 5/5/5 5 5/5/5+05:05
end data.
variable labels string 'A Short String Variable'
/longstring 'A Long String Variable'
/numeric 'A Numeric Variable'
/date 'A Date Variable'
/dollar 'A Dollar Variable'
/datetime 'A Datetime Variable'.
missing values numeric (9, 5, 999).
missing values string ("3333").
add value labels
/string '1111' 'ones' '2222' 'twos' '3333' 'threes'
/numeric 1 'Unity' 2 'Duality' 3 'Thripality'.
variable attribute
variables = numeric
attribute=colour[1]('blue') colour[2]('pink') colour[3]('violet')
attribute=size('large') nationality('foreign').
save outfile='sample.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/perl-module.at:408: pspp -O format=csv sample.sps"
at_fn_check_prepare_trace "perl-module.at:408"
( $at_check_trace; pspp -O format=csv sample.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:408"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >test.pl <<'_ATEOF'
use warnings;
use strict;
use PSPP;
my $input = PSPP::Reader->open ("sample.sav");
my $dict = $input->get_dict ();
my $output = PSPP::Sysfile->new ("copy.sav", $dict);
while (my (@c) = $input->get_next_case () )
{
$output->append_case (\@c);
}
$output->close ();
_ATEOF
{ set +x
$as_echo "$at_srcdir/perl-module.at:427: LD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
DYLD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
\$PERL -I\$abs_top_builddir/perl-module/blib/arch \\
-I\$abs_top_builddir/perl-module/blib/lib test.pl"
at_fn_check_prepare_notrace 'an embedded newline' "perl-module.at:427"
( $at_check_trace; LD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
DYLD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
$PERL -I$abs_top_builddir/perl-module/blib/arch \
-I$abs_top_builddir/perl-module/blib/lib test.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:427"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >dump-dicts.sps <<'_ATEOF'
GET FILE='sample.sav'.
DISPLAY DICTIONARY.
LIST.
GET FILE='copy.sav'.
DISPLAY DICTIONARY.
LIST.
_ATEOF
{ set +x
$as_echo "$at_srcdir/perl-module.at:437: pspp -O format=csv dump-dicts.sps"
at_fn_check_prepare_trace "perl-module.at:437"
( $at_check_trace; pspp -O format=csv dump-dicts.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Variable,Description,Position
string,\"Label: A Short String Variable
Format: A8
Missing Values: \"\"3333 \"\"
Value,Label
1111 ,ones
2222 ,twos
3333 ,threes\",1
longstring,\"Label: A Long String Variable
Format: A12\",2
numeric,\"Label: A Numeric Variable
Format: F10.0
Missing Values: 9; 5; 999
Value,Label
1,Unity
2,Duality
3,Thripality
Attribute,Value
colour[1],blue
colour[2],pink
colour[3],violet
nationality,foreign
size,large\",3
date,\"Label: A Date Variable
Format: DATE11\",4
dollar,\"Label: A Dollar Variable
Format: DOLLAR11.2\",5
datetime,\"Label: A Datetime Variable
Format: DATETIME17.0\",6
Table: Data List
string,longstring,numeric,date,dollar,datetime
1111 ,One ,1,01-JAN-2001,\$1.00,01-JAN-2001 01:01
2222 ,Two ,2,02-FEB-2002,\$2.00,02-FEB-2002 02:02
3333 ,Three ,3,03-MAR-2003,\$3.00,03-MAR-2003 03:03
. ,. ,.,.,. ,.
5555 ,Five ,5,05-MAY-2005,\$5.00,05-MAY-2005 05:05
Variable,Description,Position
string,\"Label: A Short String Variable
Format: A8
Missing Values: \"\"3333 \"\"
Value,Label
1111 ,ones
2222 ,twos
3333 ,threes\",1
longstring,\"Label: A Long String Variable
Format: A12\",2
numeric,\"Label: A Numeric Variable
Format: F10.0
Missing Values: 9; 5; 999
Value,Label
1,Unity
2,Duality
3,Thripality
Attribute,Value
colour[1],blue
colour[2],pink
colour[3],violet
nationality,foreign
size,large\",3
date,\"Label: A Date Variable
Format: DATE11\",4
dollar,\"Label: A Dollar Variable
Format: DOLLAR11.2\",5
datetime,\"Label: A Datetime Variable
Format: DATETIME17.0\",6
Table: Data List
string,longstring,numeric,date,dollar,datetime
1111 ,One ,1,01-JAN-2001,\$1.00,01-JAN-2001 01:01
2222 ,Two ,2,02-FEB-2002,\$2.00,02-FEB-2002 02:02
3333 ,Three ,3,03-MAR-2003,\$3.00,03-MAR-2003 03:03
. ,. ,.,.,. ,.
5555 ,Five ,5,05-MAY-2005,\$5.00,05-MAY-2005 05:05
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:437"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1099
#AT_START_1100
at_fn_group_banner 1100 'perl-module.at:522' \
"Perl value formatting" " " 141
at_xfail=no
(
$as_echo "1100. $at_setup_line: testing $at_desc ..."
$at_traceon
$as_echo "perl-module.at:523" >"$at_check_line_file"
(test "$WITH_PERL_MODULE" = no) \
&& at_fn_check_skip 77 "$at_srcdir/perl-module.at:523"
cat >dd.sps <<'_ATEOF'
DATA LIST LIST /d (DATETIME17).
BEGIN DATA.
11/9/2001+08:20
END DATA.
SAVE OUTFILE='dd.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/perl-module.at:532: pspp -O format=csv dd.sps"
at_fn_check_prepare_trace "perl-module.at:532"
( $at_check_trace; pspp -O format=csv dd.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Table: Reading free-form data from INLINE.
Variable,Format
d,DATETIME17.0
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:532"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >test.pl <<'_ATEOF'
use warnings;
use strict;
use PSPP;
my $sf = PSPP::Reader->open ("dd.sav");
my $dict = $sf->get_dict ();
my (@c) = $sf->get_next_case ();
my $var = $dict->get_var (0);
my $val = $c[0];
my $formatted = PSPP::format_value ($val, $var);
my $str = gmtime ($val - PSPP::PERL_EPOCH);
print "Formatted string is \"$formatted\"\n";
print "Perl representation is \"$str\"\n";
_ATEOF
{ set +x
$as_echo "$at_srcdir/perl-module.at:555: LD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
DYLD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
\$PERL -I\$abs_top_builddir/perl-module/blib/arch \\
-I\$abs_top_builddir/perl-module/blib/lib test.pl"
at_fn_check_prepare_notrace 'an embedded newline' "perl-module.at:555"
( $at_check_trace; LD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
DYLD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
$PERL -I$abs_top_builddir/perl-module/blib/arch \
-I$abs_top_builddir/perl-module/blib/lib test.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Formatted string is \"11-SEP-2001 08:20\"
Perl representation is \"Tue Sep 11 08:20:00 2001\"
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:555"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1100
#AT_START_1101
at_fn_group_banner 1101 'perl-module.at:561' \
"Perl opening nonexistent file" " " 141
at_xfail=no
(
$as_echo "1101. $at_setup_line: testing $at_desc ..."
$at_traceon
$as_echo "perl-module.at:562" >"$at_check_line_file"
(test "$WITH_PERL_MODULE" = no) \
&& at_fn_check_skip 77 "$at_srcdir/perl-module.at:562"
cat >test.pl <<'_ATEOF'
use warnings;
use strict;
use PSPP;
my $sf = PSPP::Reader->open ("no-such-file.sav");
die "Returns undef on opening failure" if ref $sf;
print $PSPP::errstr, "\n";
_ATEOF
{ set +x
$as_echo "$at_srcdir/perl-module.at:573: LD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
DYLD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
\$PERL -I\$abs_top_builddir/perl-module/blib/arch \\
-I\$abs_top_builddir/perl-module/blib/lib test.pl"
at_fn_check_prepare_notrace 'an embedded newline' "perl-module.at:573"
( $at_check_trace; LD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
DYLD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
$PERL -I$abs_top_builddir/perl-module/blib/arch \
-I$abs_top_builddir/perl-module/blib/lib test.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "Name \"PSPP::errstr\" used only once: possible typo at test.pl line 8.
" | \
$at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "An error occurred while opening \`no-such-file.sav': No such file or directory.
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:573"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1101
#AT_START_1102
at_fn_group_banner 1102 'perl-module.at:580' \
"Perl missing values" " " 141
at_xfail=no
(
$as_echo "1102. $at_setup_line: testing $at_desc ..."
$at_traceon
$as_echo "perl-module.at:581" >"$at_check_line_file"
(test "$WITH_PERL_MODULE" = no) \
&& at_fn_check_skip 77 "$at_srcdir/perl-module.at:581"
cat >sample.sps <<'_ATEOF'
data list notable list /string (a8) longstring (a12) numeric (f10) date (date11) dollar (dollar8.2) datetime (datetime17)
begin data.
1111 One 1 1/1/1 1 1/1/1+01:01
2222 Two 2 2/2/2 2 2/2/2+02:02
3333 Three 3 3/3/3 3 3/3/3+03:03
. . . . . .
5555 Five 5 5/5/5 5 5/5/5+05:05
end data.
variable labels string 'A Short String Variable'
/longstring 'A Long String Variable'
/numeric 'A Numeric Variable'
/date 'A Date Variable'
/dollar 'A Dollar Variable'
/datetime 'A Datetime Variable'.
missing values numeric (9, 5, 999).
missing values string ("3333").
add value labels
/string '1111' 'ones' '2222' 'twos' '3333' 'threes'
/numeric 1 'Unity' 2 'Duality' 3 'Thripality'.
variable attribute
variables = numeric
attribute=colour[1]('blue') colour[2]('pink') colour[3]('violet')
attribute=size('large') nationality('foreign').
save outfile='sample.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/perl-module.at:582: pspp -O format=csv sample.sps"
at_fn_check_prepare_trace "perl-module.at:582"
( $at_check_trace; pspp -O format=csv sample.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:582"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >test.pl <<'_ATEOF'
use warnings;
use strict;
use PSPP;
my $sf = PSPP::Reader->open ("sample.sav");
my $dict = $sf->get_dict ();
my (@c) = $sf->get_next_case ();
my $stringvar = $dict->get_var (0);
my $numericvar = $dict->get_var (2);
my $val = $c[0];
die "Missing Value Negative String"
if PSPP::value_is_missing ($val, $stringvar);
$val = $c[2];
die "Missing Value Negative Num"
if PSPP::value_is_missing ($val, $numericvar);
@c = $sf->get_next_case ();
@c = $sf->get_next_case ();
$val = $c[0];
die "Missing Value Positive"
if !PSPP::value_is_missing ($val, $stringvar);
@c = $sf->get_next_case ();
$val = $c[2];
die "Missing Value Positive SYS"
if !PSPP::value_is_missing ($val, $numericvar);
@c = $sf->get_next_case ();
$val = $c[2];
die "Missing Value Positive Num"
if !PSPP::value_is_missing ($val, $numericvar);
_ATEOF
{ set +x
$as_echo "$at_srcdir/perl-module.at:623: LD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
DYLD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
\$PERL -I\$abs_top_builddir/perl-module/blib/arch \\
-I\$abs_top_builddir/perl-module/blib/lib test.pl"
at_fn_check_prepare_notrace 'an embedded newline' "perl-module.at:623"
( $at_check_trace; LD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
DYLD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
$PERL -I$abs_top_builddir/perl-module/blib/arch \
-I$abs_top_builddir/perl-module/blib/lib test.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:623"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1102
#AT_START_1103
at_fn_group_banner 1103 'perl-module.at:626' \
"Perl custom attributes" " " 141
at_xfail=no
(
$as_echo "1103. $at_setup_line: testing $at_desc ..."
$at_traceon
$as_echo "perl-module.at:627" >"$at_check_line_file"
(test "$WITH_PERL_MODULE" = no) \
&& at_fn_check_skip 77 "$at_srcdir/perl-module.at:627"
cat >sample.sps <<'_ATEOF'
data list notable list /string (a8) longstring (a12) numeric (f10) date (date11) dollar (dollar8.2) datetime (datetime17)
begin data.
1111 One 1 1/1/1 1 1/1/1+01:01
2222 Two 2 2/2/2 2 2/2/2+02:02
3333 Three 3 3/3/3 3 3/3/3+03:03
. . . . . .
5555 Five 5 5/5/5 5 5/5/5+05:05
end data.
variable labels string 'A Short String Variable'
/longstring 'A Long String Variable'
/numeric 'A Numeric Variable'
/date 'A Date Variable'
/dollar 'A Dollar Variable'
/datetime 'A Datetime Variable'.
missing values numeric (9, 5, 999).
missing values string ("3333").
add value labels
/string '1111' 'ones' '2222' 'twos' '3333' 'threes'
/numeric 1 'Unity' 2 'Duality' 3 'Thripality'.
variable attribute
variables = numeric
attribute=colour[1]('blue') colour[2]('pink') colour[3]('violet')
attribute=size('large') nationality('foreign').
save outfile='sample.sav'.
_ATEOF
{ set +x
$as_echo "$at_srcdir/perl-module.at:628: pspp -O format=csv sample.sps"
at_fn_check_prepare_trace "perl-module.at:628"
( $at_check_trace; pspp -O format=csv sample.sps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:628"
$at_failed && at_fn_log_failure
$at_traceon; }
cat >test.pl <<'_ATEOF'
use warnings;
use strict;
use PSPP;
my $sf = PSPP::Reader->open ("sample.sav");
my $dict = $sf->get_dict ();
my $var = $dict->get_var_by_name ("numeric");
my $attr = $var->get_attributes ();
foreach my $k (sort (keys (%$attr)))
{
my $ll = $attr->{$k};
print "$k =>";
print map "$_\n", join ', ', @$ll;
}
_ATEOF
{ set +x
$as_echo "$at_srcdir/perl-module.at:649: LD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
DYLD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
\$PERL -I\$abs_top_builddir/perl-module/blib/arch \\
-I\$abs_top_builddir/perl-module/blib/lib test.pl"
at_fn_check_prepare_notrace 'an embedded newline' "perl-module.at:649"
( $at_check_trace; LD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
DYLD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
$PERL -I$abs_top_builddir/perl-module/blib/arch \
-I$abs_top_builddir/perl-module/blib/lib test.pl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\$@Role =>0
colour =>blue, pink, violet
nationality =>foreign
size =>large
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:649"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1103
#AT_START_1104
at_fn_group_banner 1104 'perl-module.at:657' \
"Perl Pspp.t" " " 141
at_xfail=no
(
$as_echo "1104. $at_setup_line: testing $at_desc ..."
$at_traceon
$as_echo "perl-module.at:658" >"$at_check_line_file"
(test "$WITH_PERL_MODULE" = no) \
&& at_fn_check_skip 77 "$at_srcdir/perl-module.at:658"
# Skip this test if Perl's Text::Diff module is not installed.
{ set +x
$as_echo "$at_srcdir/perl-module.at:660: perl -MText::Diff -e '' || exit 77"
at_fn_check_prepare_trace "perl-module.at:660"
( $at_check_trace; perl -MText::Diff -e '' || exit 77
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:660"
$at_failed && at_fn_log_failure
$at_traceon; }
{ set +x
$as_echo "$at_srcdir/perl-module.at:661: LD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
DYLD_LIBRARY_PATH=\$abs_top_builddir/src/.libs \\
\$PERL -I\$abs_top_builddir/perl-module/blib/arch \\
-I\$abs_top_builddir/perl-module/blib/lib \$abs_top_builddir/perl-module/t/Pspp.t"
at_fn_check_prepare_notrace 'an embedded newline' "perl-module.at:661"
( $at_check_trace; LD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
DYLD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
$PERL -I$abs_top_builddir/perl-module/blib/arch \
-I$abs_top_builddir/perl-module/blib/lib $abs_top_builddir/perl-module/t/Pspp.t
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo >>"$at_stdout"; $as_echo "1..37
ok 1 - use PSPP;
ok 2 - Dictionary Creation
ok 3
ok 4 - Trap illegal variable name
ok 5
ok 6 - Accept legal variable name
ok 7
ok 8 - Trap duplicate variable name
ok 9
ok 10 - Accept valid format
ok 11
ok 12 - Create sysfile object
ok 13 - Write system file
ok 14 - Append Case
ok 15 - Appending Case with too many variables
ok 16 - existance
ok 17 - Append Case 2
ok 18 - existance2
ok 19 - Check output
ok 20 - Dictionary Creation 2
ok 21 - Value label for short string
ok 22 - Value label for long string
ok 23 - Check output 2
ok 24 - Dictionary survives sysfile
ok 25 - Basic reader operation
ok 26 - Streaming of files
Formatted string is \"11-SEP-2001 08:20\"
ok 27 - format_value function
ok 28 - Perl representation of time
ok 29 - Returns undef on opening failure
ok 30 - Error string on open failure
ok 31 - Missing Value Negative String
ok 32 - Missing Value Negative Num
ok 33 - Missing Value Positive
ok 34 - Missing Value Positive SYS
ok 35 - Missing Value Positive Num
ok 36 - Custom Attributes
ok 37 - Case count
" | \
$at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/perl-module.at:661"
$at_failed && at_fn_log_failure
$at_traceon; }
set +x
$at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1104
pspp-0.8.5/tests/libpspp/ 0000755 0001750 0001750 00000000000 12541312456 012325 5 0000000 0000000 pspp-0.8.5/tests/libpspp/string-set-test.c 0000644 0001750 0001750 00000042361 12470242646 015477 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
/* This is a test program for the string_set_* routines defined in
string-set.c. This test program aims to be as comprehensive as possible.
"gcov -a -b" should report almost complete coverage of lines, blocks and
branches in string-set.c, except that one branch caused by hash collision is
not exercised because our hash function has so few collisions. "valgrind
--leak-check=yes --show-reachable=yes" should give a clean report. */
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
/* Exit with a failure code.
(Place a breakpoint on this function while debugging.) */
static void
check_die (void)
{
exit (EXIT_FAILURE);
}
/* If OK is not true, prints a message about failure on the
current source file and the given LINE and terminates. */
static void
check_func (bool ok, int line)
{
if (!ok)
{
fprintf (stderr, "%s:%d: check failed\n", __FILE__, line);
check_die ();
}
}
/* Verifies that EXPR evaluates to true.
If not, prints a message citing the calling line number and
terminates. */
#define check(EXPR) check_func ((EXPR), __LINE__)
/* Prints a message about memory exhaustion and exits with a
failure code. */
static void
xalloc_die (void)
{
printf ("virtual memory exhausted\n");
exit (EXIT_FAILURE);
}
static void *xmalloc (size_t n) MALLOC_LIKE;
static void *xnmalloc (size_t n, size_t m) MALLOC_LIKE;
static void *xmemdup (const void *p, size_t n) MALLOC_LIKE;
/* Allocates and returns N bytes of memory. */
static void *
xmalloc (size_t n)
{
if (n != 0)
{
void *p = malloc (n);
if (p == NULL)
xalloc_die ();
return p;
}
else
return NULL;
}
static void *
xmemdup (const void *p, size_t n)
{
void *q = xmalloc (n);
memcpy (q, p, n);
return q;
}
/* Clone STRING. */
static char *
xstrdup (const char *string)
{
return xmemdup (string, strlen (string) + 1);
}
/* Allocates and returns N * M bytes of memory. */
static void *
xnmalloc (size_t n, size_t m)
{
if ((size_t) -1 / m <= n)
xalloc_die ();
return xmalloc (n * m);
}
/* Support routines. */
enum { MAX_VALUE = 1024 };
static char *string_table[MAX_VALUE];
static const char *
make_string (int value)
{
char **s;
assert (value >= 0 && value < MAX_VALUE);
s = &string_table[value];
if (*s == NULL)
{
*s = xmalloc (16);
sprintf (*s, "%d", value);
}
return *s;
}
static void
free_strings (void)
{
int i;
for (i = 0; i < MAX_VALUE; i++)
free (string_table[i]);
}
/* Swaps *A and *B. */
static void
swap (int *a, int *b)
{
int t = *a;
*a = *b;
*b = t;
}
/* Reverses the order of the CNT integers starting at VALUES. */
static void
reverse (int *values, size_t cnt)
{
size_t i = 0;
size_t j = cnt;
while (j > i)
swap (&values[i++], &values[--j]);
}
/* Arranges the CNT elements in VALUES into the lexicographically
next greater permutation. Returns true if successful.
If VALUES is already the lexicographically greatest
permutation of its elements (i.e. ordered from greatest to
smallest), arranges them into the lexicographically least
permutation (i.e. ordered from smallest to largest) and
returns false. */
static bool
next_permutation (int *values, size_t cnt)
{
if (cnt > 0)
{
size_t i = cnt - 1;
while (i != 0)
{
i--;
if (values[i] < values[i + 1])
{
size_t j;
for (j = cnt - 1; values[i] >= values[j]; j--)
continue;
swap (values + i, values + j);
reverse (values + (i + 1), cnt - (i + 1));
return true;
}
}
reverse (values, cnt);
}
return false;
}
/* Returns N!. */
static unsigned int
factorial (unsigned int n)
{
unsigned int value = 1;
while (n > 1)
value *= n--;
return value;
}
/* Randomly shuffles the CNT elements in ARRAY, each of which is
SIZE bytes in size. */
static void
random_shuffle (void *array_, size_t cnt, size_t size)
{
char *array = array_;
char *tmp = xmalloc (size);
size_t i;
for (i = 0; i < cnt; i++)
{
size_t j = rand () % (cnt - i) + i;
if (i != j)
{
memcpy (tmp, array + j * size, size);
memcpy (array + j * size, array + i * size, size);
memcpy (array + i * size, tmp, size);
}
}
free (tmp);
}
/* Checks that SET contains the CNT strings in DATA, that its structure is
correct, and that certain operations on SET produce the expected results. */
static void
check_string_set (struct string_set *set, const int data[], size_t cnt)
{
size_t i;
check (string_set_is_empty (set) == (cnt == 0));
check (string_set_count (set) == cnt);
for (i = 0; i < cnt; i++)
{
struct string_set_node *node;
const char *s = make_string (data[i]);
check (string_set_contains (set, s));
check (!string_set_insert (set, s));
check (!string_set_insert_nocopy (set, xstrdup (s)));
node = string_set_find_node (set, s);
check (node != NULL);
check (!strcmp (s, string_set_node_get_string (node)));
}
check (!string_set_contains (set, "xxx"));
check (string_set_find_node (set, "") == NULL);
if (cnt == 0)
check (string_set_first (set) == NULL);
else
{
const struct string_set_node *node;
int *data_copy;
int left;
data_copy = xmemdup (data, cnt * sizeof *data);
left = cnt;
for (node = string_set_first (set), i = 0; i < cnt;
node = string_set_next (set, node), i++)
{
const char *s = string_set_node_get_string (node);
size_t j;
for (j = 0; j < left; j++)
if (!strcmp (s, make_string (data_copy[j])))
{
data_copy[j] = data_copy[--left];
goto next;
}
check_die ();
next: ;
}
check (node == NULL);
free (data_copy);
}
}
/* Inserts the CNT strings from 0 to CNT - 1 (inclusive) into a set in the
order specified by INSERTIONS, then deletes them in the order specified by
DELETIONS, checking the set's contents for correctness after each
operation. */
static void
test_insert_delete (const int insertions[],
const int deletions[],
size_t cnt)
{
struct string_set set;
size_t i;
string_set_init (&set);
check_string_set (&set, NULL, 0);
for (i = 0; i < cnt; i++)
{
check (string_set_insert (&set, make_string (insertions[i])));
check_string_set (&set, insertions, i + 1);
}
for (i = 0; i < cnt; i++)
{
check (string_set_delete (&set, make_string (deletions[i])));
check_string_set (&set, deletions + i + 1, cnt - i - 1);
}
string_set_destroy (&set);
}
/* Inserts strings into a set in each possible order, then removes them in each
possible order, up to a specified maximum size. */
static void
test_insert_any_remove_any (void)
{
const int max_elems = 5;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *insertions, *deletions;
unsigned int ins_perm_cnt;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i;
for (ins_perm_cnt = 0;
ins_perm_cnt == 0 || next_permutation (insertions, cnt);
ins_perm_cnt++)
{
unsigned int del_perm_cnt;
int i;
for (i = 0; i < cnt; i++)
deletions[i] = i;
for (del_perm_cnt = 0;
del_perm_cnt == 0 || next_permutation (deletions, cnt);
del_perm_cnt++)
test_insert_delete (insertions, deletions, cnt);
check (del_perm_cnt == factorial (cnt));
}
check (ins_perm_cnt == factorial (cnt));
free (insertions);
free (deletions);
}
}
/* Inserts strings into a set in each possible order, then removes them in the
same order, up to a specified maximum size. */
static void
test_insert_any_remove_same (void)
{
const int max_elems = 7;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *values;
unsigned int permutation_cnt;
int i;
values = xnmalloc (cnt, sizeof *values);
for (i = 0; i < cnt; i++)
values[i] = i;
for (permutation_cnt = 0;
permutation_cnt == 0 || next_permutation (values, cnt);
permutation_cnt++)
test_insert_delete (values, values, cnt);
check (permutation_cnt == factorial (cnt));
free (values);
}
}
/* Inserts strings into a set in each possible order, then
removes them in reverse order, up to a specified maximum
size. */
static void
test_insert_any_remove_reverse (void)
{
const int max_elems = 7;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *insertions, *deletions;
unsigned int permutation_cnt;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i;
for (permutation_cnt = 0;
permutation_cnt == 0 || next_permutation (insertions, cnt);
permutation_cnt++)
{
memcpy (deletions, insertions, sizeof *insertions * cnt);
reverse (deletions, cnt);
test_insert_delete (insertions, deletions, cnt);
}
check (permutation_cnt == factorial (cnt));
free (insertions);
free (deletions);
}
}
/* Inserts and removes strings in a set, in random order. */
static void
test_random_sequence (void)
{
const int max_elems = 64;
const int max_trials = 8;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt += 2)
{
int *insertions, *deletions;
int trial;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i;
for (i = 0; i < cnt; i++)
deletions[i] = i;
for (trial = 0; trial < max_trials; trial++)
{
random_shuffle (insertions, cnt, sizeof *insertions);
random_shuffle (deletions, cnt, sizeof *deletions);
test_insert_delete (insertions, deletions, cnt);
}
free (insertions);
free (deletions);
}
}
/* Inserts strings into a set in ascending order, then delete in ascending
order. */
static void
test_insert_ordered (void)
{
const int max_elems = 64;
int *values;
struct string_set set;
int i;
string_set_init (&set);
values = xnmalloc (max_elems, sizeof *values);
for (i = 0; i < max_elems; i++)
{
values[i] = i;
string_set_insert_nocopy (&set, xstrdup (make_string (i)));
check_string_set (&set, values, i + 1);
}
for (i = 0; i < max_elems; i++)
{
string_set_delete (&set, make_string (i));
check_string_set (&set, values + i + 1, max_elems - i - 1);
}
string_set_destroy (&set);
free (values);
}
static void
test_boolean_ops (void (*function)(struct string_set *a, struct string_set *b,
unsigned int *a_pat, unsigned int *b_pat))
{
enum { MAX_STRINGS = 7 };
unsigned int a_pat, b_pat;
for (a_pat = 0; a_pat < (1u << MAX_STRINGS); a_pat++)
for (b_pat = 0; b_pat < (1u << MAX_STRINGS); b_pat++)
{
unsigned int new_a_pat = a_pat;
unsigned int new_b_pat = b_pat;
struct string_set a, b;
int a_strings[MAX_STRINGS], b_strings[MAX_STRINGS];
size_t i, n_a, n_b;
string_set_init (&a);
string_set_init (&b);
for (i = 0; i < MAX_STRINGS; i++)
{
if (a_pat & (1u << i))
string_set_insert (&a, make_string (i));
if (b_pat & (1u << i))
string_set_insert (&b, make_string (i));
}
function (&a, &b, &new_a_pat, &new_b_pat);
n_a = n_b = 0;
for (i = 0; i < MAX_STRINGS; i++)
{
if (new_a_pat & (1u << i))
a_strings[n_a++] = i;
if (new_b_pat & (1u << i))
b_strings[n_b++] = i;
}
check_string_set (&a, a_strings, n_a);
check_string_set (&b, b_strings, n_b);
string_set_destroy (&a);
string_set_destroy (&b);
}
}
static void
union_cb (struct string_set *a, struct string_set *b,
unsigned int *a_pat, unsigned int *b_pat)
{
string_set_union (a, b);
*a_pat |= *b_pat;
}
static void
test_union (void)
{
test_boolean_ops (union_cb);
}
static void
union_and_intersection_cb (struct string_set *a, struct string_set *b,
unsigned int *a_pat, unsigned int *b_pat)
{
unsigned int orig_a_pat = *a_pat;
unsigned int orig_b_pat = *b_pat;
string_set_union_and_intersection (a, b);
*a_pat = orig_a_pat | orig_b_pat;
*b_pat = orig_a_pat & orig_b_pat;
}
static void
test_union_and_intersection (void)
{
test_boolean_ops (union_and_intersection_cb);
}
static void
intersect_cb (struct string_set *a, struct string_set *b,
unsigned int *a_pat, unsigned int *b_pat)
{
string_set_intersect (a, b);
*a_pat &= *b_pat;
}
static void
test_intersect (void)
{
test_boolean_ops (intersect_cb);
}
static void
subtract_cb (struct string_set *a, struct string_set *b,
unsigned int *a_pat, unsigned int *b_pat)
{
string_set_subtract (a, b);
*a_pat &= ~*b_pat;
}
static void
test_subtract (void)
{
test_boolean_ops (subtract_cb);
}
static void
swap_cb (struct string_set *a, struct string_set *b,
unsigned int *a_pat, unsigned int *b_pat)
{
unsigned int tmp;
string_set_swap (a, b);
tmp = *a_pat;
*a_pat = *b_pat;
*b_pat = tmp;
}
static void
test_swap (void)
{
test_boolean_ops (swap_cb);
}
static void
clear_cb (struct string_set *a, struct string_set *b UNUSED,
unsigned int *a_pat, unsigned int *b_pat UNUSED)
{
string_set_clear (a);
*a_pat = 0;
}
static void
test_clear (void)
{
test_boolean_ops (clear_cb);
}
static void
clone_cb (struct string_set *a, struct string_set *b,
unsigned int *a_pat, unsigned int *b_pat)
{
string_set_destroy (a);
string_set_clone (a, b);
*a_pat = *b_pat;
}
static void
test_clone (void)
{
test_boolean_ops (clone_cb);
}
static void
test_destroy_null (void)
{
string_set_destroy (NULL);
}
/* Main program. */
struct test
{
const char *name;
const char *description;
void (*function) (void);
};
static const struct test tests[] =
{
{
"insert-any-remove-any",
"insert any order, delete any order",
test_insert_any_remove_any
},
{
"insert-any-remove-same",
"insert any order, delete same order",
test_insert_any_remove_same
},
{
"insert-any-remove-reverse",
"insert any order, delete reverse order",
test_insert_any_remove_reverse
},
{
"random-sequence",
"insert and delete in random sequence",
test_random_sequence
},
{
"insert-ordered",
"insert in ascending order",
test_insert_ordered
},
{
"union",
"union",
test_union
},
{
"union-and-intersection",
"union and intersection",
test_union_and_intersection
},
{
"intersect",
"intersect",
test_intersect
},
{
"subtract",
"subtract",
test_subtract
},
{
"swap",
"swap",
test_swap
},
{
"clear",
"clear",
test_clear
},
{
"clone",
"clone",
test_clone
},
{
"destroy-null",
"destroying null table",
test_destroy_null
},
};
enum { N_TESTS = sizeof tests / sizeof *tests };
int
main (int argc, char *argv[])
{
int i;
if (argc != 2)
{
fprintf (stderr, "exactly one argument required; use --help for help\n");
return EXIT_FAILURE;
}
else if (!strcmp (argv[1], "--help"))
{
printf ("%s: test string set library\n"
"usage: %s TEST-NAME\n"
"where TEST-NAME is one of the following:\n",
argv[0], argv[0]);
for (i = 0; i < N_TESTS; i++)
printf (" %s\n %s\n", tests[i].name, tests[i].description);
return 0;
}
else
{
for (i = 0; i < N_TESTS; i++)
if (!strcmp (argv[1], tests[i].name))
{
tests[i].function ();
free_strings ();
return 0;
}
fprintf (stderr, "unknown test %s; use --help for help\n", argv[1]);
return EXIT_FAILURE;
}
}
pspp-0.8.5/tests/libpspp/sparse-array-test.c 0000644 0001750 0001750 00000030755 12470242646 016015 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2007, 2009, 2010 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
/* This is a test program for the sparse array routines defined
in sparse-array.c. This test program aims to be as
comprehensive as possible. "gcov -b" should report 100%
coverage of lines and branches in sparse-array.c when compiled
with -DNDEBUG and BITS_PER_LEVEL is greater than the number of
bits in a long. "valgrind --leak-check=yes
--show-reachable=yes" should give a clean report. */
#ifdef HAVE_CONFIG_H
#include
#endif
#include
#include
#include
#include
#include
#include
/* Support preliminaries. */
#if __GNUC__ >= 2 && !defined UNUSED
#define UNUSED __attribute__ ((unused))
#else
#define UNUSED
#endif
/* Exit with a failure code.
(Place a breakpoint on this function while debugging.) */
static void
check_die (void)
{
exit (EXIT_FAILURE);
}
/* If OK is not true, prints a message about failure on the
current source file and the given LINE and terminates. */
static void
check_func (bool ok, int line)
{
if (!ok)
{
fprintf (stderr, "%s:%d: check failed\n", __FILE__, line);
check_die ();
}
}
/* Verifies that EXPR evaluates to true.
If not, prints a message citing the calling line number and
terminates. */
#define check(EXPR) check_func ((EXPR), __LINE__)
/* Prints a message about memory exhaustion and exits with a
failure code. */
static void
xalloc_die (void)
{
printf ("virtual memory exhausted\n");
exit (EXIT_FAILURE);
}
/* Allocates and returns N bytes of memory. */
static void *
xmalloc (size_t n)
{
if (n != 0)
{
void *p = malloc (n);
if (p == NULL)
xalloc_die ();
return p;
}
else
return NULL;
}
/* Returns a malloc()'d duplicate of the N bytes starting at
P. */
static void *
xmemdup (const void *p, size_t n)
{
void *q = xmalloc (n);
memcpy (q, p, n);
return q;
}
/* Allocates and returns N * M bytes of memory. */
static void *
xnmalloc (size_t n, size_t m)
{
if ((size_t) -1 / m <= n)
xalloc_die ();
return xmalloc (n * m);
}
/* Compares A and B and returns a strcmp-type return value. */
static int
compare_unsigned_longs_noaux (const void *a_, const void *b_)
{
const unsigned long *a = a_;
const unsigned long *b = b_;
return *a < *b ? -1 : *a > *b;
}
/* Checks that SPAR contains the CNT ints in DATA, that its
structure is correct, and that certain operations on SPAR
produce the expected results. */
static void
check_sparse_array (struct sparse_array *spar,
const unsigned long data[], size_t cnt)
{
unsigned long idx;
unsigned long *order;
unsigned long *p;
size_t i;
check (sparse_array_count (spar) == cnt);
for (i = 0; i < cnt; i++)
{
p = sparse_array_get (spar, data[i]);
check (p != NULL);
check (*p == data[i]);
}
order = xmemdup (data, cnt * sizeof *data);
qsort (order, cnt, sizeof *order, compare_unsigned_longs_noaux);
for (i = 0; i < cnt; i++)
{
p = sparse_array_get (spar, order[i]);
check (p != NULL);
check (*p == order[i]);
}
if (cnt > 0 && order[0] - 1 != order[cnt - 1])
{
check (sparse_array_get (spar, order[0] - 1) == NULL);
check (!sparse_array_remove (spar, order[0] - 1));
}
if (cnt > 0 && order[0] != order[cnt - 1] + 1)
{
check (sparse_array_get (spar, order[cnt - 1] + 1) == NULL);
check (!sparse_array_remove (spar, order[cnt - 1] + 1));
}
for (i = 0, p = sparse_array_first (spar, &idx); i < cnt;
i++, p = sparse_array_next (spar, idx, &idx))
{
check (p != NULL);
check (idx == order[i]);
check (*p == order[i]);
}
check (p == NULL);
for (i = 0, p = sparse_array_last (spar, &idx); i < cnt;
i++, p = sparse_array_prev (spar, idx, &idx))
{
check (p != NULL);
check (idx == order[cnt - i - 1]);
check (*p == order[cnt - i - 1]);
}
check (p == NULL);
free (order);
}
/* Inserts the CNT values from 0 to CNT - 1 (inclusive) into a
sparse array in the order specified by INSERTIONS, then
deletes them in the order specified by DELETIONS, checking the
array's contents for correctness after each operation. */
static void
test_insert_delete (const unsigned long insertions[],
const unsigned long deletions[],
size_t cnt)
{
struct sparse_array *spar;
size_t i;
spar = sparse_array_create (sizeof *insertions);
for (i = 0; i < cnt; i++)
{
unsigned long *p = sparse_array_insert (spar, insertions[i]);
*p = insertions[i];
check_sparse_array (spar, insertions, i + 1);
}
for (i = 0; i < cnt; i++)
{
bool deleted = sparse_array_remove (spar, deletions[i]);
check (deleted);
check_sparse_array (spar, deletions + i + 1, cnt - (i + 1));
}
check_sparse_array (spar, NULL, 0);
sparse_array_destroy (spar);
}
/* Inserts the CNT values from 0 to CNT - 1 (inclusive) into a
sparse array in the order specified by INSERTIONS, then
destroys the sparse array, to check that sparse_cases_destroy
properly frees all the nodes. */
static void
test_destroy (const unsigned long insertions[], size_t cnt)
{
struct sparse_array *spar;
size_t i;
spar = sparse_array_create (sizeof *insertions);
for (i = 0; i < cnt; i++)
{
unsigned long *p = sparse_array_insert (spar, insertions[i]);
*p = insertions[i];
check_sparse_array (spar, insertions, i + 1);
}
sparse_array_destroy (spar);
}
/* Randomly shuffles the CNT elements in ARRAY, each of which is
SIZE bytes in size. */
static void
random_shuffle (void *array_, size_t cnt, size_t size)
{
char *array = array_;
char *tmp = xmalloc (size);
size_t i;
for (i = 0; i < cnt; i++)
{
size_t j = rand () % (cnt - i) + i;
if (i != j)
{
memcpy (tmp, array + j * size, size);
memcpy (array + j * size, array + i * size, size);
memcpy (array + i * size, tmp, size);
}
}
free (tmp);
}
/* Tests inserting and deleting elements whose values are
determined by starting from various offsets and skipping
across various strides, and doing so in various orders. */
static void
test_insert_delete_strides (void)
{
static const unsigned long strides[] =
{
1, 2, 4, 16, 64, 4096, 262144, 16777216,
3, 5, 17, 67, 4099, 262147, 16777259,
};
const size_t stride_cnt = sizeof strides / sizeof *strides;
static const unsigned long offsets[] =
{
0,
1024ul * 1024 + 1,
1024ul * 1024 * 512 + 23,
ULONG_MAX - 59,
};
const size_t offset_cnt = sizeof offsets / sizeof *offsets;
int cnt = 100;
unsigned long *insertions, *deletions;
const unsigned long *stride, *offset;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (stride = strides; stride < strides + stride_cnt; stride++)
{
printf ("%lu\n", *stride);
for (offset = offsets; offset < offsets + offset_cnt; offset++)
{
int k;
for (k = 0; k < cnt; k++)
insertions[k] = *stride * k + *offset;
test_insert_delete (insertions, insertions, cnt);
test_destroy (insertions, cnt);
for (k = 0; k < cnt; k++)
deletions[k] = insertions[cnt - k - 1];
test_insert_delete (insertions, deletions, cnt);
random_shuffle (insertions, cnt, sizeof *insertions);
test_insert_delete (insertions, insertions, cnt);
test_insert_delete (insertions, deletions, cnt);
}
}
free (insertions);
free (deletions);
}
/* Returns the index in ARRAY of the (CNT+1)th element that has
the TARGET value. */
static int
scan_bools (bool target, bool array[], size_t cnt)
{
size_t i;
for (i = 0; ; i++)
if (array[i] == target && cnt-- == 0)
return i;
}
/* Performs a random sequence of insertions and deletions in a
sparse array. */
static void
test_random_insert_delete (void)
{
unsigned long int values[] =
{
0, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096,
8192, 16384, 32768, 65536, 131072, 262144, 4194304, 8388608,
16777216, 33554432, 67108864, 134217728, 268435456, 536870912,
1073741824, 2147483648,
3, 7, 15, 31, 63, 127, 257, 511, 1023, 2047, 4095,
8191, 16383, 32767, 65535, 131071, 262143, 4194303, 8388607,
16777215, 33554431, 67108863, 134217727, 268435455, 536870911,
1073741823, 2147483647, 4294967295,
};
const int max_values = sizeof values / sizeof *values;
const int num_actions = 250000;
struct sparse_array *spar;
bool *has_values;
int cnt;
int insert_chance;
int i;
has_values = xnmalloc (max_values, sizeof *has_values);
memset (has_values, 0, max_values * sizeof *has_values);
cnt = 0;
insert_chance = 5;
spar = sparse_array_create (sizeof *values);
for (i = 0; i < num_actions; i++)
{
enum { INSERT, DELETE } action;
unsigned long *p;
int j;
if (cnt == 0)
{
action = INSERT;
if (insert_chance < 9)
insert_chance++;
}
else if (cnt == max_values)
{
action = DELETE;
if (insert_chance > 0)
insert_chance--;
}
else
action = rand () % 10 < insert_chance ? INSERT : DELETE;
if (action == INSERT)
{
int ins_index;
ins_index = scan_bools (false, has_values,
rand () % (max_values - cnt));
assert (has_values[ins_index] == false);
has_values[ins_index] = true;
p = sparse_array_insert (spar, values[ins_index]);
check (p != NULL);
*p = values[ins_index];
cnt++;
}
else if (action == DELETE)
{
int del_index;
del_index = scan_bools (true, has_values, rand () % cnt);
assert (has_values[del_index] == true);
has_values[del_index] = false;
check (sparse_array_remove (spar, values[del_index]));
cnt--;
}
else
abort ();
check (sparse_array_count (spar) == cnt);
for (j = 0; j < max_values; j++)
{
p = sparse_array_get (spar, values[j]);
if (has_values[j])
{
check (p != NULL);
check (*p == values[j]);
}
else
{
check (p == NULL);
if (rand () % 10 == 0)
sparse_array_remove (spar, values[j]);
}
}
}
sparse_array_destroy (spar);
free (has_values);
}
/* Main program. */
struct test
{
const char *name;
const char *description;
void (*function) (void);
};
static const struct test tests[] =
{
{
"random-insert-delete",
"random insertions and deletions",
test_random_insert_delete
},
{
"insert-delete-strides",
"insert in ascending order with strides and offset",
test_insert_delete_strides
},
};
enum { N_TESTS = sizeof tests / sizeof *tests };
int
main (int argc, char *argv[])
{
int i;
if (argc != 2)
{
fprintf (stderr, "exactly one argument required; use --help for help\n");
return EXIT_FAILURE;
}
else if (!strcmp (argv[1], "--help"))
{
printf ("%s: test sparse array library\n"
"usage: %s TEST-NAME\n"
"where TEST-NAME is one of the following:\n",
argv[0], argv[0]);
for (i = 0; i < N_TESTS; i++)
printf (" %s\n %s\n", tests[i].name, tests[i].description);
return 0;
}
else
{
for (i = 0; i < N_TESTS; i++)
if (!strcmp (argv[1], tests[i].name))
{
tests[i].function ();
return 0;
}
fprintf (stderr, "unknown test %s; use --help for help\n", argv[1]);
return EXIT_FAILURE;
}
}
pspp-0.8.5/tests/libpspp/hmap-test.c 0000644 0001750 0001750 00000066170 12476227410 014327 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
/* This is a test program for the hmap_* routines defined in
hmap.c. This test program aims to be as comprehensive as
possible. "gcov -a -b" should report 100% coverage of lines,
blocks and branches in hmap.c (when compiled with -DNDEBUG).
"valgrind --leak-check=yes --show-reachable=yes" should give a
clean report. */
/* GCC 4.3 miscompiles some of the tests below, so we do not run
these tests on GCC 4.3. This is a bug in GCC 4.3 triggered by
the test program, not a bug in the library under test. GCC
4.2 or earlier and GCC 4.4 or later do not have this bug.
Here is a minimal test program that demonstrates the same or a
similar bug in GCC 4.3:
#include
#include
struct node
{
struct node *next;
unsigned int data1;
int data2;
};
struct list
{
struct node *head;
int dummy;
};
static void *
xmalloc (int n)
{
return malloc (n);
}
static void
check_list (struct list *list)
{
int i __attribute__((unused));
struct node *e;
for (e = list->head; e != NULL; e = e->next)
if (e->data1 != e->data2)
abort ();
}
int
main (void)
{
#define MAX_ELEMS 2
struct node *elements = xmalloc (MAX_ELEMS * sizeof *elements);
int *values = xmalloc (MAX_ELEMS * sizeof *values);
struct list list;
int i;
list.head = NULL;
for (i = 0; i < MAX_ELEMS; i++)
{
values[i] = elements[i].data2 = i;
elements[i].data1 = elements[i].data2;
elements[i].next = list.head;
list.head = &elements[i];
}
check_list (&list);
return 0;
}
*/
#ifdef HAVE_CONFIG_H
#include
#endif
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
/* Exit with a failure code.
(Place a breakpoint on this function while debugging.) */
static void
check_die (void)
{
exit (EXIT_FAILURE);
}
/* If OK is not true, prints a message about failure on the
current source file and the given LINE and terminates. */
static void
check_func (bool ok, int line)
{
if (!ok)
{
fprintf (stderr, "%s:%d: check failed\n", __FILE__, line);
check_die ();
}
}
/* Verifies that EXPR evaluates to true.
If not, prints a message citing the calling line number and
terminates. */
#define check(EXPR) check_func ((EXPR), __LINE__)
/* Prints a message about memory exhaustion and exits with a
failure code. */
static void
xalloc_die (void)
{
printf ("virtual memory exhausted\n");
exit (EXIT_FAILURE);
}
static void *xmalloc (size_t n) MALLOC_LIKE;
static void *xnmalloc (size_t n, size_t m) MALLOC_LIKE;
static void *xmemdup (const void *p, size_t n) MALLOC_LIKE;
/* Allocates and returns N bytes of memory. */
static void *
xmalloc (size_t n)
{
if (n != 0)
{
void *p = malloc (n);
if (p == NULL)
xalloc_die ();
return p;
}
else
return NULL;
}
static void *
xmemdup (const void *p, size_t n)
{
void *q = xmalloc (n);
memcpy (q, p, n);
return q;
}
/* Allocates and returns N * M bytes of memory. */
static void *
xnmalloc (size_t n, size_t m)
{
if ((size_t) -1 / m <= n)
xalloc_die ();
return xmalloc (n * m);
}
/* Node type and support routines. */
/* Test data element. */
struct element
{
struct hmap_node node; /* Embedded hash table element. */
int data; /* Primary value. */
};
/* Returns the `struct element' that NODE is embedded within. */
static struct element *
hmap_node_to_element (const struct hmap_node *node)
{
return HMAP_DATA (node, struct element, node);
}
/* Compares A and B and returns a strcmp-type return value. */
static int
compare_ints (const void *a_, const void *b_)
{
const int *a = a_;
const int *b = b_;
return *a < *b ? -1 : *a > *b;
}
/* Swaps *A and *B. */
static void
swap (int *a, int *b)
{
int t = *a;
*a = *b;
*b = t;
}
/* Reverses the order of the CNT integers starting at VALUES. */
static void
reverse (int *values, size_t cnt)
{
size_t i = 0;
size_t j = cnt;
while (j > i)
swap (&values[i++], &values[--j]);
}
/* Arranges the CNT elements in VALUES into the lexicographically
next greater permutation. Returns true if successful.
If VALUES is already the lexicographically greatest
permutation of its elements (i.e. ordered from greatest to
smallest), arranges them into the lexicographically least
permutation (i.e. ordered from smallest to largest) and
returns false. */
static bool
next_permutation (int *values, size_t cnt)
{
if (cnt > 0)
{
size_t i = cnt - 1;
while (i != 0)
{
i--;
if (values[i] < values[i + 1])
{
size_t j;
for (j = cnt - 1; values[i] >= values[j]; j--)
continue;
swap (values + i, values + j);
reverse (values + (i + 1), cnt - (i + 1));
return true;
}
}
reverse (values, cnt);
}
return false;
}
/* Returns N!. */
static unsigned int
factorial (unsigned int n)
{
unsigned int value = 1;
while (n > 1)
value *= n--;
return value;
}
/* Randomly shuffles the CNT elements in ARRAY, each of which is
SIZE bytes in size. */
static void
random_shuffle (void *array_, size_t cnt, size_t size)
{
char *array = array_;
char *tmp = xmalloc (size);
size_t i;
for (i = 0; i < cnt; i++)
{
size_t j = rand () % (cnt - i) + i;
if (i != j)
{
memcpy (tmp, array + j * size, size);
memcpy (array + j * size, array + i * size, size);
memcpy (array + i * size, tmp, size);
}
}
free (tmp);
}
typedef size_t hash_function (int data);
static size_t
identity_hash (int data)
{
return data;
}
static size_t
constant_hash (int data UNUSED)
{
return 0x12345678u;
}
static inline uint32_t
md4_round (uint32_t a, uint32_t b, uint32_t c, uint32_t d,
uint32_t data, uint32_t n)
{
uint32_t x = a + (d ^ (b & (c ^ d))) + data;
return (x << n) | (x >> (32 - n));
}
static size_t
random_hash (int data)
{
uint32_t a = data;
uint32_t b = data;
uint32_t c = data;
uint32_t d = data;
a = md4_round (a, b, c, d, 0, 3);
d = md4_round (d, a, b, c, 1, 7);
c = md4_round (c, d, a, b, 2, 11);
b = md4_round (b, c, d, a, 3, 19);
return a ^ b ^ c ^ d;
}
static struct hmap_node *
find_element (struct hmap *hmap, int data, hash_function *hash)
{
struct element *e;
HMAP_FOR_EACH_WITH_HASH (e, struct element, node, hash (data), hmap)
if (e->data == data)
break;
return &e->node;
}
/* Checks that HMAP contains the CNT ints in DATA, that its
structure is correct, and that certain operations on HMAP
produce the expected results. */
static void
check_hmap (struct hmap *hmap, const int data[], size_t cnt,
hash_function *hash)
{
size_t i, j;
int *order;
check (hmap_is_empty (hmap) == (cnt == 0));
check (hmap_count (hmap) == cnt);
check (cnt <= hmap_capacity (hmap));
order = xmemdup (data, cnt * sizeof *data);
qsort (order, cnt, sizeof *order, compare_ints);
for (i = 0; i < cnt; i = j)
{
struct element *e;
int count;
for (j = i + 1; j < cnt; j++)
if (order[i] != order[j])
break;
count = 0;
HMAP_FOR_EACH_WITH_HASH (e, struct element, node, hash (order[i]), hmap)
if (e->data == order[i])
count++;
check (count == j - i);
}
check (find_element (hmap, -1, hash) == NULL);
if (cnt == 0)
check (hmap_first (hmap) == NULL);
else
{
struct hmap_node *p;
int left;
left = cnt;
for (p = hmap_first (hmap), i = 0; i < cnt; p = hmap_next (hmap, p), i++)
{
struct element *e = hmap_node_to_element (p);
check (hmap_node_hash (&e->node) == hash (e->data));
for (j = 0; j < left; j++)
if (order[j] == e->data)
{
order[j] = order[--left];
goto next;
}
check_die ();
next: ;
}
check (p == NULL);
}
free (order);
}
/* Inserts the CNT values from 0 to CNT - 1 (inclusive) into an
HMAP in the order specified by INSERTIONS, then deletes them in
the order specified by DELETIONS, checking the HMAP's contents
for correctness after each operation. Uses HASH as the hash
function. */
static void
test_insert_delete (const int insertions[],
const int deletions[],
size_t cnt,
hash_function *hash)
{
struct element *elements;
struct hmap hmap;
size_t i;
elements = xnmalloc (cnt, sizeof *elements);
for (i = 0; i < cnt; i++)
elements[i].data = i;
hmap_init (&hmap);
hmap_reserve (&hmap, 1);
check_hmap (&hmap, NULL, 0, hash);
for (i = 0; i < cnt; i++)
{
size_t capacity;
hmap_insert (&hmap, &elements[insertions[i]].node, hash (insertions[i]));
check_hmap (&hmap, insertions, i + 1, hash);
/* A series of insertions should not produce a shrinkable hmap. */
capacity = hmap_capacity (&hmap);
hmap_shrink (&hmap);
check (capacity == hmap_capacity (&hmap));
}
for (i = 0; i < cnt; i++)
{
hmap_delete (&hmap, &elements[deletions[i]].node);
check_hmap (&hmap, deletions + i + 1, cnt - i - 1, hash);
}
hmap_destroy (&hmap);
free (elements);
}
/* Inserts values into an HMAP in each possible order, then
removes them in each possible order, up to a specified maximum
size, using hash function HASH. */
static void
test_insert_any_remove_any (hash_function *hash)
{
const int max_elems = 5;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *insertions, *deletions;
unsigned int ins_perm_cnt;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i;
for (ins_perm_cnt = 0;
ins_perm_cnt == 0 || next_permutation (insertions, cnt);
ins_perm_cnt++)
{
unsigned int del_perm_cnt;
int i;
for (i = 0; i < cnt; i++)
deletions[i] = i;
for (del_perm_cnt = 0;
del_perm_cnt == 0 || next_permutation (deletions, cnt);
del_perm_cnt++)
test_insert_delete (insertions, deletions, cnt, hash);
check (del_perm_cnt == factorial (cnt));
}
check (ins_perm_cnt == factorial (cnt));
free (insertions);
free (deletions);
}
}
static void
test_insert_any_remove_any_random_hash (void)
{
test_insert_any_remove_any (random_hash);
}
static void
test_insert_any_remove_any_identity_hash (void)
{
test_insert_any_remove_any (identity_hash);
}
static void
test_insert_any_remove_any_constant_hash (void)
{
test_insert_any_remove_any (constant_hash);
}
/* Inserts values into an HMAP in each possible order, then
removes them in the same order, up to a specified maximum
size, using hash function HASH. */
static void
test_insert_any_remove_same (hash_function *hash)
{
const int max_elems = 7;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *values;
unsigned int permutation_cnt;
int i;
values = xnmalloc (cnt, sizeof *values);
for (i = 0; i < cnt; i++)
values[i] = i;
for (permutation_cnt = 0;
permutation_cnt == 0 || next_permutation (values, cnt);
permutation_cnt++)
test_insert_delete (values, values, cnt, hash);
check (permutation_cnt == factorial (cnt));
free (values);
}
}
static void
test_insert_any_remove_same_random_hash (void)
{
test_insert_any_remove_same (random_hash);
}
static void
test_insert_any_remove_same_identity_hash (void)
{
test_insert_any_remove_same (identity_hash);
}
static void
test_insert_any_remove_same_constant_hash (void)
{
test_insert_any_remove_same (constant_hash);
}
/* Inserts values into an HMAP in each possible order, then
removes them in reverse order, up to a specified maximum
size, using hash function HASH. */
static void
test_insert_any_remove_reverse (hash_function *hash)
{
const int max_elems = 7;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *insertions, *deletions;
unsigned int permutation_cnt;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i;
for (permutation_cnt = 0;
permutation_cnt == 0 || next_permutation (insertions, cnt);
permutation_cnt++)
{
memcpy (deletions, insertions, sizeof *insertions * cnt);
reverse (deletions, cnt);
test_insert_delete (insertions, deletions, cnt, hash);
}
check (permutation_cnt == factorial (cnt));
free (insertions);
free (deletions);
}
}
static void
test_insert_any_remove_reverse_random_hash (void)
{
test_insert_any_remove_reverse (random_hash);
}
static void
test_insert_any_remove_reverse_identity_hash (void)
{
test_insert_any_remove_reverse (identity_hash);
}
static void
test_insert_any_remove_reverse_constant_hash (void)
{
test_insert_any_remove_reverse (constant_hash);
}
/* Inserts and removes up to MAX_ELEMS values in an hmap, in
random order, using hash function HASH. */
static void
test_random_sequence (int max_elems, hash_function *hash)
{
const int max_trials = 8;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt += 2)
{
int *insertions, *deletions;
int trial;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i;
for (i = 0; i < cnt; i++)
deletions[i] = i;
for (trial = 0; trial < max_trials; trial++)
{
random_shuffle (insertions, cnt, sizeof *insertions);
random_shuffle (deletions, cnt, sizeof *deletions);
test_insert_delete (insertions, deletions, cnt, hash);
}
free (insertions);
free (deletions);
}
}
static void
test_random_sequence_random_hash (void)
{
test_random_sequence (64, random_hash);
}
static void
test_random_sequence_identity_hash (void)
{
test_random_sequence (64, identity_hash);
}
static void
test_random_sequence_constant_hash (void)
{
test_random_sequence (32, constant_hash);
}
/* Inserts MAX_ELEMS elements into an HMAP in ascending order,
then delete in ascending order and shrink the hmap at each
step, using hash function HASH. */
static void
test_insert_ordered (int max_elems, hash_function *hash)
{
struct element *elements;
int *values;
struct hmap hmap;
int i;
#if __GNUC__ == 4 && __GNUC_MINOR__ == 3
/* This tells the Autotest framework that the test was skipped. */
exit (77);
#endif
hmap_init (&hmap);
elements = xnmalloc (max_elems, sizeof *elements);
values = xnmalloc (max_elems, sizeof *values);
for (i = 0; i < max_elems; i++)
{
values[i] = elements[i].data = i;
hmap_insert (&hmap, &elements[i].node, hash (elements[i].data));
check_hmap (&hmap, values, i + 1, hash);
if (hash == identity_hash)
{
/* Check that every every hash bucket has (almost) the
same number of nodes in it. */
int min = INT_MAX;
int max = INT_MIN;
int j;
for (j = 0; j <= hmap.mask; j++)
{
int count = 0;
struct hmap_node *node;
for (node = hmap.buckets[j]; node != NULL; node = node->next)
count++;
if (count < min)
min = count;
if (count > max)
max = count;
}
check (max - min <= 1);
}
}
for (i = 0; i < max_elems; i++)
{
hmap_delete (&hmap, &elements[i].node);
hmap_shrink (&hmap);
check_hmap (&hmap, values + i + 1, max_elems - i - 1, hash);
}
hmap_destroy (&hmap);
free (elements);
free (values);
}
static void
test_insert_ordered_random_hash (void)
{
test_insert_ordered (1024, random_hash);
}
static void
test_insert_ordered_identity_hash (void)
{
test_insert_ordered (1024, identity_hash);
}
static void
test_insert_ordered_constant_hash (void)
{
test_insert_ordered (128, constant_hash);
}
/* Inserts up to MAX_ELEMS elements into an HMAP, then moves the
nodes around in memory, using hash function HASH. */
static void
test_moved (int max_elems, hash_function *hash)
{
struct element *e[2];
int cur;
int *values;
struct hmap hmap;
int i, j;
#if __GNUC__ == 4 && __GNUC_MINOR__ == 3
/* This tells the Autotest framework that the test was skipped. */
exit (77);
#endif
hmap_init (&hmap);
e[0] = xnmalloc (max_elems, sizeof *e[0]);
e[1] = xnmalloc (max_elems, sizeof *e[1]);
values = xnmalloc (max_elems, sizeof *values);
cur = 0;
for (i = 0; i < max_elems; i++)
{
values[i] = e[cur][i].data = i;
hmap_insert (&hmap, &e[cur][i].node, hash (e[cur][i].data));
check_hmap (&hmap, values, i + 1, hash);
for (j = 0; j <= i; j++)
{
e[!cur][j] = e[cur][j];
hmap_moved (&hmap, &e[!cur][j].node, &e[cur][j].node);
check_hmap (&hmap, values, i + 1, hash);
}
cur = !cur;
}
hmap_destroy (&hmap);
free (e[0]);
free (e[1]);
free (values);
}
static void
test_moved_random_hash (void)
{
test_moved (128, random_hash);
}
static void
test_moved_identity_hash (void)
{
test_moved (128, identity_hash);
}
static void
test_moved_constant_hash (void)
{
test_moved (32, constant_hash);
}
/* Inserts values into an HMAP, then changes their values, using
hash function HASH. */
static void
test_changed (hash_function *hash)
{
const int max_elems = 6;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *values, *changed_values;
struct element *elements;
unsigned int permutation_cnt;
int i;
values = xnmalloc (cnt, sizeof *values);
changed_values = xnmalloc (cnt, sizeof *changed_values);
elements = xnmalloc (cnt, sizeof *elements);
for (i = 0; i < cnt; i++)
values[i] = i;
for (permutation_cnt = 0;
permutation_cnt == 0 || next_permutation (values, cnt);
permutation_cnt++)
{
for (i = 0; i < cnt; i++)
{
int j, k;
for (j = 0; j <= cnt; j++)
{
struct hmap hmap;
hmap_init (&hmap);
/* Add to HMAP in order. */
for (k = 0; k < cnt; k++)
{
int n = values[k];
elements[n].data = n;
hmap_insert (&hmap, &elements[n].node,
hash (elements[n].data));
}
check_hmap (&hmap, values, cnt, hash);
/* Change value i to j. */
elements[i].data = j;
hmap_changed (&hmap, &elements[i].node,
hash (elements[i].data));
for (k = 0; k < cnt; k++)
changed_values[k] = k;
changed_values[i] = j;
check_hmap (&hmap, changed_values, cnt, hash);
hmap_destroy (&hmap);
}
}
}
check (permutation_cnt == factorial (cnt));
free (values);
free (changed_values);
free (elements);
}
}
static void
test_changed_random_hash (void)
{
test_changed (random_hash);
}
static void
test_changed_identity_hash (void)
{
test_changed (identity_hash);
}
static void
test_changed_constant_hash (void)
{
test_changed (constant_hash);
}
static void
test_swap (int max_elems, hash_function *hash)
{
struct element *elements;
int *values;
struct hmap a, b;
struct hmap *working, *empty;
int i;
#if __GNUC__ == 4 && __GNUC_MINOR__ == 3
/* This tells the Autotest framework that the test was skipped. */
exit (77);
#endif
hmap_init (&a);
hmap_init (&b);
working = &a;
empty = &b;
elements = xnmalloc (max_elems, sizeof *elements);
values = xnmalloc (max_elems, sizeof *values);
for (i = 0; i < max_elems; i++)
{
struct hmap *tmp;
values[i] = elements[i].data = i;
hmap_insert (working, &elements[i].node, hash (elements[i].data));
check_hmap (working, values, i + 1, hash);
check_hmap (empty, NULL, 0, hash);
hmap_swap (&a, &b);
tmp = working;
working = empty;
empty = tmp;
}
hmap_destroy (&a);
hmap_destroy (&b);
free (elements);
free (values);
}
static void
test_swap_random_hash (void)
{
test_swap (128, random_hash);
}
/* Inserts elements into an hmap in ascending order, then clears the hash table
using hmap_clear(). */
static void
test_clear (void)
{
const int max_elems = 128;
struct element *elements;
int *values;
struct hmap hmap;
int cnt;
#if __GNUC__ == 4 && __GNUC_MINOR__ == 3
/* This tells the Autotest framework that the test was skipped. */
exit (77);
#endif
elements = xnmalloc (max_elems, sizeof *elements);
values = xnmalloc (max_elems, sizeof *values);
for (cnt = 0; cnt <= max_elems; cnt++)
{
int i;
hmap_init (&hmap);
for (i = 0; i < cnt; i++)
{
values[i] = elements[i].data = i;
hmap_insert (&hmap, &elements[i].node,
random_hash (elements[i].data));
check_hmap (&hmap, values, i + 1, random_hash);
}
hmap_clear (&hmap);
check_hmap (&hmap, NULL, 0, random_hash);
hmap_destroy (&hmap);
}
free (elements);
free (values);
}
static void
test_destroy_null (void)
{
hmap_destroy (NULL);
}
/* Test shrinking an empty hash table. */
static void
test_shrink_empty (void)
{
struct hmap hmap;
hmap_init (&hmap);
hmap_reserve (&hmap, 123);
hmap_shrink (&hmap);
hmap_destroy (&hmap);
}
/* Main program. */
struct test
{
const char *name;
const char *description;
void (*function) (void);
};
static const struct test tests[] =
{
{
"insert-any-remove-any-random-hash",
"insert any order, delete any order (random hash)",
test_insert_any_remove_any_random_hash
},
{
"insert-any-remove-any-identity-hash",
"insert any order, delete any order (identity hash)",
test_insert_any_remove_any_identity_hash
},
{
"insert-any-remove-any-constant-hash",
"insert any order, delete any order (constant hash)",
test_insert_any_remove_any_constant_hash
},
{
"insert-any-remove-same-random-hash",
"insert any order, delete same order (random hash)",
test_insert_any_remove_same_random_hash
},
{
"insert-any-remove-same-identity-hash",
"insert any order, delete same order (identity hash)",
test_insert_any_remove_same_identity_hash
},
{
"insert-any-remove-same-constant-hash",
"insert any order, delete same order (constant hash)",
test_insert_any_remove_same_constant_hash
},
{
"insert-any-remove-reverse-random-hash",
"insert any order, delete reverse order (random hash)",
test_insert_any_remove_reverse_random_hash
},
{
"insert-any-remove-reverse-identity-hash",
"insert any order, delete reverse order (identity hash)",
test_insert_any_remove_reverse_identity_hash
},
{
"insert-any-remove-reverse-constant-hash",
"insert any order, delete reverse order (constant hash)",
test_insert_any_remove_reverse_constant_hash
},
{
"random-sequence-random-hash",
"insert and delete in random sequence (random hash)",
test_random_sequence_random_hash
},
{
"random-sequence-identity-hash",
"insert and delete in random sequence (identity hash)",
test_random_sequence_identity_hash
},
{
"random-sequence-constant-hash",
"insert and delete in random sequence (constant hash)",
test_random_sequence_constant_hash
},
{
"insert-ordered-random-hash",
"insert in ascending order (random hash)",
test_insert_ordered_random_hash
},
{
"insert-ordered-identity-hash",
"insert in ascending order (identity hash)",
test_insert_ordered_identity_hash
},
{
"insert-ordered-constant-hash",
"insert in ascending order (constant hash)",
test_insert_ordered_constant_hash
},
{
"moved-random-hash",
"move elements around in memory (random hash)",
test_moved_random_hash
},
{
"moved-identity-hash",
"move elements around in memory (identity hash)",
test_moved_identity_hash
},
{
"moved-constant-hash",
"move elements around in memory (constant hash)",
test_moved_constant_hash
},
{
"changed-random-hash",
"change key data in nodes (random hash)",
test_changed_random_hash
},
{
"changed-identity-hash",
"change key data in nodes (identity hash)",
test_changed_identity_hash
},
{
"changed-constant-hash",
"change key data in nodes (constant hash)",
test_changed_constant_hash
},
{
"swap-random-hash",
"test swapping tables",
test_swap_random_hash
},
{
"clear",
"test clearing hash table",
test_clear
},
{
"destroy-null",
"test destroying null table",
test_destroy_null
},
{
"shrink-empty",
"test shrinking an empty table",
test_shrink_empty
},
};
enum { N_TESTS = sizeof tests / sizeof *tests };
int
main (int argc, char *argv[])
{
int i;
if (argc != 2)
{
fprintf (stderr, "exactly one argument required; use --help for help\n");
return EXIT_FAILURE;
}
else if (!strcmp (argv[1], "--help"))
{
printf ("%s: test hash map\n"
"usage: %s TEST-NAME\n"
"where TEST-NAME is one of the following:\n",
argv[0], argv[0]);
for (i = 0; i < N_TESTS; i++)
printf (" %s\n %s\n", tests[i].name, tests[i].description);
return 0;
}
else
{
for (i = 0; i < N_TESTS; i++)
if (!strcmp (argv[1], tests[i].name))
{
tests[i].function ();
return 0;
}
fprintf (stderr, "unknown test %s; use --help for help\n", argv[1]);
return EXIT_FAILURE;
}
}
pspp-0.8.5/tests/libpspp/range-map-test.c 0000644 0001750 0001750 00000035005 12470242646 015244 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2007, 2010 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
/* This is a test program for the routines defined in
range-map.c. This test program aims to be as comprehensive as
possible. With -DNDEBUG, "gcov -b" should report 100%
coverage of lines and branches in range-map.c routines.
(Without -DNDEBUG, branches caused by failed assertions will
not be taken.) "valgrind --leak-check=yes
--show-reachable=yes" should give a clean report, both with
and without -DNDEBUG. */
#ifdef HAVE_CONFIG_H
#include
#endif
#include
#include
#include
#include
#include
#include
#include
#include "xalloc.h"
/* Exit with a failure code.
(Place a breakpoint on this function while debugging.) */
static void
check_die (void)
{
exit (EXIT_FAILURE);
}
/* If OK is not true, prints a message about failure on the
current source file and the given LINE and terminates. */
static void
check_func (bool ok, int line)
{
if (!ok)
{
fprintf (stderr, "%s:%d: check failed\n", __FILE__, line);
check_die ();
}
}
/* Verifies that EXPR evaluates to true.
If not, prints a message citing the calling line number and
terminates. */
#define check(EXPR) check_func ((EXPR), __LINE__)
/* Swaps *A and *B. */
static void
swap (int *a, int *b)
{
int t = *a;
*a = *b;
*b = t;
}
/* Reverses the order of the CNT integers starting at VALUES. */
static void
reverse (int *values, size_t cnt)
{
size_t i = 0;
size_t j = cnt;
while (j > i)
swap (&values[i++], &values[--j]);
}
/* Arranges the CNT blocks in VALUES into the lexicographically
next greater permutation. Returns true if successful.
If VALUES is already the lexicographically greatest
permutation of its blocks (i.e. ordered from greatest to
smallest), arranges them into the lexicographically least
permutation (i.e. ordered from smallest to largest) and
returns false. */
static bool
next_permutation (int *values, size_t cnt)
{
if (cnt > 0)
{
size_t i = cnt - 1;
while (i != 0)
{
i--;
if (values[i] < values[i + 1])
{
size_t j;
for (j = cnt - 1; values[i] >= values[j]; j--)
continue;
swap (values + i, values + j);
reverse (values + (i + 1), cnt - (i + 1));
return true;
}
}
reverse (values, cnt);
}
return false;
}
/* Returns N!. */
static unsigned int
factorial (unsigned int n)
{
unsigned int value = 1;
/* Disallow N values that overflow on 32-bit machines. */
assert (n <= 12);
for (; n > 1; )
value *= n--;
return value;
}
/* Tests whether PARTS is a K-part integer composition of N.
Returns true if so, false otherwise. */
static bool UNUSED
is_k_composition (int n, int k, const int parts[])
{
int sum;
int i;
sum = 0;
for (i = 0; i < k; i++)
{
if (parts[i] < 1 || parts[i] > n)
return false;
sum += parts[i];
}
return sum == n;
}
/* Advances the K-part integer composition of N stored in PARTS
to the next lexicographically greater one.
Returns true if successful, false if the composition was
already the greatest K-part composition of N (in which case
PARTS is unaltered). */
static bool
next_k_composition (int n UNUSED, int k, int parts[])
{
int x, i;
assert (is_k_composition (n, k, parts));
if (k == 1)
return false;
for (i = k - 1; i > 0; i--)
if (parts[i] > 1)
break;
if (i == 0)
return false;
x = parts[i] - 1;
parts[i] = 1;
parts[i - 1]++;
parts[k - 1] = x;
assert (is_k_composition (n, k, parts));
return true;
}
/* Sets the K integers in PARTS to the lexicographically first
K-part composition of N. */
static void
first_k_composition (int n, int k, int parts[])
{
int i;
assert (n >= k);
for (i = 0; i < k; i++)
parts[i] = 1;
parts[k - 1] += n - k;
}
/* Advances *K and PARTS to the next integer composition of N.
Compositions are ordered from shortest to longest and in
lexicographical order within a given length.
Before the first call, initialize *K to 0.
After each successful call, *K contains the length of the
current composition and the *K blocks in PARTS contain its
parts.
Returns true if successful, false if the set of compositions
has been exhausted. */
static bool
next_composition (int n, int *k, int parts[])
{
if (*k >= 1 && next_k_composition (n, *k, parts))
return true;
else if (*k < n)
{
first_k_composition (n, ++*k, parts);
return true;
}
else
return false;
}
/* Test data element. */
struct element
{
struct range_map_node node; /* Embedded tower block. */
int x; /* Primary value. */
};
static struct element *
range_map_node_to_element (struct range_map_node *node)
{
return range_map_data (node, struct element, node);
}
/* Element we expect to find. */
struct expected_element
{
int x; /* Primary value. */
unsigned long int start; /* Start of region. */
unsigned long int end; /* End of region. */
};
/* Compares expected_element A and B and returns a strcmp()-type
result. */
static int
compare_expected_element (const void *a_, const void *b_)
{
const struct expected_element *a = (const struct expected_element *) a_;
const struct expected_element *b = (const struct expected_element *) b_;
return a->start < b->start ? -1 : a->start > b->start;
}
/* Checks that RM contains the ELEM_CNT elements described by
ELEMENTS[]. */
static void
check_range_map (struct range_map *rm,
struct expected_element elements[], size_t elem_cnt)
{
struct expected_element *sorted;
struct range_map_node *node;
size_t i;
sorted = xnmalloc (elem_cnt, sizeof *sorted);
memcpy (sorted, elements, elem_cnt * sizeof *elements);
qsort (sorted, elem_cnt, sizeof *sorted, compare_expected_element);
check (range_map_is_empty (rm) == (elem_cnt == 0));
for (i = 0; i < elem_cnt; i++)
{
struct expected_element *e = &sorted[i];
unsigned long int position;
/* Check that range_map_lookup finds all the positions
within the element. */
for (position = e->start; position < e->end; position++)
{
struct range_map_node *found = range_map_lookup (rm, position);
check (found != NULL);
check (range_map_node_to_element (found)->x == e->x);
check (range_map_node_get_start (found) == e->start);
check (range_map_node_get_end (found) == e->end);
check (range_map_node_get_width (found) == e->end - e->start);
}
/* If there shouldn't be any elements in the positions just
before or after the element, verify that
range_map_lookup doesn't find any there. */
if (e->start > 0 && (i == 0 || e[-1].end < e->start))
check (range_map_lookup (rm, e->start - 1) == NULL);
if (i == elem_cnt - 1 || e->end < e[1].start)
check (range_map_lookup (rm, e->end) == NULL);
}
for (node = (rand () % 2 ? range_map_first (rm) : range_map_next (rm, NULL)),
i = 0;
node != NULL;
node = range_map_next (rm, node), i++)
{
struct expected_element *e = &sorted[i];
check (range_map_node_to_element (node)->x == e->x);
}
check (i == elem_cnt);
free (sorted);
}
/* Tests inserting all possible sets of ranges into a range map
in all possible orders, up to a specified maximum overall
range. */
static void
test_insert (void)
{
const int max_range = 7;
int cnt;
for (cnt = 1; cnt <= max_range; cnt++)
{
unsigned int composition_cnt;
struct expected_element *expected;
int *widths;
int elem_cnt;
int *order;
struct element *elements;
expected = xnmalloc (cnt, sizeof *expected);
widths = xnmalloc (cnt, sizeof *widths);
order = xnmalloc (cnt, sizeof *order);
elements = xnmalloc (cnt, sizeof *elements);
elem_cnt = 0;
composition_cnt = 0;
while (next_composition (cnt, &elem_cnt, widths))
{
int i, j;
unsigned int permutation_cnt;
for (i = 0; i < elem_cnt; i++)
order[i] = i;
permutation_cnt = 0;
while (permutation_cnt == 0 || next_permutation (order, elem_cnt))
{
struct range_map rm;
/* Inserts the elem_cnt elements with the given
widths[] into T in the order given by order[]. */
range_map_init (&rm);
for (i = 0; i < elem_cnt; i++)
{
unsigned long int start, end;
int idx;
idx = order[i];
elements[idx].x = idx;
/* Find start and end of element. */
start = 0;
for (j = 0; j < idx; j++)
start += widths[j];
end = start + widths[j];
/* Insert. */
range_map_insert (&rm, start, end - start,
&elements[idx].node);
/* Check map contents. */
expected[i].x = idx;
expected[i].start = start;
expected[i].end = end;
check_range_map (&rm, expected, i + 1);
}
permutation_cnt++;
}
check (permutation_cnt == factorial (elem_cnt));
composition_cnt++;
}
check (composition_cnt == 1 << (cnt - 1));
free (expected);
free (widths);
free (order);
free (elements);
}
}
/* Tests deleting ranges from a range map in all possible orders,
up to a specified maximum overall range. */
static void
test_delete (int gap)
{
const int max_range = 7;
int cnt;
for (cnt = 1; cnt <= max_range; cnt++)
{
unsigned int composition_cnt;
struct expected_element *expected;
int *widths;
int elem_cnt;
int *order;
struct element *elements;
expected = xnmalloc (cnt, sizeof *expected);
widths = xnmalloc (cnt, sizeof *widths);
order = xnmalloc (cnt, sizeof *order);
elements = xnmalloc (cnt, sizeof *elements);
elem_cnt = 0;
composition_cnt = 0;
while (next_composition (cnt, &elem_cnt, widths))
{
int i, j;
unsigned int permutation_cnt;
for (i = 0; i < elem_cnt; i++)
order[i] = i;
permutation_cnt = 0;
while (permutation_cnt == 0 || next_permutation (order, elem_cnt))
{
struct range_map rm;
unsigned long int start;
/* Insert all the elements. */
range_map_init (&rm);
start = 0;
for (i = 0; i < elem_cnt; i++)
{
int width = widths[i] > gap ? widths[i] - gap : widths[i];
unsigned long int end = start + width;
elements[i].x = i;
range_map_insert (&rm, start, end - start,
&elements[i].node);
for (j = 0; ; j++)
{
assert (j < elem_cnt);
if (order[j] == i)
{
expected[j].x = i;
expected[j].start = start;
expected[j].end = end;
break;
}
}
start += widths[i];
}
check_range_map (&rm, expected, elem_cnt);
/* Delete the elements in the specified order. */
for (i = 0; i < elem_cnt; i++)
{
range_map_delete (&rm, &elements[order[i]].node);
check_range_map (&rm, expected + i + 1, elem_cnt - i - 1);
}
permutation_cnt++;
}
check (permutation_cnt == factorial (elem_cnt));
composition_cnt++;
}
check (composition_cnt == 1 << (cnt - 1));
free (expected);
free (widths);
free (order);
free (elements);
}
}
/* Tests deleting ranges from a range map filled with contiguous
ranges in all possible orders, up to a specified maximum
overall range. */
static void
test_delete_contiguous (void)
{
test_delete (0);
}
/* Tests deleting ranges from a range map filled with ranges
sometimes separated by gaps in all possible orders, up to a
specified maximum overall range. */
static void
test_delete_gaps (void)
{
test_delete (1);
}
/* Main program. */
struct test
{
const char *name;
const char *description;
void (*function) (void);
};
static const struct test tests[] =
{
{
"insert",
"insert",
test_insert
},
{
"delete-contiguous",
"delete from contiguous ranges",
test_delete_contiguous
},
{
"delete-gaps",
"delete from ranges separated by gaps",
test_delete_gaps
},
};
enum { N_TESTS = sizeof tests / sizeof *tests };
int
main (int argc, char *argv[])
{
int i;
if (argc != 2)
{
fprintf (stderr, "exactly one argument required; use --help for help\n");
return EXIT_FAILURE;
}
else if (!strcmp (argv[1], "--help"))
{
printf ("%s: test range map library\n"
"usage: %s TEST-NAME\n"
"where TEST-NAME is one of the following:\n",
argv[0], argv[0]);
for (i = 0; i < N_TESTS; i++)
printf (" %s\n %s\n", tests[i].name, tests[i].description);
return 0;
}
else
{
for (i = 0; i < N_TESTS; i++)
if (!strcmp (argv[1], tests[i].name))
{
tests[i].function ();
return 0;
}
fprintf (stderr, "unknown test %s; use --help for help\n", argv[1]);
return EXIT_FAILURE;
}
}
pspp-0.8.5/tests/libpspp/hmap.at 0000644 0001750 0001750 00000002210 12470242646 013517 0000000 0000000 AT_BANNER([Hash map (hmap) library])
m4_define([CHECK_HMAP],
[AT_SETUP([hmap -- $1])
AT_CHECK([hmap-test $1])
AT_CLEANUP])
CHECK_HMAP([insert-any-remove-any-random-hash])
CHECK_HMAP([insert-any-remove-any-identity-hash])
CHECK_HMAP([insert-any-remove-any-constant-hash])
CHECK_HMAP([insert-any-remove-same-random-hash])
CHECK_HMAP([insert-any-remove-same-identity-hash])
CHECK_HMAP([insert-any-remove-same-constant-hash])
CHECK_HMAP([insert-any-remove-reverse-random-hash])
CHECK_HMAP([insert-any-remove-reverse-identity-hash])
CHECK_HMAP([insert-any-remove-reverse-constant-hash])
CHECK_HMAP([random-sequence-random-hash])
CHECK_HMAP([random-sequence-identity-hash])
CHECK_HMAP([random-sequence-constant-hash])
CHECK_HMAP([insert-ordered-random-hash])
CHECK_HMAP([insert-ordered-identity-hash])
CHECK_HMAP([insert-ordered-constant-hash])
CHECK_HMAP([moved-random-hash])
CHECK_HMAP([moved-identity-hash])
CHECK_HMAP([moved-constant-hash])
CHECK_HMAP([changed-random-hash])
CHECK_HMAP([changed-identity-hash])
CHECK_HMAP([changed-constant-hash])
CHECK_HMAP([swap-random-hash])
CHECK_HMAP([clear])
CHECK_HMAP([destroy-null])
CHECK_HMAP([shrink-empty])
pspp-0.8.5/tests/libpspp/u8-istream.at 0000644 0001750 0001750 00000014423 12523704223 014572 0000000 0000000 AT_BANNER([u8_istream])
AT_SETUP([read ASCII])
AT_KEYWORDS([u8_istream])
AT_CHECK([i18n-test supports_encodings ASCII])
AT_CHECK([echo string | u8-istream-test read - ASCII], [0], [string
])
AT_CLEANUP
AT_SETUP([read UTF-8])
AT_KEYWORDS([u8_istream])
AT_CHECK([printf '\346\227\245\346\234\254\350\252\236\n' | u8-istream-test read - UTF-8], [0], [dnl
UTF-8 mode
日本語
UTF-8 mode
])
AT_CLEANUP
AT_SETUP([read EUC-JP])
AT_KEYWORDS([u8_istream])
AT_CHECK([i18n-test supports_encodings EUC-JP])
AT_CHECK([printf '\244\241 \244\242 \244\243 \244\244 \244\245 \244\246 \244\247 \244\250 \244\251 \244\252\n' | u8-istream-test read - EUC-JP],
[0],
[ぁ あ ぃ い ぅ う ぇ え ぉ お
])
AT_CLEANUP
AT_SETUP([read UTF-8 with character split across input buffers])
AT_KEYWORDS([u8_istream])
buffer_size=`u8-istream-test buffer-size`
($PERL -e "print 'x' x ($buffer_size - 16)"
printf '\343\201\201\343\201\202\343\201\203\343\201\204\343\201\205\343\201\206\343\201\207\343\201\210\343\201\211\343\201\212\n') > input
(echo "UTF-8 mode"
cat input
echo "UTF-8 mode") > expout
AT_CHECK([u8-istream-test read input UTF-8 16], [0], [expout])
AT_CLEANUP
AT_SETUP([read UTF-8 with character split across output buffers])
AT_KEYWORDS([u8_istream])
AT_CHECK([printf '\343\201\201\343\201\202\343\201\203\343\201\204\343\201\205\343\201\206\343\201\207\343\201\210\343\201\211\343\201\212\n' | u8-istream-test read - UTF-8 16], [0], [dnl
UTF-8 mode
ぁあぃいぅうぇえぉお
UTF-8 mode
])
AT_CLEANUP
AT_SETUP([read UTF-8 with character split across input and output buffers])
AT_KEYWORDS([u8_istream])
buffer_size=`u8-istream-test buffer-size`
($PERL -e "print 'x' x ($buffer_size - 16)"
printf '\343\201\201\343\201\202\343\201\203\343\201\204\343\201\205\343\201\206\343\201\207\343\201\210\343\201\211\343\201\212\n') > input
(echo "UTF-8 mode"
cat input
echo "UTF-8 mode") > expout
AT_CHECK([u8-istream-test read input UTF-8 16], [0], [expout])
AT_CLEANUP
AT_SETUP([read EUC-JP with character split across input buffers])
AT_KEYWORDS([u8_istream])
AT_CHECK([i18n-test supports_encodings EUC-JP])
buffer_size=`u8-istream-test buffer-size`
($PERL -e "print 'x' x ($buffer_size - 16)"
printf '\244\241 \244\242 \244\243 \244\244 \244\245 \244\246 \244\247 '
printf '\244\250 \244\251 \244\252\n') > input
($PERL -e "print 'x' x ($buffer_size - 16)"
printf '\343\201\201\040\343\201\202\040\343\201\203\040\343\201\204\040'
printf '\343\201\205\040\343\201\206\040\343\201\207\040\343\201\210\040'
printf '\343\201\211\040\343\201\212\n') > expout
AT_CHECK([u8-istream-test read input EUC-JP], [0], [expout])
AT_CLEANUP
AT_SETUP([read EUC-JP with character split across output buffers])
AT_KEYWORDS([u8_istream])
AT_CHECK([i18n-test supports_encodings EUC-JP])
AT_CHECK([printf '\244\241\244\242\244\243\244\244\244\245\244\246\244\247\244\250\244\251\244\252\n' | u8-istream-test read - EUC-JP 16],
[0],
[ぁあぃいぅうぇえぉお
])
AT_CLEANUP
AT_SETUP([read EUC-JP with character split across input and output buffers])
AT_KEYWORDS([u8_istream])
AT_CHECK([i18n-test supports_encodings EUC-JP])
buffer_size=`u8-istream-test buffer-size`
($PERL -e "print 'x' x ($buffer_size - 16)"
printf 'xyz\244\241\244\242\244\243\244\244\244\245\244\246\244\247\244\250'
printf '\244\251\244\252\n') > input
($PERL -e "print 'x' x ($buffer_size - 16)"
printf '\170\171\172\343\201\201\343\201\202\343\201\203\343\201\204\343'
printf '\201\205\343\201\206\343\201\207\343\201\210\343\201\211\343\201'
printf '\212\n') > expout
AT_CHECK([u8-istream-test read input EUC-JP 16], [0], [expout])
AT_CLEANUP
AT_SETUP([read ASCII as Auto])
AT_KEYWORDS([u8_istream])
AT_CHECK([echo string | u8-istream-test read - Auto], [0], [dnl
Auto mode
string
Auto mode
])
AT_CLEANUP
AT_SETUP([read UTF-8 as Auto])
AT_KEYWORDS([u8_istream])
AT_CHECK([printf 'entr\303\251e\n' | u8-istream-test read - Auto], [0], [dnl
Auto mode
entrée
UTF-8 mode
])
AT_CHECK([printf '\357\273\277entr\303\251e\n' | u8-istream-test read - Auto], [0], [dnl
UTF-8 mode
entrée
UTF-8 mode
])
AT_CLEANUP
AT_SETUP([read ISO-8859-1 as Auto,ISO-8859-1])
AT_KEYWORDS([u8_istream])
AT_CHECK([i18n-test supports_encodings ISO-8859-1])
buffer_size=`u8-istream-test buffer-size`
($PERL -e 'print "xyzzy\n" x int('$buffer_size' * 2.5 / 7)'; printf 'entr\351e\n') > input
(echo "Auto mode"
$PERL -e 'print "xyzzy\n" x int('$buffer_size' * 2.5 / 7)'
printf 'entr\303\251e\n') > expout
AT_CHECK([u8-istream-test read input Auto,ISO-8859-1], [0], [expout])
AT_CLEANUP
dnl UTF-16BE is not ASCII compatible so this doesn't start out in Auto mode.
AT_SETUP([read UTF-16BE as Auto,UTF-16BE])
AT_KEYWORDS([u8_istream])
AT_CHECK([i18n-test supports_encodings UTF-16BE])
AT_CHECK([printf '\0e\0n\0t\0r\0\351\0e\0\n' | u8-istream-test read - Auto,UTF-16BE],
[0], [dnl
entrée
])
AT_CLEANUP
AT_SETUP([read UTF-16 as Auto])
AT_KEYWORDS([u8_istream])
AT_CHECK([i18n-test supports_encodings UTF-16 UTF-16BE UTF-16LE])
dnl The "sleep 1" checks for a bug in which u8-istream did not properly
dnl handle receiving data in multiple chunks.
AT_CHECK([{ printf '\0e\0n\0t\0'; sleep 1; printf 'r\0\351\0e\0\n'; } | u8-istream-test read - Auto],
[0], [entrée
])
AT_CHECK([printf 'e\0n\0t\0r\0\351\0e\0\n\0' | u8-istream-test read - Auto],
[0], [entrée
])
AT_CHECK([printf '\376\377\0e\0n\0t\0r\0\351\0e\0\n' | u8-istream-test read - Auto],
[0], [entrée
])
AT_CHECK([printf '\377\376e\0n\0t\0r\0\351\0e\0\n\0' | u8-istream-test read - Auto],
[0], [entrée
])
AT_CLEANUP
AT_SETUP([read UTF-32 as Auto])
AT_KEYWORDS([u8_istream])
AT_CHECK([i18n-test supports_encodings UTF-16 UTF-16BE UTF-16LE])
AT_CHECK([printf '\0\0\0e\0\0\0n\0\0\0t\0\0\0r\0\0\0\351\0\0\0e\0\0\0\n' | u8-istream-test read - Auto],
[0], [entrée
])
AT_CHECK([printf 'e\0\0\0n\0\0\0t\0\0\0r\0\0\0\351\0\0\0e\0\0\0\n\0\0\0' | u8-istream-test read - Auto],
[0], [entrée
])
AT_CHECK([printf '\0\0\376\377\0\0\0e\0\0\0n\0\0\0t\0\0\0r\0\0\0\351\0\0\0e\0\0\0\n' | u8-istream-test read - Auto],
[0], [entrée
])
AT_CHECK([printf '\377\376\0\0e\0\0\0n\0\0\0t\0\0\0r\0\0\0\351\0\0\0e\0\0\0\n\0\0\0' | u8-istream-test read - Auto],
[0], [entrée
])
AT_CLEANUP
AT_SETUP([read EUC-JP as Auto,EUC-JP])
AT_KEYWORDS([u8_istream])
AT_CHECK([i18n-test supports_encodings EUC-JP])
AT_CHECK([printf 'entr\217\253\261e\n' | u8-istream-test read - Auto,EUC-JP],
[0], [entrée
])
AT_CLEANUP
pspp-0.8.5/tests/libpspp/zip-test.c 0000644 0001750 0001750 00000005335 12470434666 014207 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2011 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
/* A simple program to zip or unzip a file */
#ifdef HAVE_CONFIG_H
#include
#endif
#include
#include
#include "libpspp/assertion.h"
#include
#include
#include
#include
#include
#include "xalloc.h"
/* Exit with a failure code.
(Place a breakpoint on this function while debugging.) */
static void
check_die (void)
{
exit (EXIT_FAILURE);
}
int
main (int argc, char **argv)
{
if ( argc < 4)
{
fprintf (stderr, "Usage zip-test: {r|w} archive file0 file1 ... filen\n");
check_die ();
}
if ( 0 == strcmp ("w", argv[1]))
{
int i;
struct zip_writer *zw = zip_writer_create (argv[2]);
for (i = 3; i < argc; ++i)
{
FILE *fp = fopen (argv[i], "r");
if (!fp ) check_die ();
zip_writer_add (zw, fp, argv[i]);
}
zip_writer_close (zw);
}
else if ( 0 == strcmp ("r", argv[1]))
{
const int BUFSIZE=256;
char buf[BUFSIZE];
int i;
struct string str;
struct zip_reader *zr = zip_reader_create (argv[2], &str);
if ( NULL == zr)
{
fprintf (stderr, "Could not create zip reader: %s\n", ds_cstr (&str));
check_die ();
}
for (i = 3; i < argc; ++i)
{
int x = 0;
struct zip_member *zm ;
FILE *fp = fopen (argv[i], "w");
if ( NULL == fp)
{
int e = errno;
fprintf (stderr, "Could not create file %s: %s\n", argv[i], strerror(e));
check_die ();
}
zm = zip_member_open (zr, argv[i]);
if ( NULL == zm)
{
fprintf (stderr, "Could not open zip member %s from archive: %s\n",
argv[i], ds_cstr (&str));
check_die ();
}
while ((x = zip_member_read (zm, buf, BUFSIZE)) > 0)
{
fwrite (buf, x, 1, fp);
}
fclose (fp);
if ( x < 0)
{
fprintf (stderr, "Unzip failed: %s\n", ds_cstr (&str));
check_die ();
}
}
zip_reader_destroy (zr);
}
else
exit (1);
return 0;
}
pspp-0.8.5/tests/libpspp/cmac-aes256-test.c 0000644 0001750 0001750 00000007046 12523704223 015300 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2013 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
#include
#include
#include "libpspp/cmac-aes256.h"
#undef NDEBUG
#include
static void
test_cmac (const uint8_t key[32], size_t key_size,
const uint8_t *data, size_t data_size,
const uint8_t *exp_cmac, size_t exp_cmac_size)
{
uint8_t cmac[16];
assert (key_size == 32);
assert (exp_cmac_size <= 16);
cmac_aes256 (key, data, data_size, cmac);
assert (!memcmp (cmac, exp_cmac, exp_cmac_size));
}
/* From NIST CMAC test vectors. */
static void
test_cmac1 (void)
{
static const uint8_t key[] = {
0x0b,0x12,0x2a,0xc8, 0xf3,0x4e,0xd1,0xfe,
0x08,0x2a,0x36,0x25, 0xd1,0x57,0x56,0x14,
0x54,0x16,0x7a,0xc1, 0x45,0xa1,0x0b,0xbf,
0x77,0xc6,0xa7,0x05, 0x96,0xd5,0x74,0xf1
};
static const uint8_t data[] = {
0x49,0x8b,0x53,0xfd, 0xec,0x87,0xed,0xcb,
0xf0,0x70,0x97,0xdc, 0xcd,0xe9,0x3a,0x08,
0x4b,0xad,0x75,0x01, 0xa2,0x24,0xe3,0x88,
0xdf,0x34,0x9c,0xe1, 0x89,0x59,0xfe,0x84,
0x85,0xf8,0xad,0x15, 0x37,0xf0,0xd8,0x96,
0xea,0x73,0xbe,0xdc, 0x72,0x14,0x71,0x3f,
};
static const uint8_t exp_cmac[] = { 0xf6,0x2c,0x46,0x32, 0x9b };
test_cmac (key, sizeof key,
data, sizeof data,
exp_cmac, sizeof exp_cmac);
}
/* CMAC-AES-256 test vectors from NIST's updated SP800-38B examples. */
static void
test_cmac2 (void)
{
static const uint8_t key[] = {
0x60,0x3d,0xeb,0x10, 0x15,0xca,0x71,0xbe,
0x2b,0x73,0xae,0xf0, 0x85,0x7d,0x77,0x81,
0x1f,0x35,0x2c,0x07, 0x3b,0x61,0x08,0xd7,
0x2d,0x98,0x10,0xa3, 0x09,0x14,0xdf,0xf4,
};
static const uint8_t data[] = {
0x6b,0xc1,0xbe,0xe2, 0x2e,0x40,0x9f,0x96,
0xe9,0x3d,0x7e,0x11, 0x73,0x93,0x17,0x2a,
0xae,0x2d,0x8a,0x57, 0x1e,0x03,0xac,0x9c,
0x9e,0xb7,0x6f,0xac, 0x45,0xaf,0x8e,0x51,
0x30,0xc8,0x1c,0x46, 0xa3,0x5c,0xe4,0x11,
0xe5,0xfb,0xc1,0x19, 0x1a,0x0a,0x52,0xef,
0xf6,0x9f,0x24,0x45, 0xdf,0x4f,0x9b,0x17,
0xad,0x2b,0x41,0x7b, 0xe6,0x6c,0x37,0x10,
};
static const uint8_t exp_cmac0[] = {
0x02,0x89,0x62,0xf6, 0x1b,0x7b,0xf8,0x9e,
0xfc,0x6b,0x55,0x1f, 0x46,0x67,0xd9,0x83,
};
static const uint8_t exp_cmac16[] = {
0x28,0xa7,0x02,0x3f, 0x45,0x2e,0x8f,0x82,
0xbd,0x4b,0xf2,0x8d, 0x8c,0x37,0xc3,0x5c,
};
static const uint8_t exp_cmac40[] = {
0xaa,0xf3,0xd8,0xf1, 0xde,0x56,0x40,0xc2,
0x32,0xf5,0xb1,0x69, 0xb9,0xc9,0x11,0xe6,
};
static const uint8_t exp_cmac64[] = {
0xe1,0x99,0x21,0x90, 0x54,0x9f,0x6e,0xd5,
0x69,0x6a,0x2c,0x05, 0x6c,0x31,0x54,0x10,
};
test_cmac (key, sizeof key, data, 0, exp_cmac0, sizeof exp_cmac0);
test_cmac (key, sizeof key, data, 16, exp_cmac16, sizeof exp_cmac16);
test_cmac (key, sizeof key, data, 40, exp_cmac40, sizeof exp_cmac40);
test_cmac (key, sizeof key, data, 64, exp_cmac64, sizeof exp_cmac64);
}
int
main(void)
{
test_cmac1 ();
test_cmac2 ();
return 0;
}
pspp-0.8.5/tests/libpspp/str-test.c 0000644 0001750 0001750 00000005367 12523704223 014206 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2008, 2010, 2014 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
#include
#include
#include
#include
#include
/* Exit with a failure code.
(Place a breakpoint on this function while debugging.) */
static void
check_die (void)
{
exit (EXIT_FAILURE);
}
static void
check_26adic (unsigned long int number, const char *expected_string)
{
char string[8];
str_format_26adic (number, true, string, sizeof string);
if (strcmp (string, expected_string))
{
printf ("base-26 of %lu: expected \"%s\", got \"%s\"\n",
number, expected_string, string);
check_die ();
}
}
static void
test_format_26adic (void)
{
check_26adic (0, "");
check_26adic (1, "A");
check_26adic (2, "B");
check_26adic (26, "Z");
check_26adic (27, "AA");
check_26adic (28, "AB");
check_26adic (29, "AC");
check_26adic (18278, "ZZZ");
check_26adic (18279, "AAAA");
check_26adic (19010, "ABCD");
}
/* Main program. */
struct test
{
const char *name;
const char *description;
void (*function) (void);
};
static const struct test tests[] =
{
{
"format-26adic",
"format 26-adic strings",
test_format_26adic
}
};
enum { N_TESTS = sizeof tests / sizeof *tests };
int
main (int argc, char *argv[])
{
int i;
if (argc != 2)
{
fprintf (stderr, "exactly one argument required; use --help for help\n");
return EXIT_FAILURE;
}
else if (!strcmp (argv[1], "--help"))
{
printf ("%s: test string library\n"
"usage: %s TEST-NAME\n"
"where TEST-NAME is one of the following:\n",
argv[0], argv[0]);
for (i = 0; i < N_TESTS; i++)
printf (" %s\n %s\n", tests[i].name, tests[i].description);
return 0;
}
else
{
for (i = 0; i < N_TESTS; i++)
if (!strcmp (argv[1], tests[i].name))
{
tests[i].function ();
return 0;
}
fprintf (stderr, "unknown test %s; use --help for help\n", argv[1]);
return EXIT_FAILURE;
}
}
pspp-0.8.5/tests/libpspp/range-tower.at 0000644 0001750 0001750 00000000566 12470243701 015031 0000000 0000000 AT_BANNER([range tower library])
m4_define([CHECK_RANGE_TOWER],
[AT_SETUP([range-tower -- $1])
AT_CHECK([range-tower-test $1])
AT_CLEANUP])
CHECK_RANGE_TOWER([set1])
CHECK_RANGE_TOWER([set0])
CHECK_RANGE_TOWER([insert0])
CHECK_RANGE_TOWER([insert1])
CHECK_RANGE_TOWER([delete])
CHECK_RANGE_TOWER([move])
CHECK_RANGE_TOWER([pool])
CHECK_RANGE_TOWER([destroy-null])
pspp-0.8.5/tests/libpspp/string-map-test.c 0000644 0001750 0001750 00000057171 12470242646 015466 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
/* This is a test program for the string_map_* routines defined in
string-map.c. This test program aims to be as comprehensive as possible.
"gcov -a -b" should report almost complete coverage of lines, blocks and
branches in string-map.c, except that one branch caused by hash collision is
not exercised because our hash function has so few collisions. "valgrind
--leak-check=yes --show-reachable=yes" should give a clean report. */
#ifdef HAVE_CONFIG_H
#include
#endif
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
/* Exit with a failure code.
(Place a breakpoint on this function while debugging.) */
static void
check_die (void)
{
exit (EXIT_FAILURE);
}
/* If OK is not true, prints a message about failure on the
current source file and the given LINE and terminates. */
static void
check_func (bool ok, int line)
{
if (!ok)
{
fprintf (stderr, "%s:%d: check failed\n", __FILE__, line);
check_die ();
}
}
/* Verifies that EXPR evaluates to true.
If not, prints a message citing the calling line number and
terminates. */
#define check(EXPR) check_func ((EXPR), __LINE__)
/* Prints a message about memory exhaustion and exits with a
failure code. */
static void
xalloc_die (void)
{
printf ("virtual memory exhausted\n");
exit (EXIT_FAILURE);
}
static void *xmalloc (size_t n) MALLOC_LIKE;
static void *xnmalloc (size_t n, size_t m) MALLOC_LIKE;
static void *xmemdup (const void *p, size_t n) MALLOC_LIKE;
/* Allocates and returns N bytes of memory. */
static void *
xmalloc (size_t n)
{
if (n != 0)
{
void *p = malloc (n);
if (p == NULL)
xalloc_die ();
return p;
}
else
return NULL;
}
static void *
xmemdup (const void *p, size_t n)
{
void *q = xmalloc (n);
memcpy (q, p, n);
return q;
}
/* Clone STRING. */
static char *
xstrdup (const char *string)
{
return xmemdup (string, strlen (string) + 1);
}
/* Allocates and returns N * M bytes of memory. */
static void *
xnmalloc (size_t n, size_t m)
{
if ((size_t) -1 / m <= n)
xalloc_die ();
return xmalloc (n * m);
}
/* Support routines. */
enum {
IDX_BITS = 10,
MAX_IDX = 1 << IDX_BITS,
KEY_MASK = (MAX_IDX - 1),
KEY_SHIFT = 0,
VALUE_MASK = (MAX_IDX - 1) << IDX_BITS,
VALUE_SHIFT = IDX_BITS
};
static char *string_table[MAX_IDX];
static const char *
get_string (int idx)
{
char **s;
assert (idx >= 0 && idx < MAX_IDX);
s = &string_table[idx];
if (*s == NULL)
{
*s = xmalloc (16);
sprintf (*s, "%d", idx);
}
return *s;
}
static void
free_strings (void)
{
int i;
for (i = 0; i < MAX_IDX; i++)
free (string_table[i]);
}
static const char *
make_key (int value)
{
return get_string ((value & KEY_MASK) >> KEY_SHIFT);
}
static const char *
make_value (int value)
{
return get_string ((value & VALUE_MASK) >> VALUE_SHIFT);
}
static int
random_value (unsigned int seed, int basis)
{
return hash_int (seed, basis) & VALUE_MASK;
}
/* Swaps *A and *B. */
static void
swap (int *a, int *b)
{
int t = *a;
*a = *b;
*b = t;
}
/* Reverses the order of the CNT integers starting at VALUES. */
static void
reverse (int *values, size_t cnt)
{
size_t i = 0;
size_t j = cnt;
while (j > i)
swap (&values[i++], &values[--j]);
}
/* Arranges the CNT elements in VALUES into the lexicographically next greater
permutation. Returns true if successful. If VALUES is already the
lexicographically greatest permutation of its elements (i.e. ordered from
greatest to smallest), arranges them into the lexicographically least
permutation (i.e. ordered from smallest to largest) and returns false.
Comparisons among elements of VALUES consider only the bits in KEY_MASK. */
static bool
next_permutation (int *values, size_t cnt)
{
if (cnt > 0)
{
size_t i = cnt - 1;
while (i != 0)
{
i--;
if ((values[i] & KEY_MASK) < (values[i + 1] & KEY_MASK))
{
size_t j;
for (j = cnt - 1;
(values[i] & KEY_MASK) >= (values[j] & KEY_MASK);
j--)
continue;
swap (values + i, values + j);
reverse (values + (i + 1), cnt - (i + 1));
return true;
}
}
reverse (values, cnt);
}
return false;
}
/* Returns N!. */
static unsigned int
factorial (unsigned int n)
{
unsigned int value = 1;
while (n > 1)
value *= n--;
return value;
}
/* Randomly shuffles the CNT elements in ARRAY, each of which is
SIZE bytes in size. */
static void
random_shuffle (void *array_, size_t cnt, size_t size)
{
char *array = array_;
char *tmp = xmalloc (size);
size_t i;
for (i = 0; i < cnt; i++)
{
size_t j = rand () % (cnt - i) + i;
if (i != j)
{
memcpy (tmp, array + j * size, size);
memcpy (array + j * size, array + i * size, size);
memcpy (array + i * size, tmp, size);
}
}
free (tmp);
}
/* Checks that MAP contains the CNT strings in DATA, that its structure is
correct, and that certain operations on MAP produce the expected results. */
static void
check_string_map (struct string_map *map, const int data[], size_t cnt)
{
size_t i;
check (string_map_is_empty (map) == (cnt == 0));
check (string_map_count (map) == cnt);
for (i = 0; i < cnt; i++)
{
struct string_map_node *node;
const char *key = make_key (data[i]);
const char *value = make_value (data[i]);
const char *found_value;
check (string_map_contains (map, key));
node = string_map_find_node (map, key);
check (node != NULL);
check (!strcmp (key, string_map_node_get_key (node)));
check (!strcmp (value, string_map_node_get_value (node)));
check (node == string_map_insert (map, key, "abc"));
check (!strcmp (value, string_map_node_get_value (node)));
check (node == string_map_insert_nocopy (map, xstrdup (key),
xstrdup ("def")));
check (!strcmp (value, string_map_node_get_value (node)));
found_value = string_map_find (map, key);
check (found_value != NULL);
check (!strcmp (found_value, value));
}
check (!string_map_contains (map, "xxx"));
check (string_map_find (map, "z") == NULL);
check (string_map_find_node (map, "") == NULL);
check (!string_map_delete (map, "xyz"));
if (cnt == 0)
check (string_map_first (map) == NULL);
else
{
const struct string_map_node *node;
int *data_copy;
int left;
data_copy = xmemdup (data, cnt * sizeof *data);
left = cnt;
for (node = string_map_first (map), i = 0; i < cnt;
node = string_map_next (map, node), i++)
{
const char *key = string_map_node_get_key (node);
const char *value = string_map_node_get_value (node);
size_t j;
for (j = 0; j < left; j++)
if (!strcmp (key, make_key (data_copy[j]))
|| !strcmp (value, make_value (data_copy[j])))
{
data_copy[j] = data_copy[--left];
goto next;
}
check_die ();
next: ;
}
check (node == NULL);
free (data_copy);
}
}
/* Inserts the CNT strings from 0 to CNT - 1 (inclusive) into a map in the
order specified by INSERTIONS, then deletes them in the order specified by
DELETIONS, checking the map's contents for correctness after each
operation. */
static void
test_insert_delete (const int insertions[],
const int deletions[],
size_t cnt)
{
struct string_map map;
size_t i;
string_map_init (&map);
check_string_map (&map, NULL, 0);
for (i = 0; i < cnt; i++)
{
check (string_map_insert (&map, make_key (insertions[i]),
make_value (insertions[i])));
check_string_map (&map, insertions, i + 1);
}
for (i = 0; i < cnt; i++)
{
check (string_map_delete (&map, make_key (deletions[i])));
check_string_map (&map, deletions + i + 1, cnt - i - 1);
}
string_map_destroy (&map);
}
/* Inserts strings into a map in each possible order, then removes them in each
possible order, up to a specified maximum size. */
static void
test_insert_any_remove_any (void)
{
const int basis = 0;
const int max_elems = 5;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *insertions, *deletions;
unsigned int ins_perm_cnt;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i | random_value (i, basis);
for (ins_perm_cnt = 0;
ins_perm_cnt == 0 || next_permutation (insertions, cnt);
ins_perm_cnt++)
{
unsigned int del_perm_cnt;
int i;
for (i = 0; i < cnt; i++)
deletions[i] = i | random_value (i, basis);
for (del_perm_cnt = 0;
del_perm_cnt == 0 || next_permutation (deletions, cnt);
del_perm_cnt++)
test_insert_delete (insertions, deletions, cnt);
check (del_perm_cnt == factorial (cnt));
}
check (ins_perm_cnt == factorial (cnt));
free (insertions);
free (deletions);
}
}
/* Inserts strings into a map in each possible order, then removes them in the
same order, up to a specified maximum size. */
static void
test_insert_any_remove_same (void)
{
const int max_elems = 7;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *values;
unsigned int permutation_cnt;
int i;
values = xnmalloc (cnt, sizeof *values);
for (i = 0; i < cnt; i++)
values[i] = i | random_value (i, 1);
for (permutation_cnt = 0;
permutation_cnt == 0 || next_permutation (values, cnt);
permutation_cnt++)
test_insert_delete (values, values, cnt);
check (permutation_cnt == factorial (cnt));
free (values);
}
}
/* Inserts strings into a map in each possible order, then
removes them in reverse order, up to a specified maximum
size. */
static void
test_insert_any_remove_reverse (void)
{
const int max_elems = 7;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *insertions, *deletions;
unsigned int permutation_cnt;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i | random_value (i, 2);
for (permutation_cnt = 0;
permutation_cnt == 0 || next_permutation (insertions, cnt);
permutation_cnt++)
{
memcpy (deletions, insertions, sizeof *insertions * cnt);
reverse (deletions, cnt);
test_insert_delete (insertions, deletions, cnt);
}
check (permutation_cnt == factorial (cnt));
free (insertions);
free (deletions);
}
}
/* Inserts and removes strings in a map, in random order. */
static void
test_random_sequence (void)
{
const int basis = 3;
const int max_elems = 64;
const int max_trials = 8;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt += 2)
{
int *insertions, *deletions;
int trial;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i | random_value (i, basis);
for (i = 0; i < cnt; i++)
deletions[i] = i | random_value (i, basis);
for (trial = 0; trial < max_trials; trial++)
{
random_shuffle (insertions, cnt, sizeof *insertions);
random_shuffle (deletions, cnt, sizeof *deletions);
test_insert_delete (insertions, deletions, cnt);
}
free (insertions);
free (deletions);
}
}
/* Inserts strings into a map in ascending order, then delete in ascending
order. */
static void
test_insert_ordered (void)
{
const int max_elems = 64;
int *values;
struct string_map map;
int i;
string_map_init (&map);
values = xnmalloc (max_elems, sizeof *values);
for (i = 0; i < max_elems; i++)
{
values[i] = i | random_value (i, 4);
string_map_insert_nocopy (&map, xstrdup (make_key (values[i])),
xstrdup (make_value (values[i])));
check_string_map (&map, values, i + 1);
}
for (i = 0; i < max_elems; i++)
{
string_map_delete (&map, make_key (i));
check_string_map (&map, values + i + 1, max_elems - i - 1);
}
string_map_destroy (&map);
free (values);
}
/* Inserts and replaces strings in a map, in random order. */
static void
test_replace (void)
{
const int basis = 15;
enum { MAX_ELEMS = 16 };
const int max_trials = 8;
int cnt;
for (cnt = 0; cnt <= MAX_ELEMS; cnt++)
{
int insertions[MAX_ELEMS];
int trial;
int i;
for (i = 0; i < cnt; i++)
insertions[i] = (i / 2) | random_value (i, basis);
for (trial = 0; trial < max_trials; trial++)
{
struct string_map map;
int data[MAX_ELEMS];
int n_data;
/* Insert with replacement in random order. */
n_data = 0;
string_map_init (&map);
random_shuffle (insertions, cnt, sizeof *insertions);
for (i = 0; i < cnt; i++)
{
const char *key = make_key (insertions[i]);
const char *value = make_value (insertions[i]);
int j;
for (j = 0; j < n_data; j++)
if ((data[j] & KEY_MASK) == (insertions[i] & KEY_MASK))
{
data[j] = insertions[i];
goto found;
}
data[n_data++] = insertions[i];
found:
if (i % 2)
string_map_replace (&map, key, value);
else
string_map_replace_nocopy (&map,
xstrdup (key), xstrdup (value));
check_string_map (&map, data, n_data);
}
/* Delete in original order. */
for (i = 0; i < cnt; i++)
{
const char *expected_value;
char *value;
int j;
expected_value = NULL;
for (j = 0; j < n_data; j++)
if ((data[j] & KEY_MASK) == (insertions[i] & KEY_MASK))
{
expected_value = make_value (data[j]);
data[j] = data[--n_data];
break;
}
value = string_map_find_and_delete (&map,
make_key (insertions[i]));
check ((value != NULL) == (expected_value != NULL));
check (value == NULL || !strcmp (value, expected_value));
free (value);
}
assert (string_map_is_empty (&map));
string_map_destroy (&map);
}
}
}
static void
make_patterned_map (struct string_map *map, unsigned int pattern, int basis,
int insertions[], int *np)
{
int n;
int i;
string_map_init (map);
n = 0;
for (i = 0; pattern != 0; i++)
if (pattern & (1u << i))
{
pattern &= pattern - 1;
insertions[n] = i | random_value (i, basis);
check (string_map_insert (map, make_key (insertions[n]),
make_value (insertions[n])));
n++;
}
check_string_map (map, insertions, n);
*np = n;
}
static void
for_each_map (void (*cb)(struct string_map *, int data[], int n),
int basis)
{
enum { MAX_ELEMS = 5 };
unsigned int pattern;
for (pattern = 0; pattern < (1u << MAX_ELEMS); pattern++)
{
int data[MAX_ELEMS];
struct string_map map;
int n;
make_patterned_map (&map, pattern, basis, data, &n);
(*cb) (&map, data, n);
string_map_destroy (&map);
}
}
static void
for_each_pair_of_maps (
void (*cb)(struct string_map *a, int a_data[], int n_a,
struct string_map *b, int b_data[], int n_b),
int a_basis, int b_basis)
{
enum { MAX_ELEMS = 5 };
unsigned int a_pattern, b_pattern;
for (a_pattern = 0; a_pattern < (1u << MAX_ELEMS); a_pattern++)
for (b_pattern = 0; b_pattern < (1u << MAX_ELEMS); b_pattern++)
{
int a_data[MAX_ELEMS], b_data[MAX_ELEMS];
struct string_map a_map, b_map;
int n_a, n_b;
make_patterned_map (&a_map, a_pattern, a_basis, a_data, &n_a);
make_patterned_map (&b_map, b_pattern, b_basis, b_data, &n_b);
(*cb) (&a_map, a_data, n_a, &b_map, b_data, n_b);
string_map_destroy (&a_map);
string_map_destroy (&b_map);
}
}
static void
clear_cb (struct string_map *map, int data[] UNUSED, int n UNUSED)
{
string_map_clear (map);
check_string_map (map, NULL, 0);
}
static void
test_clear (void)
{
for_each_map (clear_cb, 5);
}
static void
clone_cb (struct string_map *map, int data[], int n)
{
struct string_map clone;
string_map_clone (&clone, map);
check_string_map (&clone, data, n);
string_map_destroy (&clone);
}
static void
test_clone (void)
{
for_each_map (clone_cb, 6);
}
static void
node_swap_value_cb (struct string_map *map, int data[], int n)
{
int i;
for (i = 0; i < n; i++)
{
const char *value = make_value (data[i]);
struct string_map_node *node;
char *old_value;
node = string_map_find_node (map, make_key (data[i]));
check (node != NULL);
check (!strcmp (string_map_node_get_value (node), value));
data[i] = (data[i] & KEY_MASK) | random_value (i, 15);
old_value = string_map_node_swap_value (node, make_value (data[i]));
check (old_value != NULL);
check (!strcmp (value, old_value));
free (old_value);
}
}
static void
test_node_swap_value (void)
{
for_each_map (node_swap_value_cb, 14);
}
static void
swap_cb (struct string_map *a, int a_data[], int n_a,
struct string_map *b, int b_data[], int n_b)
{
string_map_swap (a, b);
check_string_map (a, b_data, n_b);
check_string_map (b, a_data, n_a);
}
static void
test_swap (void)
{
for_each_pair_of_maps (swap_cb, 7, 8);
}
static void
insert_map_cb (struct string_map *a, int a_data[], int n_a,
struct string_map *b, int b_data[], int n_b)
{
int i, j;
string_map_insert_map (a, b);
for (i = 0; i < n_b; i++)
{
for (j = 0; j < n_a; j++)
if ((b_data[i] & KEY_MASK) == (a_data[j] & KEY_MASK))
goto found;
a_data[n_a++] = b_data[i];
found:;
}
check_string_map (a, a_data, n_a);
check_string_map (b, b_data, n_b);
}
static void
test_insert_map (void)
{
for_each_pair_of_maps (insert_map_cb, 91, 10);
}
static void
replace_map_cb (struct string_map *a, int a_data[], int n_a,
struct string_map *b, int b_data[], int n_b)
{
int i, j;
string_map_replace_map (a, b);
for (i = 0; i < n_b; i++)
{
for (j = 0; j < n_a; j++)
if ((b_data[i] & KEY_MASK) == (a_data[j] & KEY_MASK))
{
a_data[j] = (a_data[j] & KEY_MASK) | (b_data[i] & VALUE_MASK);
goto found;
}
a_data[n_a++] = b_data[i];
found:;
}
check_string_map (a, a_data, n_a);
check_string_map (b, b_data, n_b);
}
static void
test_replace_map (void)
{
for_each_pair_of_maps (replace_map_cb, 11, 12);
}
static void
check_set (struct string_set *set, const int *data, int n_data,
int mask, int shift)
{
int *unique;
int n_unique;
int i;
n_unique = 0;
unique = xmalloc (n_data * sizeof *unique);
for (i = 0; i < n_data; i++)
{
int idx = (data[i] & mask) >> shift;
int j;
for (j = 0; j < n_unique; j++)
if (unique[j] == idx)
goto found;
unique[n_unique++] = idx;
found:;
}
check (string_set_count (set) == n_unique);
for (i = 0; i < n_unique; i++)
check (string_set_contains (set, get_string (unique[i])));
string_set_destroy (set);
free (unique);
}
static void
get_keys_and_values_cb (struct string_map *map, int data[], int n)
{
struct string_set keys, values;
string_set_init (&keys);
string_set_init (&values);
string_map_get_keys (map, &keys);
string_map_get_values (map, &values);
check_set (&keys, data, n, KEY_MASK, KEY_SHIFT);
check_set (&values, data, n, VALUE_MASK, VALUE_SHIFT);
}
static void
test_get_keys_and_values (void)
{
for_each_map (get_keys_and_values_cb, 13);
}
static void
test_destroy_null (void)
{
string_map_destroy (NULL);
}
/* Main program. */
struct test
{
const char *name;
const char *description;
void (*function) (void);
};
static const struct test tests[] =
{
{
"insert-any-remove-any",
"insert any order, delete any order",
test_insert_any_remove_any
},
{
"insert-any-remove-same",
"insert any order, delete same order",
test_insert_any_remove_same
},
{
"insert-any-remove-reverse",
"insert any order, delete reverse order",
test_insert_any_remove_reverse
},
{
"random-sequence",
"insert and delete in random sequence",
test_random_sequence
},
{
"replace",
"insert and replace in random sequence",
test_replace
},
{
"insert-ordered",
"insert in ascending order",
test_insert_ordered
},
{
"clear",
"clear",
test_clear
},
{
"clone",
"clone",
test_clone
},
{
"swap",
"swap",
test_swap
},
{
"node-swap-value",
"node_swap_value",
test_node_swap_value
},
{
"insert-map",
"insert_map",
test_insert_map
},
{
"replace-map",
"replace_map",
test_replace_map
},
{
"get-keys-and-values",
"get keys and values",
test_get_keys_and_values
},
{
"destroy-null",
"destroying null table",
test_destroy_null
},
};
enum { N_TESTS = sizeof tests / sizeof *tests };
int
main (int argc, char *argv[])
{
int i;
if (argc != 2)
{
fprintf (stderr, "exactly one argument required; use --help for help\n");
return EXIT_FAILURE;
}
else if (!strcmp (argv[1], "--help"))
{
printf ("%s: test string map library\n"
"usage: %s TEST-NAME\n"
"where TEST-NAME is one of the following:\n",
argv[0], argv[0]);
for (i = 0; i < N_TESTS; i++)
printf (" %s\n %s\n", tests[i].name, tests[i].description);
return 0;
}
else
{
for (i = 0; i < N_TESTS; i++)
if (!strcmp (argv[1], tests[i].name))
{
tests[i].function ();
free_strings ();
return 0;
}
fprintf (stderr, "unknown test %s; use --help for help\n", argv[1]);
return EXIT_FAILURE;
}
}
pspp-0.8.5/tests/libpspp/str.at 0000644 0001750 0001750 00000000161 12470242646 013405 0000000 0000000 AT_BANNER([string library])
AT_SETUP([26-adic string formatting])
AT_CHECK([str-test format-26adic])
AT_CLEANUP
pspp-0.8.5/tests/libpspp/u8-istream-test.c 0000644 0001750 0001750 00000006456 12470243701 015374 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2010, 2011 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
#include
#include "libpspp/u8-istream.h"
#include
#include
#include
#include
#include
#include
#include "libpspp/i18n.h"
#include "gl/error.h"
#include "gl/progname.h"
#include "gl/xalloc.h"
static void
usage (void)
{
printf ("usage: %s COMMAND [ARG]...\n"
"The available commands are:\n"
" help\n"
" print this usage message\n"
" buffer-size\n"
" print the buffer size, in bytes, on stdout\n"
" read FILE ENCODING [OUTBUF]\n"
" read FILE encoded in ENCODING (with output buffer size\n"
" OUTBUF) and print it on stdout in UTF-8\n",
program_name);
exit (0);
}
static void
cmd_read (int argc, char *argv[])
{
struct u8_istream *is;
const char *encoding;
const char *filename;
int outbufsize;
char *buffer;
if (argc < 4 || argc > 5)
error (1, 0, "bad syntax for `%s' command; use `%s help' for help",
argv[1], program_name);
outbufsize = argc > 4 ? atoi (argv[4]) : 4096;
buffer = xmalloc (outbufsize);
filename = argv[2];
encoding = *argv[3] ? argv[3] : NULL;
is = (!strcmp(filename, "-")
? u8_istream_for_fd (encoding, STDIN_FILENO)
: u8_istream_for_file (encoding, filename, O_RDONLY));
if (is == NULL)
error (1, errno, "u8_istream_open failed");
if (u8_istream_is_auto (is))
printf ("Auto mode\n");
else if (u8_istream_is_utf8 (is))
printf ("UTF-8 mode\n");
for (;;)
{
ssize_t n;
n = u8_istream_read (is, buffer, outbufsize);
if (n > 0)
fwrite (buffer, 1, n, stdout);
else if (n < 0)
error (1, errno, "u8_istream_read failed");
else
break;
}
free (buffer);
if (u8_istream_is_auto (is))
printf ("Auto mode\n");
else if (u8_istream_is_utf8 (is))
printf ("UTF-8 mode\n");
if (!strcmp(filename, "-"))
u8_istream_free (is);
else
{
if (u8_istream_close (is) != 0)
error (1, errno, "u8_istream_close failed");
}
}
int
main (int argc, char *argv[])
{
set_program_name (argv[0]);
i18n_init ();
if (argc < 2)
error (1, 0, "missing command name; use `%s help' for help", program_name);
else if (!strcmp(argv[1], "help") || !strcmp(argv[1], "--help"))
usage ();
else if (!strcmp(argv[1], "buffer-size"))
printf ("%d\n", U8_ISTREAM_BUFFER_SIZE);
else if (!strcmp(argv[1], "read"))
cmd_read (argc, argv);
else
error (1, 0, "unknown command `%s'; use `%s help' for help",
argv[1], program_name);
return 0;
}
pspp-0.8.5/tests/libpspp/hmapx.at 0000644 0001750 0001750 00000002433 12470242646 013716 0000000 0000000 AT_BANNER([Hash map of pointers (hmapx) library])
m4_define([CHECK_HMAPX],
[AT_SETUP([hmapx -- $1])
AT_CHECK([hmapx-test $1])
AT_CLEANUP])
CHECK_HMAPX([insert-any-remove-any-random-hash])
CHECK_HMAPX([insert-any-remove-any-identity-hash])
CHECK_HMAPX([insert-any-remove-any-constant-hash])
CHECK_HMAPX([insert-any-remove-same-random-hash])
CHECK_HMAPX([insert-any-remove-same-identity-hash])
CHECK_HMAPX([insert-any-remove-same-constant-hash])
CHECK_HMAPX([insert-any-remove-reverse-random-hash])
CHECK_HMAPX([insert-any-remove-reverse-identity-hash])
CHECK_HMAPX([insert-any-remove-reverse-constant-hash])
CHECK_HMAPX([random-sequence-random-hash])
CHECK_HMAPX([random-sequence-identity-hash])
CHECK_HMAPX([random-sequence-constant-hash])
CHECK_HMAPX([insert-ordered-random-hash])
CHECK_HMAPX([insert-ordered-identity-hash])
CHECK_HMAPX([insert-ordered-constant-hash])
CHECK_HMAPX([moved-random-hash])
CHECK_HMAPX([moved-identity-hash])
CHECK_HMAPX([moved-constant-hash])
CHECK_HMAPX([changed-random-hash])
CHECK_HMAPX([changed-identity-hash])
CHECK_HMAPX([changed-constant-hash])
CHECK_HMAPX([change-random-hash])
CHECK_HMAPX([change-identity-hash])
CHECK_HMAPX([change-constant-hash])
CHECK_HMAPX([swap-random-hash])
CHECK_HMAPX([clear])
CHECK_HMAPX([destroy-null])
CHECK_HMAPX([shrink-empty])
pspp-0.8.5/tests/libpspp/zip.at 0000644 0001750 0001750 00000001346 12470243701 013376 0000000 0000000 AT_BANNER([zip])
AT_SETUP([Basic zip - unzip test])
AT_KEYWORDS([compression])
AT_CHECK([dnl
here=`pwd`
dir1=$here/original
dir2=$here/recovered
mkdir -p $dir1
# Generate files of differing sizes with random data in them
names=""
s=1;
while test $s -le 8192 ; do
name=$dir1/$s
dd if=/dev/urandom of=$name count=1 bs=$s 2> /dev/null
s=$(($s * 2));
bn=`basename $name`;
names="$names $bn";
done
(cd $dir1 && $abs_top_builddir/tests/libpspp/zip-test w foo.zip $names)
mkdir -p $dir2
cp $dir1/foo.zip $dir2
cd $dir2
$abs_top_builddir/tests/libpspp/zip-test r foo.zip $names
# Compare the files to their originals
for f in $names; do
diff $dir1/$f $dir2/$f;
if test $? -ne 0 ; then exit 1; fi;
done
exit 0
])
AT_CLEANUP
pspp-0.8.5/tests/libpspp/i18n.at 0000644 0001750 0001750 00000011147 12523704223 013353 0000000 0000000 AT_BANNER([i18n recoding])
# CHECK_I18N_RECODE([TITLE], [FROM-CODING], [TO-CODING],
# [FROM-TEXT], [TO-TEXT])
#
# Converts FROM-TEXT from FROM-CODING to TO-CODING and checks that the result
# is TO-TEXT. The "printf" program is applied to both FROM-TEXT and TO-TEXT to
# allow for backslash-escapes. (Hex escapes are not portable; use octal
# escapes instead.)
m4_define([CHECK_I18N_RECODE],
[AT_SETUP([convert $1])
AT_KEYWORDS([i18n])
dnl Skip the test if this host doesn't know the source and target encodings.
AT_CHECK([i18n-test supports_encodings '$2' '$3'])
AT_CHECK_UNQUOTED([i18n-test recode '$2' '$3' `printf '$4'`], [0], [`printf '$5'`
])
AT_CLEANUP])
CHECK_I18N_RECODE([reflexively], [ASCII], [ASCII], [abc], [abc])
CHECK_I18N_RECODE([without any change], [ASCII], [UTF-8], [abc], [abc])
CHECK_I18N_RECODE([from ISO-8859-1 to UTF-8], [ISO-8859-1], [UTF-8],
[\242], [\302\242])
CHECK_I18N_RECODE([from UTF-8 to ISO-8859-1], [UTF-8], [ISO-8859-1],
[\302\242], [\242])
# 0xc0 == 0300 is invalid in UTF-8
CHECK_I18N_RECODE([invalid UTF-8 to ISO-8859-1], [UTF-8], [ISO-8859-1],
[xy\300z], [xy?z])
# 0xc2 == 0302 is the first byte of a 2-byte UTF-8 sequence
CHECK_I18N_RECODE([truncated UTF-8 to ISO-8559-1], [UTF-8], [ISO-8859-1],
[xy\302], [xy?])
# Checks for a bug that caused the last character to be dropped in conversions
# from encodings that have combining diacritics (e.g. windows-1258).
CHECK_I18N_RECODE([dropped final character in windows-1258], [windows-1258],
[UTF-8], [aeiou], [aeiou])
dnl The input to this test is 7 bytes long and the expected output is 9 bytes.
dnl So it should exercise the E2BIG case
CHECK_I18N_RECODE([from ISO-8859-1 to UTF-8 with overflow],
[ISO-8859-1], [UTF-8],
[Tsch\374\337!], [Tsch\303\274\303\237!])
AT_SETUP([convert unknown encoding])
AT_KEYWORDS([i18n])
AT_CHECK([i18n-test recode nonexistent1 nonexistent2 asdf], [0], [asdf
],
[Warning: cannot create a converter for `nonexistent1' to `nonexistent2': Invalid argument
])
AT_CLEANUP
AT_BANNER([i18n concatenation])
# CHECK_I18N_CONCAT([HEAD], [TAIL], [ENCODING], [MAX-LEN], [ANSWER])
#
# Concatenates HEAD and TAIL, omitting as many characters from HEAD as needed
# to make the result come out to no more than MAX-LEN bytes if it was expressed
# in ENCODING, and checks that the answer matches ANSWER. HEAD, TAIL, and
# ANSWER are all in UTF-8. The "printf" program is applied to HEAD, TAIL, and
# ANSWER to allow for backslash-escapes. (Hex escapes are not portable; use
# octal escapes instead.)
m4_define([CHECK_I18N_CONCAT],
[AT_SETUP([m4_if([$2], [], [truncate "$1" to $4 bytes in $3],
[truncate "$1" + "$2" to $4 bytes in $3])])
AT_KEYWORDS([i18n])
dnl Skip the test if this host doesn't know the encoding.
AT_CHECK([i18n-test supports_encodings '$3'])
AT_CHECK_UNQUOTED(
[i18n-test concat "`printf '$1'`" "`printf '$2'`" '$3' '$4'], [0],
[`printf '$5'`
])
AT_CLEANUP])
CHECK_I18N_CONCAT([abc], [], [UTF-8], [6], [abc])
CHECK_I18N_CONCAT([], [xyz], [UTF-8], [6], [xyz])
CHECK_I18N_CONCAT([], [], [UTF-8], [6], [])
CHECK_I18N_CONCAT([abcdefghij], [], [UTF-8], [6], [abcdef])
CHECK_I18N_CONCAT([], [tuvwxyz], [UTF-8], [6], [tuvwxyz])
CHECK_I18N_CONCAT([abc], [xyz], [UTF-8], [6], [abcxyz])
CHECK_I18N_CONCAT([abcd], [xyz], [UTF-8], [6], [abcxyz])
CHECK_I18N_CONCAT([abc], [uvwxyz], [UTF-8], [6], [uvwxyz])
# x in a box ( x⃞ ) is U+0078, U+20DE, 4 bytes in UTF-8, and one grapheme
# cluster.
CHECK_I18N_CONCAT([x\342\203\236], [y], [UTF-8], [0], [y])
CHECK_I18N_CONCAT([x\342\203\236], [y], [UTF-8], [1], [y])
CHECK_I18N_CONCAT([x\342\203\236], [y], [UTF-8], [2], [y])
CHECK_I18N_CONCAT([x\342\203\236], [y], [UTF-8], [3], [y])
CHECK_I18N_CONCAT([x\342\203\236], [y], [UTF-8], [4], [y])
CHECK_I18N_CONCAT([x\342\203\236], [y], [UTF-8], [5], [x\342\203\236y])
# éèä is only 3 bytes in ISO-8859-1.
CHECK_I18N_CONCAT([\303\251\303\250\303\244], [xyz], [ISO-8859-1], [0], [xyz])
CHECK_I18N_CONCAT([\303\251\303\250\303\244], [xyz], [ISO-8859-1], [1], [xyz])
CHECK_I18N_CONCAT([\303\251\303\250\303\244], [xyz], [ISO-8859-1], [2], [xyz])
CHECK_I18N_CONCAT([\303\251\303\250\303\244], [xyz], [ISO-8859-1], [3], [xyz])
CHECK_I18N_CONCAT([\303\251\303\250\303\244], [xyz], [ISO-8859-1], [4],
[\303\251xyz])
CHECK_I18N_CONCAT([\303\251\303\250\303\244], [xyz], [ISO-8859-1], [5],
[\303\251\303\250xyz])
CHECK_I18N_CONCAT([\303\251\303\250\303\244], [xyz], [ISO-8859-1], [6],
[\303\251\303\250\303\244xyz])
pspp-0.8.5/tests/libpspp/stringi-map.at 0000644 0001750 0001750 00000001301 12470242646 015024 0000000 0000000 AT_BANNER([case-insensitive string map library])
m4_define([CHECK_STRINGI_MAP],
[AT_SETUP([case-insensitive string map -- $1])
AT_KEYWORDS([stringi-map])
AT_CHECK([stringi-map-test $1])
AT_CLEANUP])
CHECK_STRINGI_MAP([insert-any-remove-any])
CHECK_STRINGI_MAP([insert-any-remove-same])
CHECK_STRINGI_MAP([insert-any-remove-reverse])
CHECK_STRINGI_MAP([random-sequence])
CHECK_STRINGI_MAP([replace])
CHECK_STRINGI_MAP([insert-ordered])
CHECK_STRINGI_MAP([clear])
CHECK_STRINGI_MAP([clone])
CHECK_STRINGI_MAP([swap])
CHECK_STRINGI_MAP([node-swap-value])
CHECK_STRINGI_MAP([insert-map])
CHECK_STRINGI_MAP([replace-map])
CHECK_STRINGI_MAP([get-keys-and-values])
CHECK_STRINGI_MAP([destroy-null])
pspp-0.8.5/tests/libpspp/stringi-set.at 0000644 0001750 0001750 00000001231 12470242646 015044 0000000 0000000 AT_BANNER([case-insensitive string set library])
m4_define([CHECK_STRINGI_SET],
[AT_SETUP([case-insensitive string set -- $1])
AT_KEYWORDS([stringi-set])
AT_CHECK([stringi-set-test $1])
AT_CLEANUP])
CHECK_STRINGI_SET([insert-any-remove-any])
CHECK_STRINGI_SET([insert-any-remove-same])
CHECK_STRINGI_SET([insert-any-remove-reverse])
CHECK_STRINGI_SET([random-sequence])
CHECK_STRINGI_SET([insert-ordered])
CHECK_STRINGI_SET([union])
CHECK_STRINGI_SET([union-and-intersection])
CHECK_STRINGI_SET([intersect])
CHECK_STRINGI_SET([subtract])
CHECK_STRINGI_SET([swap])
CHECK_STRINGI_SET([clear])
CHECK_STRINGI_SET([clone])
CHECK_STRINGI_SET([destroy-null])
pspp-0.8.5/tests/libpspp/range-map.at 0000644 0001750 0001750 00000000354 12470242646 014450 0000000 0000000 AT_BANNER([range map library])
m4_define([CHECK_RANGE_MAP],
[AT_SETUP([range-map -- $1])
AT_CHECK([range-map-test $1])
AT_CLEANUP])
CHECK_RANGE_MAP([insert])
CHECK_RANGE_MAP([delete-contiguous])
CHECK_RANGE_MAP([delete-gaps])
pspp-0.8.5/tests/libpspp/line-reader-test.c 0000644 0001750 0001750 00000006661 12470243701 015563 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2010, 2011 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
#include
#include "libpspp/line-reader.h"
#include
#include
#include
#include
#include
#include
#include "libpspp/i18n.h"
#include "libpspp/str.h"
#include "gl/error.h"
#include "gl/progname.h"
#include "gl/xalloc.h"
static void
usage (void)
{
printf ("usage: %s COMMAND [ARG]...\n"
"The available commands are:\n"
" help\n"
" print this usage message\n"
" buffer-size\n"
" print the buffer size, in bytes, on stdout\n"
" read FILE ENCODING\n"
" read FILE encoded in ENCODING and print it in UTF-8\n",
program_name);
exit (0);
}
static void
cmd_read (int argc, char *argv[])
{
struct line_reader *r;
const char *filename;
struct string line;
char *encoding;
if (argc != 4)
error (1, 0, "bad syntax for `%s' command; use `%s help' for help",
argv[1], program_name);
filename = argv[2];
r = (!strcmp(filename, "-")
? line_reader_for_fd (argv[3], STDIN_FILENO)
: line_reader_for_file (argv[3], filename, O_RDONLY));
if (r == NULL)
error (1, errno, "line_reader_open failed");
encoding = xstrdup (line_reader_get_encoding (r));
printf ("encoded in %s", encoding);
if (line_reader_is_auto (r))
printf (" (auto)");
printf ("\n");
ds_init_empty (&line);
while (line_reader_read (r, &line, SIZE_MAX))
{
const char *new_encoding;
char *utf8_line;
new_encoding = line_reader_get_encoding (r);
if (strcmp (encoding, new_encoding))
{
free (encoding);
encoding = xstrdup (new_encoding);
printf ("encoded in %s", encoding);
if (line_reader_is_auto (r))
printf (" (auto)");
printf ("\n");
}
utf8_line = recode_string ("UTF-8", encoding,
ds_data (&line), ds_length (&line));
printf ("\"%s\"\n", utf8_line);
free (utf8_line);
ds_clear (&line);
}
if (!strcmp(filename, "-"))
line_reader_free (r);
else
{
if (line_reader_close (r) != 0)
error (1, errno, "line_reader_close failed");
}
}
int
main (int argc, char *argv[])
{
set_program_name (argv[0]);
i18n_init ();
if (argc < 2)
error (1, 0, "missing command name; use `%s help' for help", program_name);
else if (!strcmp(argv[1], "help") || !strcmp(argv[1], "--help"))
usage ();
else if (!strcmp(argv[1], "buffer-size"))
printf ("%d\n", LINE_READER_BUFFER_SIZE);
else if (!strcmp(argv[1], "read"))
cmd_read (argc, argv);
else
error (1, 0, "unknown command `%s'; use `%s help' for help",
argv[1], program_name);
return 0;
}
pspp-0.8.5/tests/libpspp/stringi-set-test.c 0000644 0001750 0001750 00000044367 12523704223 015651 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2007, 2008, 2009, 2010, 2012, 2014 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
/* This is a test program for the stringi_set_* routines defined in
stringi-set.c. This test program aims to be as comprehensive as possible.
"gcov -a -b" should report almost complete coverage of lines, blocks and
branches in stringi-set.c, except that one branch caused by hash collision
is not exercised because our hash function has so few collisions. "valgrind
--leak-check=yes --show-reachable=yes" should give a clean report. */
#include
#include "libpspp/stringi-set.h"
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include "libpspp/compiler.h"
#include "libpspp/i18n.h"
#include "libpspp/str.h"
/* Exit with a failure code.
(Place a breakpoint on this function while debugging.) */
static void
check_die (void)
{
exit (EXIT_FAILURE);
}
/* If OK is not true, prints a message about failure on the
current source file and the given LINE and terminates. */
static void
check_func (bool ok, int line)
{
if (!ok)
{
fprintf (stderr, "%s:%d: check failed\n", __FILE__, line);
check_die ();
}
}
/* Verifies that EXPR evaluates to true.
If not, prints a message citing the calling line number and
terminates. */
#define check(EXPR) check_func ((EXPR), __LINE__)
/* Prints a message about memory exhaustion and exits with a
failure code. */
static void
xalloc_die (void)
{
printf ("virtual memory exhausted\n");
exit (EXIT_FAILURE);
}
static void *xmalloc (size_t n) MALLOC_LIKE;
static void *xnmalloc (size_t n, size_t m) MALLOC_LIKE;
static void *xmemdup (const void *p, size_t n) MALLOC_LIKE;
/* Allocates and returns N bytes of memory. */
static void *
xmalloc (size_t n)
{
if (n != 0)
{
void *p = malloc (n);
if (p == NULL)
xalloc_die ();
return p;
}
else
return NULL;
}
static void *
xmemdup (const void *p, size_t n)
{
void *q = xmalloc (n);
memcpy (q, p, n);
return q;
}
/* Clone STRING. */
static char *
xstrdup (const char *string)
{
return xmemdup (string, strlen (string) + 1);
}
/* Allocates and returns N * M bytes of memory. */
static void *
xnmalloc (size_t n, size_t m)
{
if ((size_t) -1 / m <= n)
xalloc_die ();
return xmalloc (n * m);
}
/* Support routines. */
enum { MAX_VALUE = 1024 };
static char *string_table[MAX_VALUE];
static const char *
make_string (int value)
{
char **s;
assert (value >= 0 && value < MAX_VALUE);
s = &string_table[value];
if (*s == NULL)
{
*s = xmalloc (16);
str_format_26adic (value + 1, true, *s, 16);
}
return *s;
}
static void
free_strings (void)
{
int i;
for (i = 0; i < MAX_VALUE; i++)
free (string_table[i]);
}
/* Swaps *A and *B. */
static void
swap (int *a, int *b)
{
int t = *a;
*a = *b;
*b = t;
}
/* Reverses the order of the CNT integers starting at VALUES. */
static void
reverse (int *values, size_t cnt)
{
size_t i = 0;
size_t j = cnt;
while (j > i)
swap (&values[i++], &values[--j]);
}
/* Arranges the CNT elements in VALUES into the lexicographically
next greater permutation. Returns true if successful.
If VALUES is already the lexicographically greatest
permutation of its elements (i.e. ordered from greatest to
smallest), arranges them into the lexicographically least
permutation (i.e. ordered from smallest to largest) and
returns false. */
static bool
next_permutation (int *values, size_t cnt)
{
if (cnt > 0)
{
size_t i = cnt - 1;
while (i != 0)
{
i--;
if (values[i] < values[i + 1])
{
size_t j;
for (j = cnt - 1; values[i] >= values[j]; j--)
continue;
swap (values + i, values + j);
reverse (values + (i + 1), cnt - (i + 1));
return true;
}
}
reverse (values, cnt);
}
return false;
}
/* Returns N!. */
static unsigned int
factorial (unsigned int n)
{
unsigned int value = 1;
while (n > 1)
value *= n--;
return value;
}
/* Randomly shuffles the CNT elements in ARRAY, each of which is
SIZE bytes in size. */
static void
random_shuffle (void *array_, size_t cnt, size_t size)
{
char *array = array_;
char *tmp = xmalloc (size);
size_t i;
for (i = 0; i < cnt; i++)
{
size_t j = rand () % (cnt - i) + i;
if (i != j)
{
memcpy (tmp, array + j * size, size);
memcpy (array + j * size, array + i * size, size);
memcpy (array + i * size, tmp, size);
}
}
free (tmp);
}
/* Checks that SET contains STRING. */
static void
check_set_contains (struct stringi_set *set, const char *string)
{
struct stringi_set_node *node;
check (stringi_set_contains (set, string));
check (!stringi_set_insert (set, string));
check (!stringi_set_insert_nocopy (set, xstrdup (string)));
node = stringi_set_find_node (set, string);
check (node != NULL);
check (!utf8_strcasecmp (string, stringi_set_node_get_string (node)));
}
/* Checks that SET contains the CNT strings in DATA, that its structure is
correct, and that certain operations on SET produce the expected results. */
static void
check_stringi_set (struct stringi_set *set, const int data[], size_t cnt)
{
size_t i;
check (stringi_set_is_empty (set) == (cnt == 0));
check (stringi_set_count (set) == cnt);
for (i = 0; i < cnt; i++)
{
const char *s;
char copy[16];
char *p;
s = make_string (data[i]);
check_set_contains (set, s);
strcpy (copy, s);
for (p = copy; *p != '\0'; p++)
{
assert (isupper (*p));
*p = tolower (*p);
check_set_contains (set, copy);
}
}
check (!stringi_set_contains (set, "xxx"));
check (stringi_set_find_node (set, "") == NULL);
if (cnt == 0)
{
check (stringi_set_first (set) == NULL);
free (stringi_set_get_array (set));
}
else
{
const struct stringi_set_node *node;
char **array;
int *data_copy;
int left;
array = stringi_set_get_array (set);
data_copy = xmemdup (data, cnt * sizeof *data);
left = cnt;
for (node = stringi_set_first (set), i = 0; i < cnt;
node = stringi_set_next (set, node), i++)
{
const char *s = stringi_set_node_get_string (node);
size_t j;
check (s == array[i]);
for (j = 0; j < left; j++)
if (!utf8_strcasecmp (s, make_string (data_copy[j])))
{
data_copy[j] = data_copy[--left];
goto next;
}
check_die ();
next: ;
}
check (node == NULL);
free (data_copy);
free (array);
array = stringi_set_get_sorted_array (set);
for (i = 0; i < cnt; i++)
{
if (i > 0)
check (utf8_strcasecmp (array[i - 1], array[i]) < 0);
check (stringi_set_contains (set, array[i]));
}
free (array);
}
}
/* Inserts the CNT strings from 0 to CNT - 1 (inclusive) into a set in the
order specified by INSERTIONS, then deletes them in the order specified by
DELETIONS, checking the set's contents for correctness after each
operation. */
static void
test_insert_delete (const int insertions[],
const int deletions[],
size_t cnt)
{
struct stringi_set set;
size_t i;
stringi_set_init (&set);
check_stringi_set (&set, NULL, 0);
for (i = 0; i < cnt; i++)
{
check (stringi_set_insert (&set, make_string (insertions[i])));
check_stringi_set (&set, insertions, i + 1);
}
for (i = 0; i < cnt; i++)
{
check (stringi_set_delete (&set, make_string (deletions[i])));
check_stringi_set (&set, deletions + i + 1, cnt - i - 1);
}
stringi_set_destroy (&set);
}
/* Inserts strings into a set in each possible order, then removes them in each
possible order, up to a specified maximum size. */
static void
test_insert_any_remove_any (void)
{
const int max_elems = 5;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *insertions, *deletions;
unsigned int ins_perm_cnt;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i;
for (ins_perm_cnt = 0;
ins_perm_cnt == 0 || next_permutation (insertions, cnt);
ins_perm_cnt++)
{
unsigned int del_perm_cnt;
int i;
for (i = 0; i < cnt; i++)
deletions[i] = i;
for (del_perm_cnt = 0;
del_perm_cnt == 0 || next_permutation (deletions, cnt);
del_perm_cnt++)
test_insert_delete (insertions, deletions, cnt);
check (del_perm_cnt == factorial (cnt));
}
check (ins_perm_cnt == factorial (cnt));
free (insertions);
free (deletions);
}
}
/* Inserts strings into a set in each possible order, then removes them in the
same order, up to a specified maximum size. */
static void
test_insert_any_remove_same (void)
{
const int max_elems = 7;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *values;
unsigned int permutation_cnt;
int i;
values = xnmalloc (cnt, sizeof *values);
for (i = 0; i < cnt; i++)
values[i] = i;
for (permutation_cnt = 0;
permutation_cnt == 0 || next_permutation (values, cnt);
permutation_cnt++)
test_insert_delete (values, values, cnt);
check (permutation_cnt == factorial (cnt));
free (values);
}
}
/* Inserts strings into a set in each possible order, then
removes them in reverse order, up to a specified maximum
size. */
static void
test_insert_any_remove_reverse (void)
{
const int max_elems = 7;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *insertions, *deletions;
unsigned int permutation_cnt;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i;
for (permutation_cnt = 0;
permutation_cnt == 0 || next_permutation (insertions, cnt);
permutation_cnt++)
{
memcpy (deletions, insertions, sizeof *insertions * cnt);
reverse (deletions, cnt);
test_insert_delete (insertions, deletions, cnt);
}
check (permutation_cnt == factorial (cnt));
free (insertions);
free (deletions);
}
}
/* Inserts and removes strings in a set, in random order. */
static void
test_random_sequence (void)
{
const int max_elems = 64;
const int max_trials = 8;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt += 2)
{
int *insertions, *deletions;
int trial;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i;
for (i = 0; i < cnt; i++)
deletions[i] = i;
for (trial = 0; trial < max_trials; trial++)
{
random_shuffle (insertions, cnt, sizeof *insertions);
random_shuffle (deletions, cnt, sizeof *deletions);
test_insert_delete (insertions, deletions, cnt);
}
free (insertions);
free (deletions);
}
}
/* Inserts strings into a set in ascending order, then delete in ascending
order. */
static void
test_insert_ordered (void)
{
const int max_elems = 64;
int *values;
struct stringi_set set;
int i;
stringi_set_init (&set);
values = xnmalloc (max_elems, sizeof *values);
for (i = 0; i < max_elems; i++)
{
values[i] = i;
stringi_set_insert_nocopy (&set, xstrdup (make_string (i)));
check_stringi_set (&set, values, i + 1);
}
for (i = 0; i < max_elems; i++)
{
stringi_set_delete (&set, make_string (i));
check_stringi_set (&set, values + i + 1, max_elems - i - 1);
}
stringi_set_destroy (&set);
free (values);
}
static void
test_boolean_ops (void (*function)(struct stringi_set *a, struct stringi_set *b,
unsigned int *a_pat, unsigned int *b_pat))
{
enum { MAX_STRINGS = 7 };
unsigned int a_pat, b_pat;
for (a_pat = 0; a_pat < (1u << MAX_STRINGS); a_pat++)
for (b_pat = 0; b_pat < (1u << MAX_STRINGS); b_pat++)
{
unsigned int new_a_pat = a_pat;
unsigned int new_b_pat = b_pat;
struct stringi_set a, b;
int a_strings[MAX_STRINGS], b_strings[MAX_STRINGS];
size_t i, n_a, n_b;
stringi_set_init (&a);
stringi_set_init (&b);
for (i = 0; i < MAX_STRINGS; i++)
{
if (a_pat & (1u << i))
stringi_set_insert (&a, make_string (i));
if (b_pat & (1u << i))
stringi_set_insert (&b, make_string (i));
}
function (&a, &b, &new_a_pat, &new_b_pat);
n_a = n_b = 0;
for (i = 0; i < MAX_STRINGS; i++)
{
if (new_a_pat & (1u << i))
a_strings[n_a++] = i;
if (new_b_pat & (1u << i))
b_strings[n_b++] = i;
}
check_stringi_set (&a, a_strings, n_a);
check_stringi_set (&b, b_strings, n_b);
stringi_set_destroy (&a);
stringi_set_destroy (&b);
}
}
static void
union_cb (struct stringi_set *a, struct stringi_set *b,
unsigned int *a_pat, unsigned int *b_pat)
{
stringi_set_union (a, b);
*a_pat |= *b_pat;
}
static void
test_union (void)
{
test_boolean_ops (union_cb);
}
static void
union_and_intersection_cb (struct stringi_set *a, struct stringi_set *b,
unsigned int *a_pat, unsigned int *b_pat)
{
unsigned int orig_a_pat = *a_pat;
unsigned int orig_b_pat = *b_pat;
stringi_set_union_and_intersection (a, b);
*a_pat = orig_a_pat | orig_b_pat;
*b_pat = orig_a_pat & orig_b_pat;
}
static void
test_union_and_intersection (void)
{
test_boolean_ops (union_and_intersection_cb);
}
static void
intersect_cb (struct stringi_set *a, struct stringi_set *b,
unsigned int *a_pat, unsigned int *b_pat)
{
stringi_set_intersect (a, b);
*a_pat &= *b_pat;
}
static void
test_intersect (void)
{
test_boolean_ops (intersect_cb);
}
static void
subtract_cb (struct stringi_set *a, struct stringi_set *b,
unsigned int *a_pat, unsigned int *b_pat)
{
stringi_set_subtract (a, b);
*a_pat &= ~*b_pat;
}
static void
test_subtract (void)
{
test_boolean_ops (subtract_cb);
}
static void
swap_cb (struct stringi_set *a, struct stringi_set *b,
unsigned int *a_pat, unsigned int *b_pat)
{
unsigned int tmp;
stringi_set_swap (a, b);
tmp = *a_pat;
*a_pat = *b_pat;
*b_pat = tmp;
}
static void
test_swap (void)
{
test_boolean_ops (swap_cb);
}
static void
clear_cb (struct stringi_set *a, struct stringi_set *b UNUSED,
unsigned int *a_pat, unsigned int *b_pat UNUSED)
{
stringi_set_clear (a);
*a_pat = 0;
}
static void
test_clear (void)
{
test_boolean_ops (clear_cb);
}
static void
clone_cb (struct stringi_set *a, struct stringi_set *b,
unsigned int *a_pat, unsigned int *b_pat)
{
stringi_set_destroy (a);
stringi_set_clone (a, b);
*a_pat = *b_pat;
}
static void
test_clone (void)
{
test_boolean_ops (clone_cb);
}
static void
test_destroy_null (void)
{
stringi_set_destroy (NULL);
}
/* Main program. */
struct test
{
const char *name;
const char *description;
void (*function) (void);
};
static const struct test tests[] =
{
{
"insert-any-remove-any",
"insert any order, delete any order",
test_insert_any_remove_any
},
{
"insert-any-remove-same",
"insert any order, delete same order",
test_insert_any_remove_same
},
{
"insert-any-remove-reverse",
"insert any order, delete reverse order",
test_insert_any_remove_reverse
},
{
"random-sequence",
"insert and delete in random sequence",
test_random_sequence
},
{
"insert-ordered",
"insert in ascending order",
test_insert_ordered
},
{
"union",
"union",
test_union
},
{
"union-and-intersection",
"union and intersection",
test_union_and_intersection
},
{
"intersect",
"intersect",
test_intersect
},
{
"subtract",
"subtract",
test_subtract
},
{
"swap",
"swap",
test_swap
},
{
"clear",
"clear",
test_clear
},
{
"clone",
"clone",
test_clone
},
{
"destroy-null",
"destroying null table",
test_destroy_null
},
};
enum { N_TESTS = sizeof tests / sizeof *tests };
int
main (int argc, char *argv[])
{
int i;
if (argc != 2)
{
fprintf (stderr, "exactly one argument required; use --help for help\n");
return EXIT_FAILURE;
}
else if (!strcmp (argv[1], "--help"))
{
printf ("%s: test case-insensitive string set library\n"
"usage: %s TEST-NAME\n"
"where TEST-NAME is one of the following:\n",
argv[0], argv[0]);
for (i = 0; i < N_TESTS; i++)
printf (" %s\n %s\n", tests[i].name, tests[i].description);
return 0;
}
else
{
for (i = 0; i < N_TESTS; i++)
if (!strcmp (argv[1], tests[i].name))
{
tests[i].function ();
free_strings ();
return 0;
}
fprintf (stderr, "unknown test %s; use --help for help\n", argv[1]);
return EXIT_FAILURE;
}
}
pspp-0.8.5/tests/libpspp/sparse-array.at 0000644 0001750 0001750 00000000710 12470242646 015206 0000000 0000000 AT_BANNER([sparse array library])
m4_define([CHECK_SPARSE_ARRAY],
[AT_SETUP([sparse array -- $1])
AT_KEYWORDS([sparse-array])
AT_CHECK([sparse-array-test $1])
AT_CLEANUP])
CHECK_SPARSE_ARRAY([random-insert-delete])
AT_SETUP([sparse array -- insert and delete with strides])
AT_KEYWORDS([sparse-array])
AT_CHECK([sparse-array-test insert-delete-strides], [0], [dnl
1
2
4
16
64
4096
262144
16777216
3
5
17
67
4099
262147
16777259
])
AT_CLEANUP
pspp-0.8.5/tests/libpspp/string-map.at 0000644 0001750 0001750 00000001216 12470242646 014660 0000000 0000000 AT_BANNER([string map library])
m4_define([CHECK_STRING_MAP],
[AT_SETUP([string map -- $1])
AT_KEYWORDS([string-map])
AT_CHECK([string-map-test $1])
AT_CLEANUP])
CHECK_STRING_MAP([insert-any-remove-any])
CHECK_STRING_MAP([insert-any-remove-same])
CHECK_STRING_MAP([insert-any-remove-reverse])
CHECK_STRING_MAP([random-sequence])
CHECK_STRING_MAP([replace])
CHECK_STRING_MAP([insert-ordered])
CHECK_STRING_MAP([clear])
CHECK_STRING_MAP([clone])
CHECK_STRING_MAP([swap])
CHECK_STRING_MAP([node-swap-value])
CHECK_STRING_MAP([insert-map])
CHECK_STRING_MAP([replace-map])
CHECK_STRING_MAP([get-keys-and-values])
CHECK_STRING_MAP([destroy-null])
pspp-0.8.5/tests/libpspp/bt-test.c 0000644 0001750 0001750 00000047110 12470242646 014002 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2007, 2010 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
/* This is a test program for the bt_* routines defined in bt.c.
This test program aims to be as comprehensive as possible.
"gcov -b" should report 100% coverage of lines and branches in
bt.c. "valgrind --leak-check=yes --show-reachable=yes" should
give a clean report. */
#ifdef HAVE_CONFIG_H
#include
#endif
#include
#include
#include
#include
#include
#include
#include
#include
#include
/* Exit with a failure code.
(Place a breakpoint on this function while debugging.) */
static void
check_die (void)
{
exit (EXIT_FAILURE);
}
/* If OK is not true, prints a message about failure on the
current source file and the given LINE and terminates. */
static void
check_func (bool ok, int line)
{
if (!ok)
{
fprintf (stderr, "%s:%d: check failed\n", __FILE__, line);
check_die ();
}
}
/* Verifies that EXPR evaluates to true.
If not, prints a message citing the calling line number and
terminates. */
#define check(EXPR) check_func ((EXPR), __LINE__)
/* Prints a message about memory exhaustion and exits with a
failure code. */
static void
xalloc_die (void)
{
printf ("virtual memory exhausted\n");
exit (EXIT_FAILURE);
}
/* Allocates and returns N bytes of memory. */
static void *
xmalloc (size_t n)
{
if (n != 0)
{
void *p = malloc (n);
if (p == NULL)
xalloc_die ();
return p;
}
else
return NULL;
}
static void *
xmemdup (const void *p, size_t n)
{
void *q = xmalloc (n);
memcpy (q, p, n);
return q;
}
/* Allocates and returns N * M bytes of memory. */
static void *
xnmalloc (size_t n, size_t m)
{
if ((size_t) -1 / m <= n)
xalloc_die ();
return xmalloc (n * m);
}
/* Node type and support routines. */
/* Test data element. */
struct element
{
struct bt_node node; /* Embedded binary tree element. */
int data; /* Primary value. */
};
static int aux_data;
/* Returns the `struct element' that NODE is embedded within. */
static struct element *
bt_node_to_element (const struct bt_node *node)
{
return bt_data (node, struct element, node);
}
/* Compares the `x' values in A and B and returns a strcmp-type
return value. Verifies that AUX points to aux_data. */
static int
compare_elements (const struct bt_node *a_, const struct bt_node *b_,
const void *aux)
{
const struct element *a = bt_node_to_element (a_);
const struct element *b = bt_node_to_element (b_);
check (aux == &aux_data);
return a->data < b->data ? -1 : a->data > b->data;
}
/* Compares A and B and returns a strcmp-type return value. */
static int
compare_ints_noaux (const void *a_, const void *b_)
{
const int *a = a_;
const int *b = b_;
return *a < *b ? -1 : *a > *b;
}
/* Swaps *A and *B. */
static void
swap (int *a, int *b)
{
int t = *a;
*a = *b;
*b = t;
}
/* Reverses the order of the CNT integers starting at VALUES. */
static void
reverse (int *values, size_t cnt)
{
size_t i = 0;
size_t j = cnt;
while (j > i)
swap (&values[i++], &values[--j]);
}
/* Arranges the CNT elements in VALUES into the lexicographically
next greater permutation. Returns true if successful.
If VALUES is already the lexicographically greatest
permutation of its elements (i.e. ordered from greatest to
smallest), arranges them into the lexicographically least
permutation (i.e. ordered from smallest to largest) and
returns false. */
static bool
next_permutation (int *values, size_t cnt)
{
if (cnt > 0)
{
size_t i = cnt - 1;
while (i != 0)
{
i--;
if (values[i] < values[i + 1])
{
size_t j;
for (j = cnt - 1; values[i] >= values[j]; j--)
continue;
swap (values + i, values + j);
reverse (values + (i + 1), cnt - (i + 1));
return true;
}
}
reverse (values, cnt);
}
return false;
}
/* Returns N!. */
static unsigned int
factorial (unsigned int n)
{
unsigned int value = 1;
while (n > 1)
value *= n--;
return value;
}
/* Randomly shuffles the CNT elements in ARRAY, each of which is
SIZE bytes in size. */
static void
random_shuffle (void *array_, size_t cnt, size_t size)
{
char *array = array_;
char *tmp = xmalloc (size);
size_t i;
for (i = 0; i < cnt; i++)
{
size_t j = rand () % (cnt - i) + i;
if (i != j)
{
memcpy (tmp, array + j * size, size);
memcpy (array + j * size, array + i * size, size);
memcpy (array + i * size, tmp, size);
}
}
free (tmp);
}
/* Calculates floor(log(n)/log(sqrt(2))). */
static int
calculate_h_alpha (size_t n)
{
size_t thresholds[] =
{
0, 2, 2, 3, 4, 6, 8, 12, 16, 23, 32, 46, 64, 91, 128, 182, 256, 363,
512, 725, 1024, 1449, 2048, 2897, 4096, 5793, 8192, 11586, 16384,
23171, 32768, 46341, 65536, 92682, 131072, 185364, 262144, 370728,
524288, 741456, 1048576, 1482911, 2097152, 2965821, 4194304, 5931642,
8388608, 11863284, 16777216, 23726567, 33554432, 47453133, 67108864,
94906266, 134217728, 189812532, 268435456, 379625063, 536870912,
759250125, 1073741824, 1518500250, 2147483648, 3037000500,
};
size_t threshold_cnt = sizeof thresholds / sizeof *thresholds;
size_t i;
for (i = 0; i < threshold_cnt; i++)
if (thresholds[i] > n)
break;
return i - 1;
}
/* Returns the height of the tree rooted at NODE. */
static int
get_height (struct bt_node *node)
{
if (node == NULL)
return 0;
else
{
int left = get_height (node->down[0]);
int right = get_height (node->down[1]);
return 1 + (left > right ? left : right);
}
}
/* Checks that BT is loosely alpha-height balanced, that is, that
its height is no more than h_alpha(count) + 1, where
h_alpha(n) = floor(log(n)/log(1/alpha)). */
static void
check_balance (struct bt *bt)
{
/* In the notation of the Galperin and Rivest paper (and of
CLR), the height of a tree is the number of edges in the
longest path from the root to a leaf, so we have to subtract
1 from our measured height. */
int height = get_height (bt->root) - 1;
int max_height = calculate_h_alpha (bt_count (bt)) + 1;
check (height <= max_height);
}
/* Checks that BT contains the CNT ints in DATA, that its
structure is correct, and that certain operations on BT
produce the expected results. */
static void
check_bt (struct bt *bt, const int data[], size_t cnt)
{
struct element e;
size_t i;
int *order;
order = xmemdup (data, cnt * sizeof *data);
qsort (order, cnt, sizeof *order, compare_ints_noaux);
for (i = 0; i < cnt; i++)
{
struct bt_node *p;
e.data = data[i];
if (rand () % 2)
p = bt_find (bt, &e.node);
else
p = bt_insert (bt, &e.node);
check (p != NULL);
check (p != &e.node);
check (bt_node_to_element (p)->data == data[i]);
}
e.data = -1;
check (bt_find (bt, &e.node) == NULL);
check_balance (bt);
if (cnt == 0)
{
check (bt_first (bt) == NULL);
check (bt_last (bt) == NULL);
check (bt_next (bt, NULL) == NULL);
check (bt_prev (bt, NULL) == NULL);
}
else
{
struct bt_node *p;
for (p = bt_first (bt), i = 0; i < cnt; p = bt_next (bt, p), i++)
check (bt_node_to_element (p)->data == order[i]);
check (p == NULL);
for (p = bt_last (bt), i = 0; i < cnt; p = bt_prev (bt, p), i++)
check (bt_node_to_element (p)->data == order[cnt - i - 1]);
check (p == NULL);
}
free (order);
}
/* Inserts the CNT values from 0 to CNT - 1 (inclusive) into an
BT in the order specified by INSERTIONS, then deletes them in
the order specified by DELETIONS, checking the BT's contents
for correctness after each operation. */
static void
test_insert_delete (const int insertions[],
const int deletions[],
size_t cnt)
{
struct element *elements;
struct bt bt;
size_t i;
elements = xnmalloc (cnt, sizeof *elements);
for (i = 0; i < cnt; i++)
elements[i].data = i;
bt_init (&bt, compare_elements, &aux_data);
check_bt (&bt, NULL, 0);
for (i = 0; i < cnt; i++)
{
check (bt_insert (&bt, &elements[insertions[i]].node) == NULL);
check_bt (&bt, insertions, i + 1);
}
for (i = 0; i < cnt; i++)
{
bt_delete (&bt, &elements[deletions[i]].node);
check_bt (&bt, deletions + i + 1, cnt - i - 1);
}
free (elements);
}
/* Inserts values into an BT in each possible order, then
removes them in each possible order, up to a specified maximum
size. */
static void
test_insert_any_remove_any (void)
{
const int max_elems = 5;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *insertions, *deletions;
unsigned int ins_perm_cnt;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i;
for (ins_perm_cnt = 0;
ins_perm_cnt == 0 || next_permutation (insertions, cnt);
ins_perm_cnt++)
{
unsigned int del_perm_cnt;
int i;
for (i = 0; i < cnt; i++)
deletions[i] = i;
for (del_perm_cnt = 0;
del_perm_cnt == 0 || next_permutation (deletions, cnt);
del_perm_cnt++)
test_insert_delete (insertions, deletions, cnt);
check (del_perm_cnt == factorial (cnt));
}
check (ins_perm_cnt == factorial (cnt));
free (insertions);
free (deletions);
}
}
/* Inserts values into an BT in each possible order, then
removes them in the same order, up to a specified maximum
size. */
static void
test_insert_any_remove_same (void)
{
const int max_elems = 7;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *values;
unsigned int permutation_cnt;
int i;
values = xnmalloc (cnt, sizeof *values);
for (i = 0; i < cnt; i++)
values[i] = i;
for (permutation_cnt = 0;
permutation_cnt == 0 || next_permutation (values, cnt);
permutation_cnt++)
test_insert_delete (values, values, cnt);
check (permutation_cnt == factorial (cnt));
free (values);
}
}
/* Inserts values into an BT in each possible order, then
removes them in reverse order, up to a specified maximum
size. */
static void
test_insert_any_remove_reverse (void)
{
const int max_elems = 7;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *insertions, *deletions;
unsigned int permutation_cnt;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i;
for (permutation_cnt = 0;
permutation_cnt == 0 || next_permutation (insertions, cnt);
permutation_cnt++)
{
memcpy (deletions, insertions, sizeof *insertions * cnt);
reverse (deletions, cnt);
test_insert_delete (insertions, deletions, cnt);
}
check (permutation_cnt == factorial (cnt));
free (insertions);
free (deletions);
}
}
/* Inserts and removes values in an BT in random orders. */
static void
test_random_sequence (void)
{
const int max_elems = 128;
const int max_trials = 8;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt += 2)
{
int *insertions, *deletions;
int trial;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i;
for (i = 0; i < cnt; i++)
deletions[i] = i;
for (trial = 0; trial < max_trials; trial++)
{
random_shuffle (insertions, cnt, sizeof *insertions);
random_shuffle (deletions, cnt, sizeof *deletions);
test_insert_delete (insertions, deletions, cnt);
}
free (insertions);
free (deletions);
}
}
/* Inserts elements into an BT in ascending order. */
static void
test_insert_ordered (void)
{
const int max_elems = 1024;
struct element *elements;
int *values;
struct bt bt;
int i;
bt_init (&bt, compare_elements, &aux_data);
elements = xnmalloc (max_elems, sizeof *elements);
values = xnmalloc (max_elems, sizeof *values);
for (i = 0; i < max_elems; i++)
{
values[i] = elements[i].data = i;
check (bt_insert (&bt, &elements[i].node) == NULL);
check_bt (&bt, values, i + 1);
}
free (elements);
free (values);
}
/* Tests bt_find_ge and bt_find_le. */
static void
test_find_ge_le (void)
{
const int max_elems = 10;
struct element *elements;
int *values;
unsigned int inc_pat;
elements = xnmalloc (max_elems, sizeof *elements);
values = xnmalloc (max_elems, sizeof *values);
for (inc_pat = 0; inc_pat < (1u << max_elems); inc_pat++)
{
struct bt bt;
int elem_cnt = 0;
int i;
/* Insert the values in the pattern into BT. */
bt_init (&bt, compare_elements, &aux_data);
for (i = 0; i < max_elems; i++)
if (inc_pat & (1u << i))
{
values[elem_cnt] = elements[elem_cnt].data = i;
check (bt_insert (&bt, &elements[elem_cnt].node) == NULL);
elem_cnt++;
}
check_bt (&bt, values, elem_cnt);
/* Try find_ge and find_le for each possible element value. */
for (i = -1; i <= max_elems; i++)
{
struct element tmp;
struct bt_node *ge, *le;
int j;
ge = le = NULL;
for (j = 0; j < elem_cnt; j++)
{
if (ge == NULL && values[j] >= i)
ge = &elements[j].node;
if (values[j] <= i)
le = &elements[j].node;
}
tmp.data = i;
check (bt_find_ge (&bt, &tmp.node) == ge);
check (bt_find_le (&bt, &tmp.node) == le);
}
}
free (elements);
free (values);
}
/* Inserts elements into an BT, then moves the nodes around in
memory. */
static void
test_moved (void)
{
const int max_elems = 128;
struct element *e[2];
int cur;
int *values;
struct bt bt;
int i, j;
bt_init (&bt, compare_elements, &aux_data);
e[0] = xnmalloc (max_elems, sizeof *e[0]);
e[1] = xnmalloc (max_elems, sizeof *e[1]);
values = xnmalloc (max_elems, sizeof *values);
cur = 0;
for (i = 0; i < max_elems; i++)
{
values[i] = e[cur][i].data = i;
check (bt_insert (&bt, &e[cur][i].node) == NULL);
check_bt (&bt, values, i + 1);
for (j = 0; j <= i; j++)
{
e[!cur][j] = e[cur][j];
bt_moved (&bt, &e[!cur][j].node);
check_bt (&bt, values, i + 1);
}
cur = !cur;
}
free (e[0]);
free (e[1]);
free (values);
}
/* Inserts values into an BT, then changes their values. */
static void
test_changed (void)
{
const int max_elems = 6;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *values, *changed_values;
struct element *elements;
unsigned int permutation_cnt;
int i;
values = xnmalloc (cnt, sizeof *values);
changed_values = xnmalloc (cnt, sizeof *changed_values);
elements = xnmalloc (cnt, sizeof *elements);
for (i = 0; i < cnt; i++)
values[i] = i;
for (permutation_cnt = 0;
permutation_cnt == 0 || next_permutation (values, cnt);
permutation_cnt++)
{
for (i = 0; i < cnt; i++)
{
int j, k;
for (j = 0; j <= cnt; j++)
{
struct bt bt;
struct bt_node *changed_retval;
bt_init (&bt, compare_elements, &aux_data);
/* Add to BT in order. */
for (k = 0; k < cnt; k++)
{
int n = values[k];
elements[n].data = n;
check (bt_insert (&bt, &elements[n].node) == NULL);
}
check_bt (&bt, values, cnt);
/* Change value i to j. */
elements[i].data = j;
for (k = 0; k < cnt; k++)
changed_values[k] = k;
changed_retval = bt_changed (&bt, &elements[i].node);
if (i != j && j < cnt)
{
/* Will cause duplicate. */
check (changed_retval == &elements[j].node);
changed_values[i] = changed_values[cnt - 1];
check_bt (&bt, changed_values, cnt - 1);
}
else
{
/* Succeeds. */
check (changed_retval == NULL);
changed_values[i] = j;
check_bt (&bt, changed_values, cnt);
}
}
}
}
check (permutation_cnt == factorial (cnt));
free (values);
free (changed_values);
free (elements);
}
}
/* Main program. */
struct test
{
const char *name;
const char *description;
void (*function) (void);
};
static const struct test tests[] =
{
{
"insert-any-remove-any",
"insert any order, delete any order",
test_insert_any_remove_any
},
{
"insert-any-remove-same",
"insert any order, delete same order",
test_insert_any_remove_same
},
{
"insert-any-remove-reverse",
"insert any order, delete reverse order",
test_insert_any_remove_reverse
},
{
"random-sequence",
"insert and delete in random sequence",
test_random_sequence
},
{
"insert-ordered",
"insert in ascending order",
test_insert_ordered
},
{
"find-ge-le",
"find_ge and find_le",
test_find_ge_le
},
{
"moved",
"move elements around in memory",
test_moved
},
{
"changed",
"change key data in nodes",
test_changed
}
};
enum { N_TESTS = sizeof tests / sizeof *tests };
int
main (int argc, char *argv[])
{
int i;
if (argc != 2)
{
fprintf (stderr, "exactly one argument required; use --help for help\n");
return EXIT_FAILURE;
}
else if (!strcmp (argv[1], "--help"))
{
printf ("%s: test balanced tree\n"
"usage: %s TEST-NAME\n"
"where TEST-NAME is one of the following:\n",
argv[0], argv[0]);
for (i = 0; i < N_TESTS; i++)
printf (" %s\n %s\n", tests[i].name, tests[i].description);
return 0;
}
else
{
for (i = 0; i < N_TESTS; i++)
if (!strcmp (argv[1], tests[i].name))
{
tests[i].function ();
return 0;
}
fprintf (stderr, "unknown test %s; use --help for help\n", argv[1]);
return EXIT_FAILURE;
}
}
pspp-0.8.5/tests/libpspp/float-format.at 0000644 0001750 0001750 00000010610 12470242646 015170 0000000 0000000 AT_BANNER([floating point formats])
AT_SETUP([floating point format conversions])
AT_DATA([float-format.txt], [dnl
# Each of the tests below checks that conversion between
# floating-point formats works correctly. Comparisons that use ==
# require that conversion from any format on the line to any other
# format on the line work losslessly. Comparisons that use => only
# check that conversions work losslessly in the given direction.
# Key to format names:
# isl: IEEE single-precision, little endian
# isb: IEEE single-precision, big endian
# idl: IEEE double-precision, little endian
# idb: IEEE double-precision, big endian
# vf: VAX F
# vd: VAX D
# vg: VAX G
# zs: Z architecture short
# zl: Z architecture long
# x: hexadecimal digits
# IEEE special values.
0 == isb('00000000')
x('Infinity') == isb('7f800000')
x('-Infinity') == isb('ff800000')
x('NaN:') => isb('7f800001') # NaN requires nonzero fraction.
x('NaN:e000000000000000') == isb('7ff00000') == idb('7ffe000000000000')
x('NaN:5a5a5e0000000000') == isb('7fad2d2f') == idb('7ff5a5a5e0000000')
x('NaN:975612abcdef4000') == idb('7ff975612abcdef4')
x('-NaN:e000000000000000') == isb('fff00000') == idb('fffe000000000000')
x('-NaN:5a5a5e0000000000') == isb('ffad2d2f') == idb('fff5a5a5e0000000')
x('-NaN:975612abcdef4000') == idb('fff975612abcdef4')
# PSPP special values.
x('Missing') == isb('ff7fffff') == idb('ffefffffffffffff') == isl('ffff7fff') == idl('ffffffffffffefff') == vf('ffffffff') == vd('ffffffffffffffff') == vg('ffffffffffffffff') == zs('ffffffff') == zl('ffffffffffffffff')
x('Lowest') == isb('ff7ffffe') == idb('ffeffffffffffffe') == isl('feff7fff') == idl('feffffffffffefff') == vf('fffffeff') == vd('fffffeffffffffff') == vg('fffffeffffffffff') == zs('fffffffe') == zl('fffffffffffffffe')
x('Highest') == isb('7f7fffff') == idb('7fefffffffffffff') == isl('ffff7f7f') == idl('ffffffffffffef7f') == vf('ff7fffff') == vd('ffffffffff7fffff') == vg('ffffffffff7fffff') == zs('7fffffff') == zl('7fffffffffffffff')
# From Wikipedia.
0.15625 == isb('3e200000')
-118.625 == isb('c2ed4000')
# http://www.psc.edu/general/software/packages/ieee/ieee.html
x('NaN:0400000000000000') == isb('7f820000')
x('-NaN:2225540000000000') == isb('ff9112aa')
2 == isb('40000000')
6.5 == isb('40d00000')
-6.5 == isb('c0d00000')
x('.4p-124') == isb('00800000')
x('.2p-124') == isb('00400000')
# Using converter at http://babbage.cs.qc.edu/IEEE-754/Decimal.html
# plus Emacs 'calc' to convert decimal to hexadecimal
x('.7b74bc6a7ef9db23p8') => isb('42f6e979') # 123.456
x('.7b74bc6a7ef9db23p8') => idb('405edd2f1a9fbe77')
x('.817427d2d4642004p-12') => isb('39017428') # .0001234567
x('.817427d2d4642004p-12') => idb('3f202e84fa5a8c84')
x('.446c3b15f9926688p168') => isb('7f800000') # 1e50; overflow
x('.446c3b15f9926688p168') => idb('4a511b0ec57e649a')
# From multiple editions of the z/Architecture Principles of Operation
# manual.
1.0 == zs('41100000') == isb('3f800000')
0.5 == zs('40800000') == isb('3f000000')
x('.4p-4') == zs('3f400000') == isb('3c800000')
0 == zs('00000000') == isb('00000000')
zs('80000000') == isb('80000000')
-15 == zs('c1f00000') == isb('c1700000')
# x('.ffffffp252') == zs('7fffffff')
x('.3b4p8') == zs('423b4000')
x('.1p-256') == zs('00100000')
x('.4p-124') == zs('21400000') == isb('00800000')
x('.8p-148') == zs('1b800000') == isb('00000001')
# x('.ffffffp128') == zs('60ffffff') == isb('7f7fffff')
x('.1p-256') == zs('00100000')
x('.1p-256') => isb('00000000') # Underflow to zero.
x('.ffffffp248') == zs('7effffff')
x('.ffffffp248') => isb('7f800000') # Overflow to +Infinity.
x('.4p-1020') => zl('0000000000000000') # Underflow to zero.
x('.4p-1020') == idb('0010000000000000')
x('.4p-1072') => zl('0000000000000000') # Underflow to zero.
x('.4p-1072') => idb('0000000000000001')
x('.fffffffffffff8p1024') => zl('7fffffffffffffff') # Overflow to maxval.
x('.fffffffffffff8p1024') => idb('7fefffffffffffff')
x('.1p-256') == zl('0010000000000000') == idb('2fb0000000000000')
x('.ffffffffffffffp248') == zl('7effffffffffffff')
x('.ffffffffffffffp248') => idb('4f70000000000000') # Loses precision.
])
AT_CHECK(
[sed 's/#.*//
s/^[ ]*//
s/[ ]*$//
/^$/d
s/^\(..*\)$/DEBUG FLOAT FORMAT \1./' < float-format.txt > float-format.sps])
AT_CHECK([pspp --testing-mode -O format=csv float-format.sps])
AT_CLEANUP
pspp-0.8.5/tests/libpspp/stringi-map-test.c 0000644 0001750 0001750 00000061716 12523704223 015630 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2007, 2008, 2009, 2010, 2012, 2014 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
/* This is a test program for the stringi_map_* routines defined in
stringi-map.c. This test program aims to be as comprehensive as possible.
"gcov -a -b" should report almost complete coverage of lines, blocks and
branches in stringi-map.c, except that one branch caused by hash collision
is not exercised because our hash function has so few collisions. "valgrind
--leak-check=yes --show-reachable=yes" should give a clean report. */
#ifdef HAVE_CONFIG_H
#include
#endif
#include "libpspp/stringi-map.h"
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include "libpspp/hash-functions.h"
#include "libpspp/compiler.h"
#include "libpspp/i18n.h"
#include "libpspp/str.h"
#include "libpspp/string-set.h"
#include "libpspp/stringi-set.h"
/* Exit with a failure code.
(Place a breakpoint on this function while debugging.) */
static void
check_die (void)
{
exit (EXIT_FAILURE);
}
/* If OK is not true, prints a message about failure on the
current source file and the given LINE and terminates. */
static void
check_func (bool ok, int line)
{
if (!ok)
{
fprintf (stderr, "%s:%d: check failed\n", __FILE__, line);
check_die ();
}
}
/* Verifies that EXPR evaluates to true.
If not, prints a message citing the calling line number and
terminates. */
#define check(EXPR) check_func ((EXPR), __LINE__)
/* Prints a message about memory exhaustion and exits with a
failure code. */
static void
xalloc_die (void)
{
printf ("virtual memory exhausted\n");
exit (EXIT_FAILURE);
}
static void *xmalloc (size_t n) MALLOC_LIKE;
static void *xnmalloc (size_t n, size_t m) MALLOC_LIKE;
static void *xmemdup (const void *p, size_t n) MALLOC_LIKE;
/* Allocates and returns N bytes of memory. */
static void *
xmalloc (size_t n)
{
if (n != 0)
{
void *p = malloc (n);
if (p == NULL)
xalloc_die ();
return p;
}
else
return NULL;
}
static void *
xmemdup (const void *p, size_t n)
{
void *q = xmalloc (n);
memcpy (q, p, n);
return q;
}
/* Clone STRING. */
static char *
xstrdup (const char *string)
{
return xmemdup (string, strlen (string) + 1);
}
/* Allocates and returns N * M bytes of memory. */
static void *
xnmalloc (size_t n, size_t m)
{
if ((size_t) -1 / m <= n)
xalloc_die ();
return xmalloc (n * m);
}
/* Support routines. */
enum {
IDX_BITS = 10,
MAX_IDX = 1 << IDX_BITS,
KEY_MASK = (MAX_IDX - 1),
KEY_SHIFT = 0,
VALUE_MASK = (MAX_IDX - 1) << IDX_BITS,
VALUE_SHIFT = IDX_BITS
};
static char *string_table[MAX_IDX];
static const char *
get_string (int idx)
{
char **s;
assert (idx >= 0 && idx < MAX_IDX);
s = &string_table[idx];
if (*s == NULL)
{
*s = xmalloc (16);
str_format_26adic (idx + 1, true, *s, 16);
}
return *s;
}
static void
free_strings (void)
{
int i;
for (i = 0; i < MAX_IDX; i++)
free (string_table[i]);
}
static const char *
make_key (int value)
{
return get_string ((value & KEY_MASK) >> KEY_SHIFT);
}
static const char *
make_value (int value)
{
return get_string ((value & VALUE_MASK) >> VALUE_SHIFT);
}
static int
random_value (unsigned int seed, int basis)
{
return hash_int (seed, basis) & VALUE_MASK;
}
/* Swaps *A and *B. */
static void
swap (int *a, int *b)
{
int t = *a;
*a = *b;
*b = t;
}
/* Reverses the order of the CNT integers starting at VALUES. */
static void
reverse (int *values, size_t cnt)
{
size_t i = 0;
size_t j = cnt;
while (j > i)
swap (&values[i++], &values[--j]);
}
/* Arranges the CNT elements in VALUES into the lexicographically next greater
permutation. Returns true if successful. If VALUES is already the
lexicographically greatest permutation of its elements (i.e. ordered from
greatest to smallest), arranges them into the lexicographically least
permutation (i.e. ordered from smallest to largest) and returns false.
Comparisons among elements of VALUES consider only the bits in KEY_MASK. */
static bool
next_permutation (int *values, size_t cnt)
{
if (cnt > 0)
{
size_t i = cnt - 1;
while (i != 0)
{
i--;
if ((values[i] & KEY_MASK) < (values[i + 1] & KEY_MASK))
{
size_t j;
for (j = cnt - 1;
(values[i] & KEY_MASK) >= (values[j] & KEY_MASK);
j--)
continue;
swap (values + i, values + j);
reverse (values + (i + 1), cnt - (i + 1));
return true;
}
}
reverse (values, cnt);
}
return false;
}
/* Returns N!. */
static unsigned int
factorial (unsigned int n)
{
unsigned int value = 1;
while (n > 1)
value *= n--;
return value;
}
/* Randomly shuffles the CNT elements in ARRAY, each of which is
SIZE bytes in size. */
static void
random_shuffle (void *array_, size_t cnt, size_t size)
{
char *array = array_;
char *tmp = xmalloc (size);
size_t i;
for (i = 0; i < cnt; i++)
{
size_t j = rand () % (cnt - i) + i;
if (i != j)
{
memcpy (tmp, array + j * size, size);
memcpy (array + j * size, array + i * size, size);
memcpy (array + i * size, tmp, size);
}
}
free (tmp);
}
/* Checks that MAP has (KEY, VALUE) as a pair. */
static void
check_map_contains (struct stringi_map *map,
const char *key, const char *value)
{
struct stringi_map_node *node;
const char *found_value;
check (stringi_map_contains (map, key));
node = stringi_map_find_node (map, key);
check (node != NULL);
check (!utf8_strcasecmp (key, stringi_map_node_get_key (node)));
check (!strcmp (value, stringi_map_node_get_value (node)));
check (node == stringi_map_insert (map, key, "012"));
check (!strcmp (value, stringi_map_node_get_value (node)));
check (node == stringi_map_insert_nocopy (map, xstrdup (key),
xstrdup ("345")));
check (!strcmp (value, stringi_map_node_get_value (node)));
found_value = stringi_map_find (map, key);
check (found_value == stringi_map_node_get_value (node));
check (found_value != NULL);
check (!strcmp (found_value, value));
}
/* Checks that MAP contains the CNT strings in DATA, that its structure is
correct, and that certain operations on MAP produce the expected results. */
static void
check_stringi_map (struct stringi_map *map, const int data[], size_t cnt)
{
size_t i;
check (stringi_map_is_empty (map) == (cnt == 0));
check (stringi_map_count (map) == cnt);
for (i = 0; i < cnt; i++)
{
const char *key = make_key (data[i]);
const char *value = make_value (data[i]);
char copy[16];
char *p;
check_map_contains (map, key, value);
strcpy (copy, key);
for (p = copy; *p != '\0'; p++)
{
assert (isupper (*p));
*p = tolower (*p);
check_map_contains (map, copy, value);
}
}
check (!stringi_map_contains (map, "xxx"));
check (stringi_map_find (map, "0") == NULL);
check (stringi_map_find_node (map, "") == NULL);
check (!stringi_map_delete (map, "xyz"));
if (cnt == 0)
check (stringi_map_first (map) == NULL);
else
{
const struct stringi_map_node *node;
int *data_copy;
int left;
data_copy = xmemdup (data, cnt * sizeof *data);
left = cnt;
for (node = stringi_map_first (map), i = 0; i < cnt;
node = stringi_map_next (map, node), i++)
{
const char *key = stringi_map_node_get_key (node);
const char *value = stringi_map_node_get_value (node);
size_t j;
for (j = 0; j < left; j++)
if (!strcmp (key, make_key (data_copy[j]))
|| !strcmp (value, make_value (data_copy[j])))
{
data_copy[j] = data_copy[--left];
goto next;
}
check_die ();
next: ;
}
check (node == NULL);
free (data_copy);
}
}
/* Inserts the CNT strings from 0 to CNT - 1 (inclusive) into a map in the
order specified by INSERTIONS, then deletes them in the order specified by
DELETIONS, checking the map's contents for correctness after each
operation. */
static void
test_insert_delete (const int insertions[],
const int deletions[],
size_t cnt)
{
struct stringi_map map;
size_t i;
stringi_map_init (&map);
check_stringi_map (&map, NULL, 0);
for (i = 0; i < cnt; i++)
{
check (stringi_map_insert (&map, make_key (insertions[i]),
make_value (insertions[i])));
check_stringi_map (&map, insertions, i + 1);
}
for (i = 0; i < cnt; i++)
{
check (stringi_map_delete (&map, make_key (deletions[i])));
check_stringi_map (&map, deletions + i + 1, cnt - i - 1);
}
stringi_map_destroy (&map);
}
/* Inserts strings into a map in each possible order, then removes them in each
possible order, up to a specified maximum size. */
static void
test_insert_any_remove_any (void)
{
const int basis = 0;
const int max_elems = 5;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *insertions, *deletions;
unsigned int ins_perm_cnt;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i | random_value (i, basis);
for (ins_perm_cnt = 0;
ins_perm_cnt == 0 || next_permutation (insertions, cnt);
ins_perm_cnt++)
{
unsigned int del_perm_cnt;
int i;
for (i = 0; i < cnt; i++)
deletions[i] = i | random_value (i, basis);
for (del_perm_cnt = 0;
del_perm_cnt == 0 || next_permutation (deletions, cnt);
del_perm_cnt++)
test_insert_delete (insertions, deletions, cnt);
check (del_perm_cnt == factorial (cnt));
}
check (ins_perm_cnt == factorial (cnt));
free (insertions);
free (deletions);
}
}
/* Inserts strings into a map in each possible order, then removes them in the
same order, up to a specified maximum size. */
static void
test_insert_any_remove_same (void)
{
const int max_elems = 7;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *values;
unsigned int permutation_cnt;
int i;
values = xnmalloc (cnt, sizeof *values);
for (i = 0; i < cnt; i++)
values[i] = i | random_value (i, 1);
for (permutation_cnt = 0;
permutation_cnt == 0 || next_permutation (values, cnt);
permutation_cnt++)
test_insert_delete (values, values, cnt);
check (permutation_cnt == factorial (cnt));
free (values);
}
}
/* Inserts strings into a map in each possible order, then
removes them in reverse order, up to a specified maximum
size. */
static void
test_insert_any_remove_reverse (void)
{
const int max_elems = 7;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *insertions, *deletions;
unsigned int permutation_cnt;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i | random_value (i, 2);
for (permutation_cnt = 0;
permutation_cnt == 0 || next_permutation (insertions, cnt);
permutation_cnt++)
{
memcpy (deletions, insertions, sizeof *insertions * cnt);
reverse (deletions, cnt);
test_insert_delete (insertions, deletions, cnt);
}
check (permutation_cnt == factorial (cnt));
free (insertions);
free (deletions);
}
}
/* Inserts and removes strings in a map, in random order. */
static void
test_random_sequence (void)
{
const int basis = 3;
const int max_elems = 64;
const int max_trials = 8;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt += 2)
{
int *insertions, *deletions;
int trial;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i | random_value (i, basis);
for (i = 0; i < cnt; i++)
deletions[i] = i | random_value (i, basis);
for (trial = 0; trial < max_trials; trial++)
{
random_shuffle (insertions, cnt, sizeof *insertions);
random_shuffle (deletions, cnt, sizeof *deletions);
test_insert_delete (insertions, deletions, cnt);
}
free (insertions);
free (deletions);
}
}
/* Inserts strings into a map in ascending order, then delete in ascending
order. */
static void
test_insert_ordered (void)
{
const int max_elems = 64;
int *values;
struct stringi_map map;
int i;
stringi_map_init (&map);
values = xnmalloc (max_elems, sizeof *values);
for (i = 0; i < max_elems; i++)
{
values[i] = i | random_value (i, 4);
stringi_map_insert_nocopy (&map, xstrdup (make_key (values[i])),
xstrdup (make_value (values[i])));
check_stringi_map (&map, values, i + 1);
}
for (i = 0; i < max_elems; i++)
{
stringi_map_delete (&map, make_key (i));
check_stringi_map (&map, values + i + 1, max_elems - i - 1);
}
stringi_map_destroy (&map);
free (values);
}
/* Inserts and replaces strings in a map, in random order. */
static void
test_replace (void)
{
const int basis = 15;
enum { MAX_ELEMS = 16 };
const int max_trials = 8;
int cnt;
for (cnt = 0; cnt <= MAX_ELEMS; cnt++)
{
int insertions[MAX_ELEMS];
int trial;
int i;
for (i = 0; i < cnt; i++)
insertions[i] = (i / 2) | random_value (i, basis);
for (trial = 0; trial < max_trials; trial++)
{
struct stringi_map map;
int data[MAX_ELEMS];
int n_data;
/* Insert with replacement in random order. */
n_data = 0;
stringi_map_init (&map);
random_shuffle (insertions, cnt, sizeof *insertions);
for (i = 0; i < cnt; i++)
{
const char *key = make_key (insertions[i]);
const char *value = make_value (insertions[i]);
int j;
for (j = 0; j < n_data; j++)
if ((data[j] & KEY_MASK) == (insertions[i] & KEY_MASK))
{
data[j] = insertions[i];
goto found;
}
data[n_data++] = insertions[i];
found:
if (i % 2)
stringi_map_replace (&map, key, value);
else
stringi_map_replace_nocopy (&map,
xstrdup (key), xstrdup (value));
check_stringi_map (&map, data, n_data);
}
/* Delete in original order. */
for (i = 0; i < cnt; i++)
{
const char *expected_value;
char *value;
int j;
expected_value = NULL;
for (j = 0; j < n_data; j++)
if ((data[j] & KEY_MASK) == (insertions[i] & KEY_MASK))
{
expected_value = make_value (data[j]);
data[j] = data[--n_data];
break;
}
value = stringi_map_find_and_delete (&map,
make_key (insertions[i]));
check ((value != NULL) == (expected_value != NULL));
check (value == NULL || !strcmp (value, expected_value));
free (value);
}
assert (stringi_map_is_empty (&map));
stringi_map_destroy (&map);
}
}
}
static void
make_patterned_map (struct stringi_map *map, unsigned int pattern, int basis,
int insertions[], int *np)
{
int n;
int i;
stringi_map_init (map);
n = 0;
for (i = 0; pattern != 0; i++)
if (pattern & (1u << i))
{
pattern &= pattern - 1;
insertions[n] = i | random_value (i, basis);
check (stringi_map_insert (map, make_key (insertions[n]),
make_value (insertions[n])));
n++;
}
check_stringi_map (map, insertions, n);
*np = n;
}
static void
for_each_map (void (*cb)(struct stringi_map *, int data[], int n),
int basis)
{
enum { MAX_ELEMS = 5 };
unsigned int pattern;
for (pattern = 0; pattern < (1u << MAX_ELEMS); pattern++)
{
int data[MAX_ELEMS];
struct stringi_map map;
int n;
make_patterned_map (&map, pattern, basis, data, &n);
(*cb) (&map, data, n);
stringi_map_destroy (&map);
}
}
static void
for_each_pair_of_maps (
void (*cb)(struct stringi_map *a, int a_data[], int n_a,
struct stringi_map *b, int b_data[], int n_b),
int a_basis, int b_basis)
{
enum { MAX_ELEMS = 5 };
unsigned int a_pattern, b_pattern;
for (a_pattern = 0; a_pattern < (1u << MAX_ELEMS); a_pattern++)
for (b_pattern = 0; b_pattern < (1u << MAX_ELEMS); b_pattern++)
{
int a_data[MAX_ELEMS], b_data[MAX_ELEMS];
struct stringi_map a_map, b_map;
int n_a, n_b;
make_patterned_map (&a_map, a_pattern, a_basis, a_data, &n_a);
make_patterned_map (&b_map, b_pattern, b_basis, b_data, &n_b);
(*cb) (&a_map, a_data, n_a, &b_map, b_data, n_b);
stringi_map_destroy (&a_map);
stringi_map_destroy (&b_map);
}
}
static void
clear_cb (struct stringi_map *map, int data[] UNUSED, int n UNUSED)
{
stringi_map_clear (map);
check_stringi_map (map, NULL, 0);
}
static void
test_clear (void)
{
for_each_map (clear_cb, 5);
}
static void
clone_cb (struct stringi_map *map, int data[], int n)
{
struct stringi_map clone;
stringi_map_clone (&clone, map);
check_stringi_map (&clone, data, n);
stringi_map_destroy (&clone);
}
static void
test_clone (void)
{
for_each_map (clone_cb, 6);
}
static void
node_swap_value_cb (struct stringi_map *map, int data[], int n)
{
int i;
for (i = 0; i < n; i++)
{
const char *value = make_value (data[i]);
struct stringi_map_node *node;
char *old_value;
node = stringi_map_find_node (map, make_key (data[i]));
check (node != NULL);
check (!strcmp (stringi_map_node_get_value (node), value));
data[i] = (data[i] & KEY_MASK) | random_value (i, 15);
old_value = stringi_map_node_swap_value (node, make_value (data[i]));
check (old_value != NULL);
check (!strcmp (value, old_value));
free (old_value);
}
}
static void
test_node_swap_value (void)
{
for_each_map (node_swap_value_cb, 14);
}
static void
swap_cb (struct stringi_map *a, int a_data[], int n_a,
struct stringi_map *b, int b_data[], int n_b)
{
stringi_map_swap (a, b);
check_stringi_map (a, b_data, n_b);
check_stringi_map (b, a_data, n_a);
}
static void
test_swap (void)
{
for_each_pair_of_maps (swap_cb, 7, 8);
}
static void
insert_map_cb (struct stringi_map *a, int a_data[], int n_a,
struct stringi_map *b, int b_data[], int n_b)
{
int i, j;
stringi_map_insert_map (a, b);
for (i = 0; i < n_b; i++)
{
for (j = 0; j < n_a; j++)
if ((b_data[i] & KEY_MASK) == (a_data[j] & KEY_MASK))
goto found;
a_data[n_a++] = b_data[i];
found:;
}
check_stringi_map (a, a_data, n_a);
check_stringi_map (b, b_data, n_b);
}
static void
test_insert_map (void)
{
for_each_pair_of_maps (insert_map_cb, 91, 10);
}
static void
replace_map_cb (struct stringi_map *a, int a_data[], int n_a,
struct stringi_map *b, int b_data[], int n_b)
{
int i, j;
stringi_map_replace_map (a, b);
for (i = 0; i < n_b; i++)
{
for (j = 0; j < n_a; j++)
if ((b_data[i] & KEY_MASK) == (a_data[j] & KEY_MASK))
{
a_data[j] = (a_data[j] & KEY_MASK) | (b_data[i] & VALUE_MASK);
goto found;
}
a_data[n_a++] = b_data[i];
found:;
}
check_stringi_map (a, a_data, n_a);
check_stringi_map (b, b_data, n_b);
}
static void
test_replace_map (void)
{
for_each_pair_of_maps (replace_map_cb, 11, 12);
}
static void
check_iset (struct stringi_set *set, const int *data, int n_data,
int mask, int shift)
{
int *unique;
int n_unique;
int i;
n_unique = 0;
unique = xmalloc (n_data * sizeof *unique);
for (i = 0; i < n_data; i++)
{
int idx = (data[i] & mask) >> shift;
int j;
for (j = 0; j < n_unique; j++)
if (unique[j] == idx)
goto found;
unique[n_unique++] = idx;
found:;
}
check (stringi_set_count (set) == n_unique);
for (i = 0; i < n_unique; i++)
check (stringi_set_contains (set, get_string (unique[i])));
stringi_set_destroy (set);
free (unique);
}
static void
check_set (struct string_set *set, const int *data, int n_data,
int mask, int shift)
{
int *unique;
int n_unique;
int i;
n_unique = 0;
unique = xmalloc (n_data * sizeof *unique);
for (i = 0; i < n_data; i++)
{
int idx = (data[i] & mask) >> shift;
int j;
for (j = 0; j < n_unique; j++)
if (unique[j] == idx)
goto found;
unique[n_unique++] = idx;
found:;
}
check (string_set_count (set) == n_unique);
for (i = 0; i < n_unique; i++)
check (string_set_contains (set, get_string (unique[i])));
string_set_destroy (set);
free (unique);
}
static void
get_keys_and_values_cb (struct stringi_map *map, int data[], int n)
{
struct stringi_set keys;
struct string_set values;
stringi_set_init (&keys);
string_set_init (&values);
stringi_map_get_keys (map, &keys);
stringi_map_get_values (map, &values);
check_iset (&keys, data, n, KEY_MASK, KEY_SHIFT);
check_set (&values, data, n, VALUE_MASK, VALUE_SHIFT);
}
static void
test_get_keys_and_values (void)
{
for_each_map (get_keys_and_values_cb, 13);
}
static void
test_destroy_null (void)
{
stringi_map_destroy (NULL);
}
/* Main program. */
struct test
{
const char *name;
const char *description;
void (*function) (void);
};
static const struct test tests[] =
{
{
"insert-any-remove-any",
"insert any order, delete any order",
test_insert_any_remove_any
},
{
"insert-any-remove-same",
"insert any order, delete same order",
test_insert_any_remove_same
},
{
"insert-any-remove-reverse",
"insert any order, delete reverse order",
test_insert_any_remove_reverse
},
{
"random-sequence",
"insert and delete in random sequence",
test_random_sequence
},
{
"replace",
"insert and replace in random sequence",
test_replace
},
{
"insert-ordered",
"insert in ascending order",
test_insert_ordered
},
{
"clear",
"clear",
test_clear
},
{
"clone",
"clone",
test_clone
},
{
"swap",
"swap",
test_swap
},
{
"node-swap-value",
"node_swap_value",
test_node_swap_value
},
{
"insert-map",
"insert_map",
test_insert_map
},
{
"replace-map",
"replace_map",
test_replace_map
},
{
"get-keys-and-values",
"get keys and values",
test_get_keys_and_values
},
{
"destroy-null",
"destroying null table",
test_destroy_null
},
};
enum { N_TESTS = sizeof tests / sizeof *tests };
int
main (int argc, char *argv[])
{
int i;
if (argc != 2)
{
fprintf (stderr, "exactly one argument required; use --help for help\n");
return EXIT_FAILURE;
}
else if (!strcmp (argv[1], "--help"))
{
printf ("%s: test case-insensitive string map library\n"
"usage: %s TEST-NAME\n"
"where TEST-NAME is one of the following:\n",
argv[0], argv[0]);
for (i = 0; i < N_TESTS; i++)
printf (" %s\n %s\n", tests[i].name, tests[i].description);
return 0;
}
else
{
for (i = 0; i < N_TESTS; i++)
if (!strcmp (argv[1], tests[i].name))
{
tests[i].function ();
free_strings ();
return 0;
}
fprintf (stderr, "unknown test %s; use --help for help\n", argv[1]);
return EXIT_FAILURE;
}
}
pspp-0.8.5/tests/libpspp/tower.at 0000644 0001750 0001750 00000000363 12470242646 013741 0000000 0000000 AT_BANNER([tower library])
m4_define([CHECK_TOWER],
[AT_SETUP([tower -- $1])
AT_CHECK([tower-test $1])
AT_CLEANUP])
CHECK_TOWER([insert])
CHECK_TOWER([delete])
CHECK_TOWER([resize])
CHECK_TOWER([splice-out])
CHECK_TOWER([splice-in])
pspp-0.8.5/tests/libpspp/heap.at 0000644 0001750 0001750 00000000460 12470242646 013514 0000000 0000000 AT_BANNER([Heap library])
m4_define([CHECK_HEAP],
[AT_SETUP([heap -- $1])
AT_CHECK([heap-test $1])
AT_CLEANUP])
CHECK_HEAP([insert-no-dups-delete-min])
CHECK_HEAP([insert-with-dups-delete-min])
CHECK_HEAP([insert-no-dups-delete-random])
CHECK_HEAP([inc-dec])
CHECK_HEAP([random-insert-delete])
pspp-0.8.5/tests/libpspp/i18n-test.c 0000644 0001750 0001750 00000006106 12470243701 014145 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2010, 2011, 2012 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
#include
#include
#include
#include
#include "libpspp/i18n.h"
#undef NDEBUG
#include
int
main (int argc, char *argv[])
{
i18n_init ();
if (argc > 1 && !strcmp (argv[1], "supports_encodings"))
{
int status = 0;
int i;
for (i = 2; i < argc; i++)
if (!is_encoding_supported (argv[i]))
{
printf ("encoding \"%s\" is NOT supported\n", argv[i]);
status = 77;
}
i18n_done ();
exit (status);
}
if (argc == 5 && !strcmp (argv[1], "recode"))
{
const char *from = argv[2];
const char *to = argv[3];
const char *string = argv[4];
char *result = recode_string (to, from, string, -1);
puts (result);
assert (strlen (result) == recode_string_len (to, from, string, -1));
free (result);
}
else if (argc == 6 && !strcmp (argv[1], "concat"))
{
const char *head = argv[2];
const char *tail = argv[3];
const char *encoding = argv[4];
int max_len = atoi (argv[5]);
char *result;
result = utf8_encoding_concat (head, tail, encoding, max_len);
puts (result);
assert (strlen (result)
== utf8_encoding_concat_len (head, tail, encoding, max_len));
if (tail[0] == '\0')
{
char *result2 = utf8_encoding_trunc (head, encoding, max_len);
assert (!strcmp (result, result2));
assert (strlen (result2)
== utf8_encoding_trunc_len (head, encoding, max_len));
free (result2);
}
free (result);
}
else
{
fprintf (stderr, "\
usage: %s supports_encodings ENCODING...\n\
where ENCODING is the name of an encoding.\n\
Exits with status 0 if all the encodings are supported, 77 otherwise.\n\
\n\
usage: %s recode FROM TO STRING\n\
where FROM is the source encoding,\n\
TO is the target encoding,\n\
and STRING is the text to recode.\n\
\n\
usage: %s concat HEAD TAIL ENCODING MAX_LEN\n\
where HEAD is the first string to concatenate\n\
TAIL is the second string to concatenate\n\
ENCODING is the encoding in which to measure the result's length\n\
MAX_LEN is the maximum length of the result in ENCODING.\n",
argv[0], argv[0], argv[0]);
return EXIT_FAILURE;
}
i18n_done ();
return 0;
}
pspp-0.8.5/tests/libpspp/string-set.at 0000644 0001750 0001750 00000001147 12470242646 014701 0000000 0000000 AT_BANNER([string set library])
m4_define([CHECK_STRING_SET],
[AT_SETUP([string set -- $1])
AT_KEYWORDS([string-set])
AT_CHECK([string-set-test $1])
AT_CLEANUP])
CHECK_STRING_SET([insert-any-remove-any])
CHECK_STRING_SET([insert-any-remove-same])
CHECK_STRING_SET([insert-any-remove-reverse])
CHECK_STRING_SET([random-sequence])
CHECK_STRING_SET([insert-ordered])
CHECK_STRING_SET([union])
CHECK_STRING_SET([union-and-intersection])
CHECK_STRING_SET([intersect])
CHECK_STRING_SET([subtract])
CHECK_STRING_SET([swap])
CHECK_STRING_SET([clear])
CHECK_STRING_SET([clone])
CHECK_STRING_SET([destroy-null])
pspp-0.8.5/tests/libpspp/sparse-xarray-test.at 0000644 0001750 0001750 00000005433 12470242646 016362 0000000 0000000 AT_BANNER([sparse external arrays])
m4_divert_push([PREPARE_TESTS])
[sparse_xarray_queue_limit () {
# Each on-disk sparse_xarray eats up a file descriptor, so for the
# tests that involve on-disk sparse_xarrays we need to limit the
# maximum length of the queue. Figure out how many file descriptors
# we can let the test program open at once.
OPEN_MAX=`getconf OPEN_MAX 2>/dev/null`
case $OPEN_MAX in
[0-9]*)
# Divide by 2 because some fds are used by other code.
queue_limit=`expr $OPEN_MAX / 2`
;;
undefined)
# Assume that any system with a dynamic fd limit has a large limit.
queue_limit=500
;;
*)
case `uname -m 2>/dev/null` in
CYGWIN*)
# Cygwin claims a 256-fd limit as OPEN_MAX in .
queue_limit=128
;;
MINGW*)
# The following email claims that Mingw should have a
# 2048-fd limit:
# http://www.mail-archive.com/squid-users@squid-cache.org/msg35249.html
queue_limit=1024
;;
*)
# This seems fairly conservative these days.
queue_limit=50
;;
esac
;;
esac
echo "$queue_limit"
}]
m4_divert_pop([PREPARE_TESTS])
AT_SETUP([in-memory sparse_xarray])
dnl --values=3 would be a slightly better test but takes much longer.
AT_CHECK([sparse-xarray-test$EXEEXT \
--verbosity=0 --queue-limit=`sparse_xarray_queue_limit` \
--columns=3 --max-rows=3 --max-memory-rows=3 --values=2],
[0], [ignore], [ignore])
AT_CLEANUP
m4_define([SPARSE_XARRAY_ON_DISK],
[AT_SETUP([on-disk sparse_xarray max-memory-rows=$1])
AT_CHECK([sparse-xarray-test$EXEEXT \
--verbosity=0 --queue-limit=`sparse_xarray_queue_limit` \
--columns=2 --max-rows=3 --max-memory-rows=$1 --values=2],
[0], [ignore], [ignore])
AT_CLEANUP])
SPARSE_XARRAY_ON_DISK([0])
SPARSE_XARRAY_ON_DISK([1])
SPARSE_XARRAY_ON_DISK([2])
AT_SETUP([copying between in-memory sparse_xarrays])
AT_KEYWORDS([sparse_xarray])
AT_CHECK([sparse-xarray-test$EXEEXT \
--verbosity=0 --queue-limit=`sparse_xarray_queue_limit` \
--columns=2 --max-rows=2 --max-memory-rows=2 --values=2 \
--xarrays=2 --no-write-rows --no-copy-columns],
[0], [ignore], [ignore])
AT_CLEANUP
m4_define([SPARSE_XARRAY_COPY_DISK],
[AT_SETUP([copying between on-disk sparse_xarrays max-memory-rows=$1])
AT_KEYWORDS([sparse_xarray])
limit=`sparse_xarray_queue_limit`
AT_CHECK([sparse-xarray-test$EXEEXT \
--verbosity=0 --queue-limit=`expr $limit / 2` \
--columns=1 --max-rows=2 --max-memory-rows=$max_memory_rows \
--values=2 --xarrays=2 --no-write-rows --no-copy-columns],
[0], [ignore], [ignore])
AT_CLEANUP])
dnl These parameters are ridiculously low, but it's necessary
dnl unless we want the tests to take a very long time.
SPARSE_XARRAY_COPY_DISK([0])
SPARSE_XARRAY_COPY_DISK([1])
pspp-0.8.5/tests/libpspp/tower-test.c 0000644 0001750 0001750 00000047555 12470434666 014557 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2007, 2010, 2013 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
/* This is a test program for the routines defined in tower.c.
This test program aims to be as comprehensive as possible.
With -DNDEBUG, "gcov -b" should report 100% coverage of lines
and branches in tower.c routines. (Without -DNDEBUG, branches
caused by failed assertions will not be taken.) "valgrind
--leak-check=yes --show-reachable=yes" should give a clean
report, both with and without -DNDEBUG. */
#ifdef HAVE_CONFIG_H
#include
#endif
#include
#include
#include
#include
#include
#include
#include
#include
#include "xalloc.h"
/* Exit with a failure code.
(Place a breakpoint on this function while debugging.) */
static void
check_die (void)
{
exit (EXIT_FAILURE);
}
/* If OK is not true, prints a message about failure on the
current source file and the given LINE and terminates. */
static void
check_func (bool ok, int line)
{
if (!ok)
{
fprintf (stderr, "%s:%d: check failed\n", __FILE__, line);
check_die ();
}
}
/* Verifies that EXPR evaluates to true.
If not, prints a message citing the calling line number and
terminates. */
#define check(EXPR) check_func ((EXPR), __LINE__)
/* Node type and support routines. */
/* Test data block. */
struct block
{
struct tower_node node; /* Embedded tower block. */
int x; /* Primary value. */
};
/* Returns the `struct block' that NODE is embedded within. */
static struct block *
tower_node_to_block (const struct tower_node *node)
{
return tower_data (node, struct block, node);
}
/* Swaps *A and *B. */
static void
swap (int *a, int *b)
{
int t = *a;
*a = *b;
*b = t;
}
/* Reverses the order of the CNT integers starting at VALUES. */
static void
reverse (int *values, size_t cnt)
{
size_t i = 0;
size_t j = cnt;
while (j > i)
swap (&values[i++], &values[--j]);
}
/* Arranges the CNT blocks in VALUES into the lexicographically
next greater permutation. Returns true if successful.
If VALUES is already the lexicographically greatest
permutation of its blocks (i.e. ordered from greatest to
smallest), arranges them into the lexicographically least
permutation (i.e. ordered from smallest to largest) and
returns false. */
static bool
next_permutation (int *values, size_t cnt)
{
if (cnt > 0)
{
size_t i = cnt - 1;
while (i != 0)
{
i--;
if (values[i] < values[i + 1])
{
size_t j;
for (j = cnt - 1; values[i] >= values[j]; j--)
continue;
swap (values + i, values + j);
reverse (values + (i + 1), cnt - (i + 1));
return true;
}
}
reverse (values, cnt);
}
return false;
}
/* Returns N!. */
static unsigned int
factorial (unsigned int n)
{
unsigned int value = 1;
/* Disallow N values that overflow on 32-bit machines. */
assert (n <= 12);
for (; n > 1; )
value *= n--;
return value;
}
/* Returns C(n, k), the number of ways that K choices can be made
from N items when order is unimportant. */
static unsigned int
binomial_cofficient (unsigned int n, unsigned int k)
{
assert (n >= k);
return factorial (n) / factorial (k) / factorial (n - k);
}
/* Tests whether PARTS is a K-part integer composition of N.
Returns true if so, false otherwise. */
static bool UNUSED
is_k_composition (int n, int k, const int parts[])
{
int sum;
int i;
sum = 0;
for (i = 0; i < k; i++)
{
if (parts[i] < 1 || parts[i] > n)
return false;
sum += parts[i];
}
return sum == n;
}
/* Advances the K-part integer composition of N stored in PARTS
to the next lexicographically greater one.
Returns true if successful, false if the composition was
already the greatest K-part composition of N (in which case
PARTS is unaltered). */
static bool
next_k_composition (int n UNUSED, int k, int parts[])
{
int x, i;
assert (is_k_composition (n, k, parts));
if (k == 1)
return false;
for (i = k - 1; i > 0; i--)
if (parts[i] > 1)
break;
if (i == 0)
return false;
x = parts[i] - 1;
parts[i] = 1;
parts[i - 1]++;
parts[k - 1] = x;
assert (is_k_composition (n, k, parts));
return true;
}
/* Sets the K integers in PARTS to the lexicographically first
K-part composition of N. */
static void
first_k_composition (int n, int k, int parts[])
{
int i;
assert (n >= k);
for (i = 0; i < k; i++)
parts[i] = 1;
parts[k - 1] += n - k;
}
/* Advances *K and PARTS to the next integer composition of N.
Compositions are ordered from shortest to longest and in
lexicographical order within a given length.
Before the first call, initialize *K to 0.
After each successful call, *K contains the length of the
current composition and the *K blocks in PARTS contain its
parts.
Returns true if successful, false if the set of compositions
has been exhausted. */
static bool
next_composition (int n, int *k, int parts[])
{
if (*k >= 1 && next_k_composition (n, *k, parts))
return true;
else if (*k < n)
{
first_k_composition (n, ++*k, parts);
return true;
}
else
return false;
}
/* A block expected to be found in a tower. */
struct expected_block
{
int size; /* Expected thickness of block. */
int x; /* Expected value for `x' member. */
};
/* Checks that tower T contains the BLOCK_CNT blocks described by
BLOCKS[]. */
static void
check_tower (struct tower *t,
struct expected_block blocks[], size_t block_cnt)
{
int total_height;
struct tower_node *node;
size_t i;
check (tower_count (t) == block_cnt);
check (tower_is_empty (t) == (block_cnt == 0));
total_height = 0;
for (i = 0; i < block_cnt; i++)
{
unsigned long int level;
for (level = total_height;
level < total_height + blocks[i].size;
level++)
{
struct tower_node *found;
unsigned long int block_start;
found = tower_lookup (t, level, &block_start);
check (found != NULL);
check (tower_node_to_block (found)->x == blocks[i].x);
check (block_start == total_height);
check (tower_node_get_level (found) == total_height);
check (tower_node_get_index (found) == i);
check (tower_get (t, i) == found);
}
total_height += blocks[i].size;
}
check (tower_height (t) == total_height);
for (node = tower_first (t), i = 0;
node != NULL;
node = tower_next (t, node), i++)
{
check (tower_node_get_size (node) == blocks[i].size);
check (tower_node_to_block (node)->x == blocks[i].x);
}
check (i == block_cnt);
for (node = tower_last (t), i = block_cnt - 1;
node != NULL;
node = tower_prev (t, node), i--)
{
check (tower_node_get_size (node) == blocks[i].size);
check (tower_node_to_block (node)->x == blocks[i].x);
}
check (i == SIZE_MAX);
}
/* Tests inserting all possible sets of block heights into a
tower in all possible orders, up to a specified maximum tower
height. */
static void
test_insert (void)
{
const int max_height = 7;
int cnt;
for (cnt = 1; cnt <= max_height; cnt++)
{
unsigned int composition_cnt;
struct expected_block *expected;
int *sizes;
int block_cnt;
int *order;
struct block *blocks;
expected = xnmalloc (cnt, sizeof *expected);
sizes = xnmalloc (cnt, sizeof *sizes);
order = xnmalloc (cnt, sizeof *order);
blocks = xnmalloc (cnt, sizeof *blocks);
block_cnt = 0;
composition_cnt = 0;
while (next_composition (cnt, &block_cnt, sizes))
{
int i, j;
unsigned int permutation_cnt;
for (i = 0; i < block_cnt; i++)
order[i] = i;
permutation_cnt = 0;
while (permutation_cnt == 0 || next_permutation (order, block_cnt))
{
struct tower t;
/* Inserts the block_cnt blocks with the given
sizes[] into T in the order given by order[]. */
tower_init (&t);
for (i = 0; i < block_cnt; i++)
{
struct block *under;
int idx;
idx = order[i];
blocks[idx].x = idx;
under = NULL;
for (j = 0; j < i; j++)
if (idx < order[j]
&& (under == NULL || under->x > order[j]))
under = &blocks[order[j]];
tower_insert (&t, sizes[idx], &blocks[idx].node,
under != NULL ? &under->node : NULL);
}
/* Check that the result is what we expect. */
for (i = 0; i < block_cnt; i++)
{
expected[i].size = sizes[i];
expected[i].x = i;
}
check_tower (&t, expected, block_cnt);
permutation_cnt++;
}
check (permutation_cnt == factorial (block_cnt));
composition_cnt++;
}
check (composition_cnt == 1 << (cnt - 1));
free (expected);
free (sizes);
free (order);
free (blocks);
}
}
/* Tests deleting blocks from towers that initially contain all
possible sets of block sizes into a tower in all possible
orders, up to a specified maximum tower height. */
static void
test_delete (void)
{
const int max_height = 7;
int cnt;
for (cnt = 1; cnt <= max_height; cnt++)
{
unsigned int composition_cnt;
struct expected_block *expected;
int *sizes;
int block_cnt;
int *order;
struct block *blocks;
expected = xnmalloc (cnt, sizeof *expected);
sizes = xnmalloc (cnt, sizeof *sizes);
order = xnmalloc (cnt, sizeof *order);
blocks = xnmalloc (cnt, sizeof *blocks);
block_cnt = 0;
composition_cnt = 0;
while (next_composition (cnt, &block_cnt, sizes))
{
int i;
unsigned int permutation_cnt;
for (i = 0; i < block_cnt; i++)
order[i] = i;
permutation_cnt = 0;
while (permutation_cnt == 0 || next_permutation (order, block_cnt))
{
struct tower t;
/* Insert blocks into tower in ascending order. */
tower_init (&t);
for (i = 0; i < block_cnt; i++)
{
blocks[i].x = i;
tower_insert (&t, sizes[i], &blocks[i].node, NULL);
expected[i].x = i;
expected[i].size = sizes[i];
}
check_tower (&t, expected, block_cnt);
/* Delete blocks from tower in the order of
order[]. */
for (i = 0; i < block_cnt; i++)
{
int idx = order[i];
int j;
tower_delete (&t, &blocks[idx].node);
for (j = 0; ; j++)
{
assert (j < block_cnt - i);
if (expected[j].x == idx)
{
memmove (&expected[j], &expected[j + 1],
sizeof *expected * (block_cnt - i - j - 1));
break;
}
}
check_tower (&t, expected, block_cnt - i - 1);
}
permutation_cnt++;
}
check (permutation_cnt == factorial (block_cnt));
composition_cnt++;
}
check (composition_cnt == 1 << (cnt - 1));
free (expected);
free (sizes);
free (order);
free (blocks);
}
}
/* Tests towers containing all possible block sizes, resizing
the blocks to all possible sizes that conserve the total
tower height, up to a maximum total tower height. */
static void
test_resize (void)
{
const int max_height = 9;
int cnt;
for (cnt = 1; cnt <= max_height; cnt++)
{
unsigned int composition_cnt;
struct expected_block *expected;
int *sizes, *new_sizes;
int block_cnt;
int *order;
struct block *blocks;
expected = xnmalloc (cnt, sizeof *expected);
sizes = xnmalloc (cnt, sizeof *sizes);
new_sizes = xnmalloc (cnt, sizeof *new_sizes);
order = xnmalloc (cnt, sizeof *order);
blocks = xnmalloc (cnt, sizeof *blocks);
block_cnt = 0;
composition_cnt = 0;
while (next_composition (cnt, &block_cnt, sizes))
{
int i;
unsigned int resizes = 0;
for (resizes = 0, first_k_composition (cnt, block_cnt, new_sizes);
(resizes == 0
|| next_k_composition (cnt, block_cnt, new_sizes));
resizes++)
{
struct tower t;
/* Insert blocks into tower in ascending order. */
tower_init (&t);
for (i = 0; i < block_cnt; i++)
{
blocks[i].x = i;
tower_insert (&t, sizes[i], &blocks[i].node, NULL);
expected[i].x = i;
expected[i].size = sizes[i];
}
check_tower (&t, expected, block_cnt);
/* Resize all the blocks. */
for (i = 0; i < block_cnt; i++)
{
if (expected[i].size != new_sizes[i] || rand () % 2)
tower_resize (&t, &blocks[i].node, new_sizes[i]);
expected[i].size = new_sizes[i];
}
check_tower (&t, expected, block_cnt);
}
check (resizes == binomial_cofficient (cnt - 1, block_cnt - 1));
composition_cnt++;
}
check (composition_cnt == 1 << (cnt - 1));
free (expected);
free (new_sizes);
free (sizes);
free (order);
free (blocks);
}
}
/* Tests splicing all possible contiguous sets of blocks out of one
tower into a second, initially empty tower. */
static void
test_splice_out (void)
{
const int max_height = 9;
int cnt;
for (cnt = 1; cnt <= max_height; cnt++)
{
unsigned int composition_cnt;
struct expected_block *expected;
int *sizes, *new_sizes;
int block_cnt;
int *order;
struct block *blocks;
expected = xnmalloc (cnt, sizeof *expected);
sizes = xnmalloc (cnt, sizeof *sizes);
new_sizes = xnmalloc (cnt, sizeof *new_sizes);
order = xnmalloc (cnt, sizeof *order);
blocks = xnmalloc (cnt, sizeof *blocks);
block_cnt = 0;
composition_cnt = 0;
while (next_composition (cnt, &block_cnt, sizes))
{
int i, j;
for (i = 0; i < block_cnt; i++)
for (j = i; j <= block_cnt; j++)
{
struct tower src, dst;
int k;
tower_init (&src);
tower_init (&dst);
/* Insert blocks into SRC and DST in ascending order. */
for (k = 0; k < block_cnt; k++)
{
blocks[k].x = k;
tower_insert (&src, sizes[k], &blocks[k].node, NULL);
expected[k].x = k;
expected[k].size = sizes[k];
}
check_tower (&src, expected, block_cnt);
/* Splice blocks I...J into DST. */
tower_splice (&dst, NULL, &src, &blocks[i].node,
j < block_cnt ? &blocks[j].node : NULL);
check_tower (&dst, &expected[i], j - i);
memmove (&expected[i], &expected[j],
sizeof *expected * (block_cnt - j));
check_tower (&src, expected, block_cnt - (j - i));
}
composition_cnt++;
}
check (composition_cnt == 1 << (cnt - 1));
free (expected);
free (new_sizes);
free (sizes);
free (order);
free (blocks);
}
}
/* Tests splicing all of the contents of a tower into all
possible positions in a second tower. */
static void
test_splice_in (void)
{
const int max_height = 9;
int cnt;
for (cnt = 1; cnt <= max_height; cnt++)
{
unsigned int composition_cnt;
struct expected_block *expected;
int *sizes, *new_sizes;
int block_cnt;
int *order;
struct block *blocks;
expected = xnmalloc (cnt, sizeof *expected);
sizes = xnmalloc (cnt, sizeof *sizes);
new_sizes = xnmalloc (cnt, sizeof *new_sizes);
order = xnmalloc (cnt, sizeof *order);
blocks = xnmalloc (cnt, sizeof *blocks);
block_cnt = 0;
composition_cnt = 0;
while (next_composition (cnt, &block_cnt, sizes))
{
int i, j;
for (i = 0; i < block_cnt; i++)
for (j = i; j <= block_cnt; j++)
{
struct tower src, dst;
int k;
tower_init (&src);
tower_init (&dst);
/* Insert blocks into SRC and DST in ascending order. */
for (k = 0; k < block_cnt; k++)
{
blocks[k].x = k;
tower_insert (k >= i && k < j ? &src : &dst,
sizes[k], &blocks[k].node, NULL);
expected[k].x = k;
expected[k].size = sizes[k];
}
/* Splice SRC into DST. */
tower_splice (&dst, j < block_cnt ? &blocks[j].node : NULL,
&src, i != j ? &blocks[i].node : NULL, NULL);
check_tower (&dst, expected, block_cnt);
}
composition_cnt++;
}
check (composition_cnt == 1 << (cnt - 1));
free (expected);
free (new_sizes);
free (sizes);
free (order);
free (blocks);
}
}
/* Main program. */
struct test
{
const char *name;
const char *description;
void (*function) (void);
};
static const struct test tests[] =
{
{
"insert",
"insert",
test_insert
},
{
"delete",
"delete",
test_delete
},
{
"resize",
"resize",
test_resize
},
{
"splice-out",
"splice out",
test_splice_out
},
{
"splice-in",
"splice in",
test_splice_in
},
};
enum { N_TESTS = sizeof tests / sizeof *tests };
int
main (int argc, char *argv[])
{
int i;
if (argc != 2)
{
fprintf (stderr, "exactly one argument required; use --help for help\n");
return EXIT_FAILURE;
}
else if (!strcmp (argv[1], "--help"))
{
printf ("%s: test tower library\n"
"usage: %s TEST-NAME\n"
"where TEST-NAME is one of the following:\n",
argv[0], argv[0]);
for (i = 0; i < N_TESTS; i++)
printf (" %s\n %s\n", tests[i].name, tests[i].description);
return 0;
}
else
{
for (i = 0; i < N_TESTS; i++)
if (!strcmp (argv[1], tests[i].name))
{
tests[i].function ();
return 0;
}
fprintf (stderr, "unknown test %s; use --help for help\n", argv[1]);
return EXIT_FAILURE;
}
}
pspp-0.8.5/tests/libpspp/abt-test.c 0000644 0001750 0001750 00000051764 12470243701 014146 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2007, 2010, 2011 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
/* This is a test program for the abt_* routines defined in
abt.c. This test program aims to be as comprehensive as
possible. "gcov -b" should report 100% coverage of lines and
branches in the abt_* routines. "valgrind --leak-check=yes
--show-reachable=yes" should give a clean report. */
#ifdef HAVE_CONFIG_H
#include
#endif
#include
#include
#include
#include
#include
#include
#include
#include
/* Exit with a failure code.
(Place a breakpoint on this function while debugging.) */
static void
check_die (void)
{
exit (EXIT_FAILURE);
}
/* If OK is not true, prints a message about failure on the
current source file and the given LINE and terminates. */
static void
check_func (bool ok, int line)
{
if (!ok)
{
fprintf (stderr, "%s:%d: check failed\n", __FILE__, line);
check_die ();
}
}
/* Verifies that EXPR evaluates to true.
If not, prints a message citing the calling line number and
terminates. */
#define check(EXPR) check_func ((EXPR), __LINE__)
/* Prints a message about memory exhaustion and exits with a
failure code. */
static void
xalloc_die (void)
{
printf ("virtual memory exhausted\n");
exit (EXIT_FAILURE);
}
/* Allocates and returns N bytes of memory. */
static void *
xmalloc (size_t n)
{
if (n != 0)
{
void *p = malloc (n);
if (p == NULL)
xalloc_die ();
return p;
}
else
return NULL;
}
static void *
xmemdup (const void *p, size_t n)
{
void *q = xmalloc (n);
memcpy (q, p, n);
return q;
}
/* Allocates and returns N * M bytes of memory. */
static void *
xnmalloc (size_t n, size_t m)
{
if ((size_t) -1 / m <= n)
xalloc_die ();
return xmalloc (n * m);
}
/* Node type and support routines. */
/* Test data element. */
struct element
{
struct abt_node node; /* Embedded binary tree element. */
int data; /* Primary value. */
int count; /* Number of nodes in subtree,
including this node. */
};
static int aux_data;
/* Returns the `struct element' that NODE is embedded within. */
static struct element *
abt_node_to_element (const struct abt_node *node)
{
return abt_data (node, struct element, node);
}
/* Compares the `x' values in A and B and returns a strcmp-type
return value. Verifies that AUX points to aux_data. */
static int
compare_elements (const struct abt_node *a_, const struct abt_node *b_,
const void *aux)
{
const struct element *a = abt_node_to_element (a_);
const struct element *b = abt_node_to_element (b_);
check (aux == &aux_data);
return a->data < b->data ? -1 : a->data > b->data;
}
/* Recalculates the count for NODE's subtree by adding up the
counts for its LEFT and RIGHT child subtrees. */
static void
reaugment_elements (struct abt_node *node_, const void *aux)
{
struct element *node = abt_node_to_element (node_);
check (aux == &aux_data);
node->count = 1;
if (node->node.down[0] != NULL)
node->count += abt_node_to_element (node->node.down[0])->count;
if (node->node.down[1] != NULL)
node->count += abt_node_to_element (node->node.down[1])->count;
}
/* Compares A and B and returns a strcmp-type return value. */
static int
compare_ints_noaux (const void *a_, const void *b_)
{
const int *a = a_;
const int *b = b_;
return *a < *b ? -1 : *a > *b;
}
/* Swaps *A and *B. */
static void
swap (int *a, int *b)
{
int t = *a;
*a = *b;
*b = t;
}
/* Reverses the order of the CNT integers starting at VALUES. */
static void
reverse (int *values, size_t cnt)
{
size_t i = 0;
size_t j = cnt;
while (j > i)
swap (&values[i++], &values[--j]);
}
/* Arranges the CNT elements in VALUES into the lexicographically
next greater permutation. Returns true if successful.
If VALUES is already the lexicographically greatest
permutation of its elements (i.e. ordered from greatest to
smallest), arranges them into the lexicographically least
permutation (i.e. ordered from smallest to largest) and
returns false. */
static bool
next_permutation (int *values, size_t cnt)
{
if (cnt > 0)
{
size_t i = cnt - 1;
while (i != 0)
{
i--;
if (values[i] < values[i + 1])
{
size_t j;
for (j = cnt - 1; values[i] >= values[j]; j--)
continue;
swap (values + i, values + j);
reverse (values + (i + 1), cnt - (i + 1));
return true;
}
}
reverse (values, cnt);
}
return false;
}
/* Returns N!. */
static unsigned int
factorial (unsigned int n)
{
unsigned int value = 1;
while (n > 1)
value *= n--;
return value;
}
/* Randomly shuffles the CNT elements in ARRAY, each of which is
SIZE bytes in size. */
static void
random_shuffle (void *array_, size_t cnt, size_t size)
{
char *array = array_;
char *tmp = xmalloc (size);
size_t i;
for (i = 0; i < cnt; i++)
{
size_t j = rand () % (cnt - i) + i;
if (i != j)
{
memcpy (tmp, array + j * size, size);
memcpy (array + j * size, array + i * size, size);
memcpy (array + i * size, tmp, size);
}
}
free (tmp);
}
/* Finds and returns the element in ABT that is in the given
0-based POSITION in in-order. */
static struct element *
find_by_position (struct abt *abt, int position)
{
struct abt_node *p;
for (p = abt->root; p != NULL; )
{
int p_pos = p->down[0] ? abt_node_to_element (p->down[0])->count : 0;
if (position == p_pos)
return abt_node_to_element (p);
else if (position < p_pos)
p = p->down[0];
else
{
p = p->down[1];
position -= p_pos + 1;
}
}
return NULL;
}
/* Checks that all the augmentations are correct in the subtree
rooted at P. Returns the number of nodes in the subtree. */
static int
check_augmentations (struct abt_node *p_)
{
if (p_ == NULL)
return 0;
else
{
struct element *p = abt_node_to_element (p_);
int left_count = check_augmentations (p->node.down[0]);
int right_count = check_augmentations (p->node.down[1]);
int total = left_count + right_count + 1;
check (p->count == total);
return total;
}
}
/* Check that the levels are correct in the subtree rooted at P. */
static void
check_levels (struct abt_node *p)
{
if (p != NULL)
{
int i, j;
check_levels (p->down[0]);
check_levels (p->down[1]);
check (p->level >= 1);
if (p->level > 1)
{
struct abt_node *q = p->down[1];
check (q != NULL);
check (q->level == p->level || q->level == p->level - 1);
}
for (i = 0; i < 2; i++)
if (p->down[i] != NULL)
for (j = 0; j < 2; j++)
if (p->down[i]->down[j] != NULL)
check (p->down[i]->down[j]->level < p->level);
}
}
/* Checks that ABT contains the CNT ints in DATA, that its
structure is correct, and that certain operations on ABT
produce the expected results. */
static void
check_abt (struct abt *abt, const int data[], size_t cnt)
{
struct element e;
size_t i;
int *order;
order = xmemdup (data, cnt * sizeof *data);
qsort (order, cnt, sizeof *order, compare_ints_noaux);
if (abt->compare != NULL)
{
for (i = 0; i < cnt; i++)
{
struct abt_node *p;
e.data = data[i];
if (rand () % 2)
p = abt_find (abt, &e.node);
else
p = abt_insert (abt, &e.node);
check (p != NULL);
check (p != &e.node);
check (abt_node_to_element (p)->data == data[i]);
}
e.data = -1;
check (abt_find (abt, &e.node) == NULL);
}
check_levels (abt->root);
check_augmentations (abt->root);
for (i = 0; i < cnt; i++)
check (find_by_position (abt, i)->data == order[i]);
if (cnt == 0)
{
check (abt_first (abt) == NULL);
check (abt_last (abt) == NULL);
check (abt_next (abt, NULL) == NULL);
check (abt_prev (abt, NULL) == NULL);
}
else
{
struct abt_node *p;
for (p = abt_first (abt), i = 0; i < cnt; p = abt_next (abt, p), i++)
check (abt_node_to_element (p)->data == order[i]);
check (p == NULL);
for (p = abt_last (abt), i = 0; i < cnt; p = abt_prev (abt, p), i++)
check (abt_node_to_element (p)->data == order[cnt - i - 1]);
check (p == NULL);
}
check (abt_is_empty (abt) == (cnt == 0));
free (order);
}
/* Ways that nodes can be inserted. */
enum insertion_method
{
INSERT, /* With abt_insert. */
INSERT_AFTER, /* With abt_insert_after. */
INSERT_BEFORE /* With abt_insert_before. */
};
/* Inserts INSERT into ABT with the given METHOD. */
static void
insert_node (struct abt *abt, struct element *insert,
enum insertion_method method)
{
if (method == INSERT)
check (abt_insert (abt, &insert->node) == NULL);
else
{
struct abt_node *p = abt->root;
int dir = 0;
if (p != NULL)
for (;;)
{
dir = insert->data > abt_node_to_element (p)->data;
if (p->down[dir] == NULL)
break;
p = p->down[dir];
}
if (method == INSERT_AFTER)
{
if (p != NULL && (dir != 1 || p->down[1] != NULL))
p = abt_prev (abt, p);
abt_insert_after (abt, p, &insert->node);
}
else
{
if (p != NULL && (dir != 0 || p->down[0] != NULL))
p = abt_next (abt, p);
abt_insert_before (abt, p, &insert->node);
}
}
}
/* Inserts the CNT values from 0 to CNT - 1 (inclusive) into an
ABT in the order specified by INSERTIONS using the given
METHOD, then deletes them in the order specified by DELETIONS,
checking the ABT's contents for correctness after each
operation. */
static void
do_test_insert_delete (enum insertion_method method,
const int insertions[],
const int deletions[],
size_t cnt)
{
struct element *elements;
struct abt abt;
size_t i;
elements = xnmalloc (cnt, sizeof *elements);
for (i = 0; i < cnt; i++)
elements[i].data = i;
abt_init (&abt, method == INSERT ? compare_elements : NULL,
reaugment_elements, &aux_data);
check_abt (&abt, NULL, 0);
for (i = 0; i < cnt; i++)
{
insert_node (&abt, &elements[insertions[i]], method);
check_abt (&abt, insertions, i + 1);
}
for (i = 0; i < cnt; i++)
{
abt_delete (&abt, &elements[deletions[i]].node);
check_abt (&abt, deletions + i + 1, cnt - i - 1);
}
free (elements);
}
/* Inserts the CNT values from 0 to CNT - 1 (inclusive) into an
ABT in the order specified by INSERTIONS, then deletes them in
the order specified by DELETIONS, checking the ABT's contents
for correctness after each operation. */
static void
test_insert_delete (const int insertions[],
const int deletions[],
size_t cnt)
{
do_test_insert_delete (INSERT, insertions, deletions, cnt);
do_test_insert_delete (INSERT_AFTER, insertions, deletions, cnt);
do_test_insert_delete (INSERT_BEFORE, insertions, deletions, cnt);
}
/* Inserts values into an ABT in each possible order, then
removes them in each possible order, up to a specified maximum
size. */
static void
test_insert_any_remove_any (void)
{
const int max_elems = 5;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *insertions, *deletions;
unsigned int ins_perm_cnt;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i;
for (ins_perm_cnt = 0;
ins_perm_cnt == 0 || next_permutation (insertions, cnt);
ins_perm_cnt++)
{
unsigned int del_perm_cnt;
int i;
for (i = 0; i < cnt; i++)
deletions[i] = i;
for (del_perm_cnt = 0;
del_perm_cnt == 0 || next_permutation (deletions, cnt);
del_perm_cnt++)
test_insert_delete (insertions, deletions, cnt);
check (del_perm_cnt == factorial (cnt));
}
check (ins_perm_cnt == factorial (cnt));
free (insertions);
free (deletions);
}
}
/* Inserts values into an ABT in each possible order, then
removes them in the same order, up to a specified maximum
size. */
static void
test_insert_any_remove_same (void)
{
const int max_elems = 7;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *values;
unsigned int permutation_cnt;
int i;
values = xnmalloc (cnt, sizeof *values);
for (i = 0; i < cnt; i++)
values[i] = i;
for (permutation_cnt = 0;
permutation_cnt == 0 || next_permutation (values, cnt);
permutation_cnt++)
test_insert_delete (values, values, cnt);
check (permutation_cnt == factorial (cnt));
free (values);
}
}
/* Inserts values into an ABT in each possible order, then
removes them in reverse order, up to a specified maximum
size. */
static void
test_insert_any_remove_reverse (void)
{
const int max_elems = 7;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *insertions, *deletions;
unsigned int permutation_cnt;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i;
for (permutation_cnt = 0;
permutation_cnt == 0 || next_permutation (insertions, cnt);
permutation_cnt++)
{
memcpy (deletions, insertions, sizeof *insertions * cnt);
reverse (deletions, cnt);
test_insert_delete (insertions, deletions, cnt);
}
check (permutation_cnt == factorial (cnt));
free (insertions);
free (deletions);
}
}
/* Inserts and removes values in an ABT in random orders. */
static void
test_random_sequence (void)
{
const int max_elems = 128;
const int max_trials = 8;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt += 2)
{
int *insertions, *deletions;
int trial;
int i;
insertions = xnmalloc (cnt, sizeof *insertions);
deletions = xnmalloc (cnt, sizeof *deletions);
for (i = 0; i < cnt; i++)
insertions[i] = i;
for (i = 0; i < cnt; i++)
deletions[i] = i;
for (trial = 0; trial < max_trials; trial++)
{
random_shuffle (insertions, cnt, sizeof *insertions);
random_shuffle (deletions, cnt, sizeof *deletions);
test_insert_delete (insertions, deletions, cnt);
}
free (insertions);
free (deletions);
}
}
/* Inserts elements into an ABT in ascending order. */
static void
test_insert_ordered (void)
{
const int max_elems = 1024;
struct element *elements;
int *values;
struct abt abt;
int i;
abt_init (&abt, compare_elements, reaugment_elements, &aux_data);
elements = xnmalloc (max_elems, sizeof *elements);
values = xnmalloc (max_elems, sizeof *values);
for (i = 0; i < max_elems; i++)
{
values[i] = elements[i].data = i;
check (abt_insert (&abt, &elements[i].node) == NULL);
check_abt (&abt, values, i + 1);
}
free (elements);
free (values);
}
/* Inserts elements into an ABT, then moves the nodes around in
memory. */
static void
test_moved (void)
{
const int max_elems = 128;
struct element *e[2];
int cur;
int *values;
struct abt abt;
int i, j;
abt_init (&abt, compare_elements, reaugment_elements, &aux_data);
e[0] = xnmalloc (max_elems, sizeof *e[0]);
e[1] = xnmalloc (max_elems, sizeof *e[1]);
values = xnmalloc (max_elems, sizeof *values);
cur = 0;
for (i = 0; i < max_elems; i++)
{
values[i] = e[cur][i].data = i;
check (abt_insert (&abt, &e[cur][i].node) == NULL);
check_abt (&abt, values, i + 1);
for (j = 0; j <= i; j++)
{
e[!cur][j] = e[cur][j];
abt_moved (&abt, &e[!cur][j].node);
check_abt (&abt, values, i + 1);
}
cur = !cur;
}
free (e[0]);
free (e[1]);
free (values);
}
/* Inserts values into an ABT, then changes their values. */
static void
test_changed (void)
{
const int max_elems = 6;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
int *values, *changed_values;
struct element *elements;
unsigned int permutation_cnt;
int i;
values = xnmalloc (cnt, sizeof *values);
changed_values = xnmalloc (cnt, sizeof *changed_values);
elements = xnmalloc (cnt, sizeof *elements);
for (i = 0; i < cnt; i++)
values[i] = i;
for (permutation_cnt = 0;
permutation_cnt == 0 || next_permutation (values, cnt);
permutation_cnt++)
{
for (i = 0; i < cnt; i++)
{
int j, k;
for (j = 0; j <= cnt; j++)
{
struct abt abt;
struct abt_node *changed_retval;
abt_init (&abt, compare_elements, reaugment_elements,
&aux_data);
/* Add to ABT in order. */
for (k = 0; k < cnt; k++)
{
int n = values[k];
elements[n].data = n;
check (abt_insert (&abt, &elements[n].node) == NULL);
}
check_abt (&abt, values, cnt);
/* Change value i to j. */
elements[i].data = j;
for (k = 0; k < cnt; k++)
changed_values[k] = k;
changed_retval = abt_changed (&abt, &elements[i].node);
if (i != j && j < cnt)
{
/* Will cause duplicate. */
check (changed_retval == &elements[j].node);
changed_values[i] = changed_values[cnt - 1];
check_abt (&abt, changed_values, cnt - 1);
}
else
{
/* Succeeds. */
check (changed_retval == NULL);
changed_values[i] = j;
check_abt (&abt, changed_values, cnt);
}
}
}
}
check (permutation_cnt == factorial (cnt));
free (values);
free (changed_values);
free (elements);
}
}
/* Main program. */
struct test
{
const char *name;
const char *description;
void (*function) (void);
};
static const struct test tests[] =
{
{
"insert-any-remove-any",
"insert any order, delete any order",
test_insert_any_remove_any
},
{
"insert-any-remove-same",
"insert any order, delete same order",
test_insert_any_remove_same
},
{
"insert-any-remove-reverse",
"insert any order, delete reverse order",
test_insert_any_remove_reverse
},
{
"random-sequence",
"insert and delete in random sequence",
test_random_sequence
},
{
"insert-ordered",
"insert in ascending order",
test_insert_ordered
},
{
"moved",
"move elements around in memory",
test_moved
},
{
"changed",
"change key data in nodes",
test_changed
}
};
enum { N_TESTS = sizeof tests / sizeof *tests };
int
main (int argc, char *argv[])
{
int i;
if (argc != 2)
{
fprintf (stderr, "exactly one argument required; use --help for help\n");
return EXIT_FAILURE;
}
else if (!strcmp (argv[1], "--help"))
{
printf ("%s: test augmented binary tree\n"
"usage: %s TEST-NAME\n"
"where TEST-NAME is one of the following:\n",
argv[0], argv[0]);
for (i = 0; i < N_TESTS; i++)
printf (" %s\n %s\n", tests[i].name, tests[i].description);
return 0;
}
else
{
for (i = 0; i < N_TESTS; i++)
if (!strcmp (argv[1], tests[i].name))
{
tests[i].function ();
return 0;
}
fprintf (stderr, "unknown test %s; use --help for help\n", argv[1]);
return EXIT_FAILURE;
}
}
pspp-0.8.5/tests/libpspp/llx-test.c 0000644 0001750 0001750 00000167036 12470242646 014206 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2006, 2010 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
/* This is a test program for the llx_* routines defined in
ll.c. This test program aims to be as comprehensive as
possible. "gcov -b" should report 100% coverage of lines and
branches in llx.c and llx.h. "valgrind --leak-check=yes
--show-reachable=yes" should give a clean report.
This test program depends only on ll.c, llx.c, and the
standard C library.
See ll-test.c for a similar program for the ll_* routines. */
#ifdef HAVE_CONFIG_H
#include
#endif
#include
#include
#include
#include
#include
/* Support preliminaries. */
#if __GNUC__ >= 2 && !defined UNUSED
#define UNUSED __attribute__ ((unused))
#else
#define UNUSED
#endif
/* Exit with a failure code.
(Place a breakpoint on this function while debugging.) */
static void
check_die (void)
{
exit (EXIT_FAILURE);
}
/* If OK is not true, prints a message about failure on the
current source file and the given LINE and terminates. */
static void
check_func (bool ok, int line)
{
if (!ok)
{
fprintf (stderr, "%s:%d: check failed\n", __FILE__, line);
check_die ();
}
}
/* Verifies that EXPR evaluates to true.
If not, prints a message citing the calling line number and
terminates. */
#define check(EXPR) check_func ((EXPR), __LINE__)
/* Prints a message about memory exhaustion and exits with a
failure code. */
static void
xalloc_die (void)
{
printf ("virtual memory exhausted\n");
exit (EXIT_FAILURE);
}
/* Allocates and returns N bytes of memory. */
static void *
xmalloc (size_t n)
{
if (n != 0)
{
void *p = malloc (n);
if (p == NULL)
xalloc_die ();
return p;
}
else
return NULL;
}
/* Allocates and returns N * M bytes of memory. */
static void *
xnmalloc (size_t n, size_t m)
{
if ((size_t) -1 / m <= n)
xalloc_die ();
return xmalloc (n * m);
}
/* Always returns a null pointer, failing allocation. */
static struct llx *
null_allocate_node (void *aux UNUSED)
{
return NULL;
}
/* Does nothing. */
static void
null_release_node (struct llx *llx UNUSED, void *aux UNUSED)
{
}
/* Memory manager that fails all allocations and does nothing on
free. */
static const struct llx_manager llx_null_mgr =
{
null_allocate_node,
null_release_node,
NULL,
};
/* List type and support routines. */
/* Test data element. */
struct element
{
int x; /* Primary value. */
int y; /* Secondary value. */
};
static int aux_data;
/* Prints the elements in LIST. */
static void UNUSED
print_list (struct llx_list *list)
{
struct llx *x;
printf ("list:");
for (x = llx_head (list); x != llx_null (list); x = llx_next (x))
{
const struct element *e = llx_data (x);
printf (" %d", e->x);
}
printf ("\n");
}
/* Prints the value returned by PREDICATE given auxiliary data
AUX for each element in LIST. */
static void UNUSED
print_pred (struct llx_list *list,
llx_predicate_func *predicate, void *aux UNUSED)
{
struct llx *x;
printf ("pred:");
for (x = llx_head (list); x != llx_null (list); x = llx_next (x))
printf (" %d", predicate (x, aux));
printf ("\n");
}
/* Prints the CNT numbers in VALUES. */
static void UNUSED
print_array (int values[], size_t cnt)
{
size_t i;
printf ("arry:");
for (i = 0; i < cnt; i++)
printf (" %d", values[i]);
printf ("\n");
}
/* Compares the `x' values in A and B and returns a strcmp-type
return value. Verifies that AUX points to aux_data. */
static int
compare_elements (const void *a_, const void *b_, void *aux)
{
const struct element *a = a_;
const struct element *b = b_;
check (aux == &aux_data);
return a->x < b->x ? -1 : a->x > b->x;
}
/* Compares the `x' and `y' values in A and B and returns a
strcmp-type return value. Verifies that AUX points to
aux_data. */
static int
compare_elements_x_y (const void *a_, const void *b_, void *aux)
{
const struct element *a = a_;
const struct element *b = b_;
check (aux == &aux_data);
if (a->x != b->x)
return a->x < b->x ? -1 : 1;
else if (a->y != b->y)
return a->y < b->y ? -1 : 1;
else
return 0;
}
/* Compares the `y' values in A and B and returns a strcmp-type
return value. Verifies that AUX points to aux_data. */
static int
compare_elements_y (const void *a_, const void *b_, void *aux)
{
const struct element *a = a_;
const struct element *b = b_;
check (aux == &aux_data);
return a->y < b->y ? -1 : a->y > b->y;
}
/* Returns true if the bit in *PATTERN indicated by `x in
*ELEMENT is set, false otherwise. */
static bool
pattern_pred (const void *element_, void *pattern_)
{
const struct element *element = element_;
unsigned int *pattern = pattern_;
return (*pattern & (1u << element->x)) != 0;
}
/* Allocates N elements in *ELEMS.
Adds the elements to LIST, if it is nonnull.
Puts pointers to the elements' list elements in *ELEMP,
followed by a pointer to the list null element, if ELEMP is
nonnull.
Allocates space for N values in *VALUES, if VALUES is
nonnull. */
static void
allocate_elements (size_t n,
struct llx_list *list,
struct element ***elems,
struct llx ***elemp,
int **values)
{
size_t i;
if (list != NULL)
llx_init (list);
*elems = xnmalloc (n, sizeof **elems);
if (elemp != NULL)
{
*elemp = xnmalloc (n + 1, sizeof *elemp);
(*elemp)[n] = llx_null (list);
}
for (i = 0; i < n; i++)
{
(*elems)[i] = xmalloc (sizeof ***elems);
if (list != NULL)
{
struct llx *llx = llx_push_tail (list, (*elems)[i], &llx_malloc_mgr);
if (elemp != NULL)
(*elemp)[i] = llx;
}
}
if (values != NULL)
*values = xnmalloc (n, sizeof *values);
}
/* Copies the CNT values of `x' from LIST into VALUES[]. */
static void
extract_values (struct llx_list *list, int values[], size_t cnt)
{
struct llx *x;
check (llx_count (list) == cnt);
for (x = llx_head (list); x != llx_null (list); x = llx_next (x))
{
struct element *e = llx_data (x);
*values++ = e->x;
}
}
/* As allocate_elements, but sets ascending values, starting
from 0, in `x' values in *ELEMS and in *VALUES (if
nonnull). */
static void
allocate_ascending (size_t n,
struct llx_list *list,
struct element ***elems,
struct llx ***elemp,
int **values)
{
size_t i;
allocate_elements (n, list, elems, elemp, values);
for (i = 0; i < n; i++)
(*elems)[i]->x = i;
if (values != NULL)
extract_values (list, *values, n);
}
/* As allocate_elements, but sets binary values extracted from
successive bits in PATTERN in `x' values in *ELEMS and in
*VALUES (if nonnull). */
static void
allocate_pattern (size_t n,
int pattern,
struct llx_list *list,
struct element ***elems,
struct llx ***elemp,
int **values)
{
size_t i;
allocate_elements (n, list, elems, elemp, values);
for (i = 0; i < n; i++)
(*elems)[i]->x = (pattern & (1 << i)) != 0;
if (values != NULL)
extract_values (list, *values, n);
}
/* Randomly shuffles the CNT elements in ARRAY, each of which is
SIZE bytes in size. */
static void
random_shuffle (void *array_, size_t cnt, size_t size)
{
char *array = array_;
char *tmp = xmalloc (size);
size_t i;
for (i = 0; i < cnt; i++)
{
size_t j = rand () % (cnt - i) + i;
if (i != j)
{
memcpy (tmp, array + j * size, size);
memcpy (array + j * size, array + i * size, size);
memcpy (array + i * size, tmp, size);
}
}
free (tmp);
}
/* As allocate_ascending, but orders the values randomly. */
static void
allocate_random (size_t n,
struct llx_list *list,
struct element ***elems,
struct llx ***elemp,
int **values)
{
size_t i;
allocate_elements (n, list, elems, elemp, values);
for (i = 0; i < n; i++)
(*elems)[i]->x = i;
random_shuffle (*elems, n, sizeof **elems);
if (values != NULL)
extract_values (list, *values, n);
}
/* Frees LIST, the N elements of ELEMS, ELEMP, and VALUES. */
static void
free_elements (size_t n,
struct llx_list *list,
struct element **elems,
struct llx **elemp,
int *values)
{
size_t i;
if (list != NULL)
llx_destroy (list, NULL, NULL, &llx_malloc_mgr);
for (i = 0; i < n; i++)
free (elems[i]);
free (elems);
free (elemp);
free (values);
}
/* Compares A and B and returns a strcmp-type return value. */
static int
compare_ints (const void *a_, const void *b_, void *aux UNUSED)
{
const int *a = a_;
const int *b = b_;
return *a < *b ? -1 : *a > *b;
}
/* Compares A and B and returns a strcmp-type return value. */
static int
compare_ints_noaux (const void *a_, const void *b_)
{
const int *a = a_;
const int *b = b_;
return *a < *b ? -1 : *a > *b;
}
/* Checks that LIST contains the CNT values in ELEMENTS. */
static void
check_list_contents (struct llx_list *list, int elements[], size_t cnt)
{
struct llx *llx;
size_t i;
check ((cnt == 0) == llx_is_empty (list));
/* Iterate in forward order. */
for (llx = llx_head (list), i = 0; i < cnt; llx = llx_next (llx), i++)
{
struct element *e = llx_data (llx);
check (elements[i] == e->x);
check (llx != llx_null (list));
}
check (llx == llx_null (list));
/* Iterate in reverse order. */
for (llx = llx_tail (list), i = 0; i < cnt; llx = llx_prev (llx), i++)
{
struct element *e = llx_data (llx);
check (elements[cnt - i - 1] == e->x);
check (llx != llx_null (list));
}
check (llx == llx_null (list));
check (llx_count (list) == cnt);
}
/* Lexicographicallxy compares ARRAY1, which contains COUNT1
elements of SIZE bytes each, to ARRAY2, which contains COUNT2
elements of SIZE bytes, according to COMPARE. Returns a
strcmp-type result. AUX is passed to COMPARE as auxiliary
data. */
static int
lexicographical_compare_3way (const void *array1, size_t count1,
const void *array2, size_t count2,
size_t size,
int (*compare) (const void *, const void *,
void *aux),
void *aux)
{
const char *first1 = array1;
const char *first2 = array2;
size_t min_count = count1 < count2 ? count1 : count2;
while (min_count > 0)
{
int cmp = compare (first1, first2, aux);
if (cmp != 0)
return cmp;
first1 += size;
first2 += size;
min_count--;
}
return count1 < count2 ? -1 : count1 > count2;
}
/* Tests. */
/* Tests list push and pop operations. */
static void
test_push_pop (void)
{
const int max_elems = 1024;
struct llx_list list;
struct element **elems;
int *values;
int i;
allocate_elements (max_elems, NULL, &elems, NULL, &values);
/* Push on tail. */
llx_init (&list);
check_list_contents (&list, NULL, 0);
for (i = 0; i < max_elems; i++)
{
values[i] = elems[i]->x = i;
llx_push_tail (&list, elems[i], &llx_malloc_mgr);
check_list_contents (&list, values, i + 1);
}
/* Remove from tail. */
for (i = 0; i < max_elems; i++)
{
struct element *e = llx_pop_tail (&list, &llx_malloc_mgr);
check (e->x == max_elems - i - 1);
check_list_contents (&list, values, max_elems - i - 1);
}
/* Push at start. */
check_list_contents (&list, NULL, 0);
for (i = 0; i < max_elems; i++)
{
values[max_elems - i - 1] = elems[i]->x = max_elems - i - 1;
llx_push_head (&list, elems[i], &llx_malloc_mgr);
check_list_contents (&list, &values[max_elems - i - 1], i + 1);
}
/* Remove from start. */
for (i = 0; i < max_elems; i++)
{
struct element *e = llx_pop_head (&list, &llx_malloc_mgr);
check (e->x == (int) i);
check_list_contents (&list, &values[i + 1], max_elems - i - 1);
}
free_elements (max_elems, &list, elems, NULL, values);
}
/* Tests insertion and removal at arbitrary positions. */
static void
test_insert_remove (void)
{
const int max_elems = 16;
int cnt;
for (cnt = 0; cnt < max_elems; cnt++)
{
struct element **elems;
struct llx **elemp;
int *values = xnmalloc (cnt + 1, sizeof *values);
struct llx_list list;
struct element extra;
struct llx *extra_llx;
int pos;
allocate_ascending (cnt, &list, &elems, &elemp, NULL);
extra.x = -1;
for (pos = 0; pos <= cnt; pos++)
{
int i, j;
extra_llx = llx_insert (elemp[pos], &extra, &llx_malloc_mgr);
check (extra_llx != NULL);
j = 0;
for (i = 0; i < pos; i++)
values[j++] = i;
values[j++] = -1;
for (; i < cnt; i++)
values[j++] = i;
check_list_contents (&list, values, cnt + 1);
llx_remove (extra_llx, &llx_malloc_mgr);
}
check_list_contents (&list, values, cnt);
free_elements (cnt, &list, elems, elemp, values);
}
}
/* Tests swapping individual elements. */
static void
test_swap (void)
{
const int max_elems = 8;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
struct llx_list list;
struct element **elems;
struct llx **elemp;
int *values;
int i, j, k;
allocate_ascending (cnt, &list, &elems, &elemp, &values);
check_list_contents (&list, values, cnt);
for (i = 0; i < cnt; i++)
for (j = 0; j < cnt; j++)
for (k = 0; k < 2; k++)
{
int t;
llx_swap (elemp[i], elemp[j]);
t = values[i];
values[i] = values[j];
values[j] = t;
check_list_contents (&list, values, cnt);
}
free_elements (cnt, &list, elems, elemp, values);
}
}
/* Tests swapping ranges of list elements. */
static void
test_swap_range (void)
{
const int max_elems = 8;
int cnt, a0, a1, b0, b1, r;
for (cnt = 0; cnt <= max_elems; cnt++)
for (a0 = 0; a0 <= cnt; a0++)
for (a1 = a0; a1 <= cnt; a1++)
for (b0 = a1; b0 <= cnt; b0++)
for (b1 = b0; b1 <= cnt; b1++)
for (r = 0; r < 2; r++)
{
struct llx_list list;
struct element **elems;
struct llx **elemp;
int *values;
int i, j;
allocate_ascending (cnt, &list, &elems, &elemp, &values);
check_list_contents (&list, values, cnt);
j = 0;
for (i = 0; i < a0; i++)
values[j++] = i;
for (i = b0; i < b1; i++)
values[j++] = i;
for (i = a1; i < b0; i++)
values[j++] = i;
for (i = a0; i < a1; i++)
values[j++] = i;
for (i = b1; i < cnt; i++)
values[j++] = i;
check (j == cnt);
if (r == 0)
llx_swap_range (elemp[a0], elemp[a1], elemp[b0], elemp[b1]);
else
llx_swap_range (elemp[b0], elemp[b1], elemp[a0], elemp[a1]);
check_list_contents (&list, values, cnt);
free_elements (cnt, &list, elems, elemp, values);
}
}
/* Tests removing ranges of list elements. */
static void
test_remove_range (void)
{
const int max_elems = 8;
int cnt, r0, r1;
for (cnt = 0; cnt <= max_elems; cnt++)
for (r0 = 0; r0 <= cnt; r0++)
for (r1 = r0; r1 <= cnt; r1++)
{
struct llx_list list;
struct element **elems;
struct llx **elemp;
int *values;
int i, j;
allocate_ascending (cnt, &list, &elems, &elemp, &values);
check_list_contents (&list, values, cnt);
j = 0;
for (i = 0; i < r0; i++)
values[j++] = i;
for (i = r1; i < cnt; i++)
values[j++] = i;
llx_remove_range (elemp[r0], elemp[r1], &llx_malloc_mgr);
check_list_contents (&list, values, j);
free_elements (cnt, &list, elems, elemp, values);
}
}
/* Tests llx_remove_equal. */
static void
test_remove_equal (void)
{
const int max_elems = 8;
int cnt, r0, r1, eq_pat;
for (cnt = 0; cnt <= max_elems; cnt++)
for (r0 = 0; r0 <= cnt; r0++)
for (r1 = r0; r1 <= cnt; r1++)
for (eq_pat = 0; eq_pat <= 1 << cnt; eq_pat++)
{
struct llx_list list;
struct element **elems;
struct llx **elemp;
int *values;
struct element to_remove;
int remaining;
int i;
allocate_elements (cnt, &list, &elems, &elemp, &values);
remaining = 0;
for (i = 0; i < cnt; i++)
{
int x = eq_pat & (1 << i) ? -1 : i;
bool delete = x == -1 && r0 <= i && i < r1;
elems[i]->x = x;
if (!delete)
values[remaining++] = x;
}
to_remove.x = -1;
check ((int) llx_remove_equal (elemp[r0], elemp[r1], &to_remove,
compare_elements, &aux_data,
&llx_malloc_mgr)
== cnt - remaining);
check_list_contents (&list, values, remaining);
free_elements (cnt, &list, elems, elemp, values);
}
}
/* Tests llx_remove_if. */
static void
test_remove_if (void)
{
const int max_elems = 8;
int cnt, r0, r1, pattern;
for (cnt = 0; cnt <= max_elems; cnt++)
for (r0 = 0; r0 <= cnt; r0++)
for (r1 = r0; r1 <= cnt; r1++)
for (pattern = 0; pattern <= 1 << cnt; pattern++)
{
struct llx_list list;
struct element **elems;
struct llx **elemp;
int *values;
int remaining;
int i;
allocate_ascending (cnt, &list, &elems, &elemp, &values);
remaining = 0;
for (i = 0; i < cnt; i++)
{
bool delete = (pattern & (1 << i)) && r0 <= i && i < r1;
if (!delete)
values[remaining++] = i;
}
check ((int) llx_remove_if (elemp[r0], elemp[r1],
pattern_pred, &pattern,
&llx_malloc_mgr)
== cnt - remaining);
check_list_contents (&list, values, remaining);
free_elements (cnt, &list, elems, elemp, values);
}
}
/* Tests, via HELPER, a function that looks at list elements
equal to some specified element. */
static void
test_examine_equal_range (void (*helper) (int r0, int r1, int eq_pat,
const void *to_find,
struct llx **elemp))
{
const int max_elems = 8;
int cnt, r0, r1, eq_pat;
for (cnt = 0; cnt <= max_elems; cnt++)
for (eq_pat = 0; eq_pat <= 1 << cnt; eq_pat++)
{
struct llx_list list;
struct element **elems;
struct llx **elemp;
int *values;
struct element to_find;
int i;
allocate_ascending (cnt, &list, &elems, &elemp, &values);
for (i = 0; i < cnt; i++)
if (eq_pat & (1 << i))
values[i] = elems[i]->x = -1;
to_find.x = -1;
for (r0 = 0; r0 <= cnt; r0++)
for (r1 = r0; r1 <= cnt; r1++)
helper (r0, r1, eq_pat, &to_find, elemp);
check_list_contents (&list, values, cnt);
free_elements (cnt, &list, elems, elemp, values);
}
}
/* Tests, via HELPER, a function that looks at list elements for
which a given predicate returns true. */
static void
test_examine_if_range (void (*helper) (int r0, int r1, int eq_pat,
struct llx **elemp))
{
const int max_elems = 8;
int cnt, r0, r1, eq_pat;
for (cnt = 0; cnt <= max_elems; cnt++)
for (eq_pat = 0; eq_pat <= 1 << cnt; eq_pat++)
{
struct llx_list list;
struct element **elems;
struct llx **elemp;
int *values;
allocate_ascending (cnt, &list, &elems, &elemp, &values);
for (r0 = 0; r0 <= cnt; r0++)
for (r1 = r0; r1 <= cnt; r1++)
helper (r0, r1, eq_pat, elemp);
check_list_contents (&list, values, cnt);
free_elements (cnt, &list, elems, elemp, values);
}
}
/* Helper function for testing llx_find_equal. */
static void
test_find_equal_helper (int r0, int r1, int eq_pat,
const void *to_find, struct llx **elemp)
{
struct llx *match;
int i;
match = llx_find_equal (elemp[r0], elemp[r1], to_find,
compare_elements, &aux_data);
for (i = r0; i < r1; i++)
if (eq_pat & (1 << i))
break;
check (match == elemp[i]);
}
/* Tests llx_find_equal. */
static void
test_find_equal (void)
{
test_examine_equal_range (test_find_equal_helper);
}
/* Tests llx_find(). */
static void
test_find (void)
{
const int max_elems = 8;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
struct llx_list list;
struct element **elems;
struct llx **elemp;
int *values;
int i;
allocate_ascending (cnt, &list, &elems, &elemp, &values);
for (i = 0; i < cnt; i++)
check (llx_find (llx_head (&list), llx_null (&list), elems[i])
== elemp[i]);
check (llx_find (llx_head (&list), llx_null (&list), NULL) == NULL);
free_elements (cnt, &list, elems, elemp, values);
}
}
/* Helper function for testing llx_find_if. */
static void
test_find_if_helper (int r0, int r1, int eq_pat, struct llx **elemp)
{
struct llx *match = llx_find_if (elemp[r0], elemp[r1],
pattern_pred, &eq_pat);
int i;
for (i = r0; i < r1; i++)
if (eq_pat & (1 << i))
break;
check (match == elemp[i]);
}
/* Tests llx_find_if. */
static void
test_find_if (void)
{
test_examine_if_range (test_find_if_helper);
}
/* Tests llx_find_adjacent_equal. */
static void
test_find_adjacent_equal (void)
{
const int max_elems = 8;
int cnt, eq_pat;
for (cnt = 0; cnt <= max_elems; cnt++)
for (eq_pat = 0; eq_pat <= 1 << cnt; eq_pat++)
{
struct llx_list list;
struct element **elems;
struct llx **elemp;
int *values;
int match;
int i;
allocate_ascending (cnt, &list, &elems, &elemp, &values);
match = -1;
for (i = 0; i < cnt - 1; i++)
{
elems[i]->y = i;
if (eq_pat & (1 << i))
{
values[i] = elems[i]->x = match;
values[i + 1] = elems[i + 1]->x = match;
}
else
match--;
}
for (i = 0; i <= cnt; i++)
{
struct llx *llx1 = llx_find_adjacent_equal (elemp[i], llx_null (&list),
compare_elements,
&aux_data);
struct llx *llx2;
int j;
llx2 = llx_null (&list);
for (j = i; j < cnt - 1; j++)
if (eq_pat & (1 << j))
{
llx2 = elemp[j];
break;
}
check (llx1 == llx2);
}
check_list_contents (&list, values, cnt);
free_elements (cnt, &list, elems, elemp, values);
}
}
/* Helper function for testing llx_count_range. */
static void
test_count_range_helper (int r0, int r1, int eq_pat UNUSED, struct llx **elemp)
{
check ((int) llx_count_range (elemp[r0], elemp[r1]) == r1 - r0);
}
/* Tests llx_count_range. */
static void
test_count_range (void)
{
test_examine_if_range (test_count_range_helper);
}
/* Helper function for testing llx_count_equal. */
static void
test_count_equal_helper (int r0, int r1, int eq_pat,
const void *to_find, struct llx **elemp)
{
int count1, count2;
int i;
count1 = llx_count_equal (elemp[r0], elemp[r1], to_find,
compare_elements, &aux_data);
count2 = 0;
for (i = r0; i < r1; i++)
if (eq_pat & (1 << i))
count2++;
check (count1 == count2);
}
/* Tests llx_count_equal. */
static void
test_count_equal (void)
{
test_examine_equal_range (test_count_equal_helper);
}
/* Helper function for testing llx_count_if. */
static void
test_count_if_helper (int r0, int r1, int eq_pat, struct llx **elemp)
{
int count1;
int count2;
int i;
count1 = llx_count_if (elemp[r0], elemp[r1], pattern_pred, &eq_pat);
count2 = 0;
for (i = r0; i < r1; i++)
if (eq_pat & (1 << i))
count2++;
check (count1 == count2);
}
/* Tests llx_count_if. */
static void
test_count_if (void)
{
test_examine_if_range (test_count_if_helper);
}
/* Returns N!. */
static unsigned int
factorial (unsigned int n)
{
unsigned int value = 1;
while (n > 1)
value *= n--;
return value;
}
/* Returns the number of permutations of the CNT values in
VALUES. If VALUES contains duplicates, they must be
adjacent. */
static unsigned int
expected_perms (int *values, size_t cnt)
{
size_t i, j;
unsigned int perm_cnt;
perm_cnt = factorial (cnt);
for (i = 0; i < cnt; i = j)
{
for (j = i + 1; j < cnt; j++)
if (values[i] != values[j])
break;
perm_cnt /= factorial (j - i);
}
return perm_cnt;
}
/* Tests llx_min and llx_max. */
static void
test_min_max (void)
{
const int max_elems = 6;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
struct llx_list list;
struct element **elems;
struct llx **elemp;
int *values;
int *new_values = xnmalloc (cnt, sizeof *values);
size_t perm_cnt;
allocate_ascending (cnt, &list, &elems, &elemp, &values);
perm_cnt = 1;
while (llx_next_permutation (llx_head (&list), llx_null (&list),
compare_elements, &aux_data))
{
int r0, r1;
struct llx *x;
int i;
for (i = 0, x = llx_head (&list); x != llx_null (&list);
x = llx_next (x), i++)
{
struct element *e = llx_data (x);
elemp[i] = x;
new_values[i] = e->x;
}
for (r0 = 0; r0 <= cnt; r0++)
for (r1 = r0; r1 <= cnt; r1++)
{
struct llx *min = llx_min (elemp[r0], elemp[r1],
compare_elements, &aux_data);
struct llx *max = llx_max (elemp[r0], elemp[r1],
compare_elements, &aux_data);
if (r0 == r1)
{
check (min == elemp[r1]);
check (max == elemp[r1]);
}
else
{
struct element *min_elem = llx_data (min);
struct element *max_elem = llx_data (max);
int min_int, max_int;
int i;
min_int = max_int = new_values[r0];
for (i = r0; i < r1; i++)
{
int value = new_values[i];
if (value < min_int)
min_int = value;
if (value > max_int)
max_int = value;
}
check (min != elemp[r1] && min_elem->x == min_int);
check (max != elemp[r1] && max_elem->x == max_int);
}
}
perm_cnt++;
}
check (perm_cnt == factorial (cnt));
check_list_contents (&list, values, cnt);
free_elements (cnt, &list, elems, elemp, values);
free (new_values);
}
}
/* Tests llx_lexicographical_compare_3way. */
static void
test_lexicographical_compare_3way (void)
{
const int max_elems = 4;
int cnt_a, pat_a, cnt_b, pat_b;
for (cnt_a = 0; cnt_a <= max_elems; cnt_a++)
for (pat_a = 0; pat_a <= 1 << cnt_a; pat_a++)
for (cnt_b = 0; cnt_b <= max_elems; cnt_b++)
for (pat_b = 0; pat_b <= 1 << cnt_b; pat_b++)
{
struct llx_list list_a, list_b;
struct element **elems_a, **elems_b;
struct llx **elemp_a, **elemp_b;
int *values_a, *values_b;
int a0, a1, b0, b1;
allocate_pattern (cnt_a, pat_a,
&list_a, &elems_a, &elemp_a, &values_a);
allocate_pattern (cnt_b, pat_b,
&list_b, &elems_b, &elemp_b, &values_b);
for (a0 = 0; a0 <= cnt_a; a0++)
for (a1 = a0; a1 <= cnt_a; a1++)
for (b0 = 0; b0 <= cnt_b; b0++)
for (b1 = b0; b1 <= cnt_b; b1++)
{
int a_ordering = lexicographical_compare_3way (
values_a + a0, a1 - a0,
values_b + b0, b1 - b0,
sizeof *values_a,
compare_ints, NULL);
int b_ordering = llx_lexicographical_compare_3way (
elemp_a[a0], elemp_a[a1],
elemp_b[b0], elemp_b[b1],
compare_elements, &aux_data);
check (a_ordering == b_ordering);
}
free_elements (cnt_a, &list_a, elems_a, elemp_a, values_a);
free_elements (cnt_b, &list_b, elems_b, elemp_b, values_b);
}
}
/* Appends the `x' value in element E to the array pointed to by
NEXT_OUTPUT, and advances NEXT_OUTPUT to the next position. */
static void
apply_func (void *e_, void *next_output_)
{
struct element *e = e_;
int **next_output = next_output_;
*(*next_output)++ = e->x;
}
/* Tests llx_apply. */
static void
test_apply (void)
{
const int max_elems = 8;
int cnt, r0, r1;
for (cnt = 0; cnt <= max_elems; cnt++)
for (r0 = 0; r0 <= cnt; r0++)
for (r1 = r0; r1 <= cnt; r1++)
{
struct llx_list list;
struct element **elems;
struct llx **elemp;
int *values;
int *output;
int *next_output;
int j;
allocate_ascending (cnt, &list, &elems, &elemp, &values);
check_list_contents (&list, values, cnt);
output = next_output = xnmalloc (cnt, sizeof *output);
llx_apply (elemp[r0], elemp[r1], apply_func, &next_output);
check_list_contents (&list, values, cnt);
llx_destroy (&list, NULL, NULL, &llx_malloc_mgr);
check (r1 - r0 == next_output - output);
for (j = 0; j < r1 - r0; j++)
check (output[j] == r0 + j);
free_elements (cnt, NULL, elems, elemp, values);
free (output);
}
}
/* Tests llx_destroy. */
static void
test_destroy (void)
{
const int max_elems = 8;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
struct llx_list list;
struct element **elems;
struct llx **elemp;
int *values;
int *output;
int *next_output;
int j;
allocate_ascending (cnt, &list, &elems, &elemp, &values);
check_list_contents (&list, values, cnt);
output = next_output = xnmalloc (cnt, sizeof *output);
llx_destroy (&list, apply_func, &next_output, &llx_malloc_mgr);
check (cnt == next_output - output);
for (j = 0; j < cnt; j++)
check (output[j] == j);
free_elements (cnt, NULL, elems, elemp, values);
free (output);
}
}
/* Tests llx_reverse. */
static void
test_reverse (void)
{
const int max_elems = 8;
int cnt, r0, r1;
for (cnt = 0; cnt <= max_elems; cnt++)
for (r0 = 0; r0 <= cnt; r0++)
for (r1 = r0; r1 <= cnt; r1++)
{
struct llx_list list;
struct element **elems;
struct llx **elemp;
int *values;
int i, j;
allocate_ascending (cnt, &list, &elems, &elemp, &values);
check_list_contents (&list, values, cnt);
j = 0;
for (i = 0; i < r0; i++)
values[j++] = i;
for (i = r1 - 1; i >= r0; i--)
values[j++] = i;
for (i = r1; i < cnt; i++)
values[j++] = i;
llx_reverse (elemp[r0], elemp[r1]);
check_list_contents (&list, values, cnt);
free_elements (cnt, &list, elems, elemp, values);
}
}
/* Tests llx_next_permutation and llx_prev_permutation when the
permuted values have no duplicates. */
static void
test_permutations_no_dups (void)
{
const int max_elems = 8;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
struct llx_list list;
struct element **elems;
int *values;
int *old_values = xnmalloc (cnt, sizeof *values);
int *new_values = xnmalloc (cnt, sizeof *values);
size_t perm_cnt;
allocate_ascending (cnt, &list, &elems, NULL, &values);
perm_cnt = 1;
extract_values (&list, old_values, cnt);
while (llx_next_permutation (llx_head (&list), llx_null (&list),
compare_elements, &aux_data))
{
extract_values (&list, new_values, cnt);
check (lexicographical_compare_3way (new_values, cnt,
old_values, cnt,
sizeof *new_values,
compare_ints, NULL) > 0);
memcpy (old_values, new_values, (cnt) * sizeof *old_values);
perm_cnt++;
}
check (perm_cnt == factorial (cnt));
check_list_contents (&list, values, cnt);
perm_cnt = 1;
llx_reverse (llx_head (&list), llx_null (&list));
extract_values (&list, old_values, cnt);
while (llx_prev_permutation (llx_head (&list), llx_null (&list),
compare_elements, &aux_data))
{
extract_values (&list, new_values, cnt);
check (lexicographical_compare_3way (new_values, cnt,
old_values, cnt,
sizeof *new_values,
compare_ints, NULL) < 0);
memcpy (old_values, new_values, (cnt) * sizeof *old_values);
perm_cnt++;
}
check (perm_cnt == factorial (cnt));
llx_reverse (llx_head (&list), llx_null (&list));
check_list_contents (&list, values, cnt);
free_elements (cnt, &list, elems, NULL, values);
free (old_values);
free (new_values);
}
}
/* Tests llx_next_permutation and llx_prev_permutation when the
permuted values contain duplicates. */
static void
test_permutations_with_dups (void)
{
const int max_elems = 8;
const int max_dup = 3;
const int repetitions = 1024;
int cnt, repeat;
for (repeat = 0; repeat < repetitions; repeat++)
for (cnt = 0; cnt < max_elems; cnt++)
{
struct llx_list list;
struct element **elems;
struct llx **elemp;
int *values;
int *old_values = xnmalloc (max_elems, sizeof *values);
int *new_values = xnmalloc (max_elems, sizeof *values);
unsigned int permutation_cnt;
int left = cnt;
int value = 0;
allocate_elements (cnt, &list, &elems, &elemp, &values);
value = 0;
while (left > 0)
{
int max = left < max_dup ? left : max_dup;
int n = rand () % max + 1;
while (n-- > 0)
{
int idx = cnt - left--;
values[idx] = elems[idx]->x = value;
}
value++;
}
permutation_cnt = 1;
extract_values (&list, old_values, cnt);
while (llx_next_permutation (llx_head (&list), llx_null (&list),
compare_elements, &aux_data))
{
extract_values (&list, new_values, cnt);
check (lexicographical_compare_3way (new_values, cnt,
old_values, cnt,
sizeof *new_values,
compare_ints, NULL) > 0);
memcpy (old_values, new_values, cnt * sizeof *old_values);
permutation_cnt++;
}
check (permutation_cnt == expected_perms (values, cnt));
check_list_contents (&list, values, cnt);
permutation_cnt = 1;
llx_reverse (llx_head (&list), llx_null (&list));
extract_values (&list, old_values, cnt);
while (llx_prev_permutation (llx_head (&list), llx_null (&list),
compare_elements, &aux_data))
{
extract_values (&list, new_values, cnt);
check (lexicographical_compare_3way (new_values, cnt,
old_values, cnt,
sizeof *new_values,
compare_ints, NULL) < 0);
permutation_cnt++;
}
llx_reverse (llx_head (&list), llx_null (&list));
check (permutation_cnt == expected_perms (values, cnt));
check_list_contents (&list, values, cnt);
free_elements (cnt, &list, elems, elemp, values);
free (old_values);
free (new_values);
}
}
/* Tests llx_merge when no equal values are to be merged. */
static void
test_merge_no_dups (void)
{
const int max_elems = 8;
const int max_fillxer = 3;
int merge_cnt, pattern, pfx, gap, sfx, order;
for (merge_cnt = 0; merge_cnt < max_elems; merge_cnt++)
for (pattern = 0; pattern <= (1 << merge_cnt); pattern++)
for (pfx = 0; pfx < max_fillxer; pfx++)
for (gap = 0; gap < max_fillxer; gap++)
for (sfx = 0; sfx < max_fillxer; sfx++)
for (order = 0; order < 2; order++)
{
struct llx_list list;
struct element **elems;
struct llx **elemp;
int *values;
int list_cnt = pfx + merge_cnt + gap + sfx;
int a0, a1, b0, b1;
int i, j;
allocate_elements (list_cnt, &list,
&elems, &elemp, &values);
j = 0;
for (i = 0; i < pfx; i++)
elems[j++]->x = 100 + i;
a0 = j;
for (i = 0; i < merge_cnt; i++)
if (pattern & (1u << i))
elems[j++]->x = i;
a1 = j;
for (i = 0; i < gap; i++)
elems[j++]->x = 200 + i;
b0 = j;
for (i = 0; i < merge_cnt; i++)
if (!(pattern & (1u << i)))
elems[j++]->x = i;
b1 = j;
for (i = 0; i < sfx; i++)
elems[j++]->x = 300 + i;
check (list_cnt == j);
j = 0;
for (i = 0; i < pfx; i++)
values[j++] = 100 + i;
if (order == 0)
for (i = 0; i < merge_cnt; i++)
values[j++] = i;
for (i = 0; i < gap; i++)
values[j++] = 200 + i;
if (order == 1)
for (i = 0; i < merge_cnt; i++)
values[j++] = i;
for (i = 0; i < sfx; i++)
values[j++] = 300 + i;
check (list_cnt == j);
if (order == 0)
llx_merge (elemp[a0], elemp[a1], elemp[b0], elemp[b1],
compare_elements, &aux_data);
else
llx_merge (elemp[b0], elemp[b1], elemp[a0], elemp[a1],
compare_elements, &aux_data);
check_list_contents (&list, values, list_cnt);
free_elements (list_cnt, &list, elems, elemp, values);
}
}
/* Tests llx_merge when equal values are to be merged. */
static void
test_merge_with_dups (void)
{
const int max_elems = 8;
int cnt, merge_pat, inc_pat, order;
for (cnt = 0; cnt <= max_elems; cnt++)
for (merge_pat = 0; merge_pat <= (1 << cnt); merge_pat++)
for (inc_pat = 0; inc_pat <= (1 << cnt); inc_pat++)
for (order = 0; order < 2; order++)
{
struct llx_list list;
struct element **elems;
struct llx **elemp;
int *values;
int mid;
int i, j, k;
allocate_elements (cnt, &list, &elems, &elemp, &values);
j = 0;
for (i = k = 0; i < cnt; i++)
{
if (merge_pat & (1u << i))
elems[j++]->x = k;
if (inc_pat & (1u << i))
k++;
}
mid = j;
for (i = k = 0; i < cnt; i++)
{
if (!(merge_pat & (1u << i)))
elems[j++]->x = k;
if (inc_pat & (1u << i))
k++;
}
check (cnt == j);
if (order == 0)
{
for (i = 0; i < cnt; i++)
elems[i]->y = i;
}
else
{
for (i = 0; i < mid; i++)
elems[i]->y = 100 + i;
for (i = mid; i < cnt; i++)
elems[i]->y = i;
}
j = 0;
for (i = k = 0; i < cnt; i++)
{
values[j++] = k;
if (inc_pat & (1u << i))
k++;
}
check (cnt == j);
if (order == 0)
llx_merge (elemp[0], elemp[mid], elemp[mid], elemp[cnt],
compare_elements, &aux_data);
else
llx_merge (elemp[mid], elemp[cnt], elemp[0], elemp[mid],
compare_elements, &aux_data);
check_list_contents (&list, values, cnt);
check (llx_is_sorted (llx_head (&list), llx_null (&list),
compare_elements_x_y, &aux_data));
free_elements (cnt, &list, elems, elemp, values);
}
}
/* Tests llx_sort on all permutations up to a maximum number of
elements. */
static void
test_sort_exhaustive (void)
{
const int max_elems = 8;
int cnt;
for (cnt = 0; cnt <= max_elems; cnt++)
{
struct llx_list list;
struct element **elems;
int *values;
struct element **perm_elems;
int *perm_values;
size_t perm_cnt;
allocate_ascending (cnt, &list, &elems, NULL, &values);
allocate_elements (cnt, NULL, &perm_elems, NULL, &perm_values);
perm_cnt = 1;
while (llx_next_permutation (llx_head (&list), llx_null (&list),
compare_elements, &aux_data))
{
struct llx_list perm_list;
int j;
extract_values (&list, perm_values, cnt);
llx_init (&perm_list);
for (j = 0; j < cnt; j++)
{
perm_elems[j]->x = perm_values[j];
llx_push_tail (&perm_list, perm_elems[j], &llx_malloc_mgr);
}
llx_sort (llx_head (&perm_list), llx_null (&perm_list),
compare_elements, &aux_data);
check_list_contents (&perm_list, values, cnt);
check (llx_is_sorted (llx_head (&perm_list), llx_null (&perm_list),
compare_elements, &aux_data));
llx_destroy (&perm_list, NULL, NULL, &llx_malloc_mgr);
perm_cnt++;
}
check (perm_cnt == factorial (cnt));
free_elements (cnt, &list, elems, NULL, values);
free_elements (cnt, NULL, perm_elems, NULL, perm_values);
}
}
/* Tests that llx_sort is stable in the presence of equal
values. */
static void
test_sort_stable (void)
{
const int max_elems = 6;
int cnt, inc_pat;
for (cnt = 0; cnt <= max_elems; cnt++)
for (inc_pat = 0; inc_pat <= 1 << cnt; inc_pat++)
{
struct llx_list list;
struct element **elems;
int *values;
struct element **perm_elems;
int *perm_values;
size_t perm_cnt;
int i, j;
allocate_elements (cnt, &list, &elems, NULL, &values);
allocate_elements (cnt, NULL, &perm_elems, NULL, &perm_values);
j = 0;
for (i = 0; i < cnt; i++)
{
elems[i]->x = values[i] = j;
if (inc_pat & (1 << i))
j++;
elems[i]->y = i;
}
perm_cnt = 1;
while (llx_next_permutation (llx_head (&list), llx_null (&list),
compare_elements_y, &aux_data))
{
struct llx_list perm_list;
extract_values (&list, perm_values, cnt);
llx_init (&perm_list);
for (i = 0; i < cnt; i++)
{
perm_elems[i]->x = perm_values[i];
perm_elems[i]->y = i;
llx_push_tail (&perm_list, perm_elems[i], &llx_malloc_mgr);
}
llx_sort (llx_head (&perm_list), llx_null (&perm_list),
compare_elements, &aux_data);
check_list_contents (&perm_list, values, cnt);
check (llx_is_sorted (llx_head (&perm_list), llx_null (&perm_list),
compare_elements_x_y, &aux_data));
llx_destroy (&perm_list, NULL, NULL, &llx_malloc_mgr);
perm_cnt++;
}
check (perm_cnt == factorial (cnt));
free_elements (cnt, &list, elems, NULL, values);
free_elements (cnt, NULL, perm_elems, NULL, perm_values);
}
}
/* Tests that llx_sort does not disturb elements outside the
range sorted. */
static void
test_sort_subset (void)
{
const int max_elems = 8;
int cnt, r0, r1, repeat;
for (cnt = 0; cnt <= max_elems; cnt++)
for (repeat = 0; repeat < 100; repeat++)
for (r0 = 0; r0 <= cnt; r0++)
for (r1 = r0; r1 <= cnt; r1++)
{
struct llx_list list;
struct element **elems;
struct llx **elemp;
int *values;
allocate_random (cnt, &list, &elems, &elemp, &values);
qsort (&values[r0], r1 - r0, sizeof *values, compare_ints_noaux);
llx_sort (elemp[r0], elemp[r1], compare_elements, &aux_data);
check_list_contents (&list, values, cnt);
free_elements (cnt, &list, elems, elemp, values);
}
}
/* Tests that llx_sort works with large lists. */
static void
test_sort_big (void)
{
const int max_elems = 1024;
int cnt;
for (cnt = 0; cnt < max_elems; cnt++)
{
struct llx_list list;
struct element **elems;
int *values;
allocate_random (cnt, &list, &elems, NULL, &values);
qsort (values, cnt, sizeof *values, compare_ints_noaux);
llx_sort (llx_head (&list), llx_null (&list), compare_elements, &aux_data);
check_list_contents (&list, values, cnt);
free_elements (cnt, &list, elems, NULL, values);
}
}
/* Tests llx_unique. */
static void
test_unique (void)
{
const int max_elems = 10;
int *ascending = xnmalloc (max_elems, sizeof *ascending);
int cnt, inc_pat, i, j, unique_values;
for (i = 0; i < max_elems; i++)
ascending[i] = i;
for (cnt = 0; cnt < max_elems; cnt++)
for (inc_pat = 0; inc_pat < (1 << cnt); inc_pat++)
{
struct llx_list list, dups;
struct element **elems;
int *values;
allocate_elements (cnt, &list, &elems, NULL, &values);
j = unique_values = 0;
for (i = 0; i < cnt; i++)
{
unique_values = j + 1;
elems[i]->x = values[i] = j;
if (inc_pat & (1 << i))
j++;
}
check_list_contents (&list, values, cnt);
llx_init (&dups);
check (llx_unique (llx_head (&list), llx_null (&list),
llx_null (&dups),
compare_elements, &aux_data,
&llx_malloc_mgr)
== (size_t) unique_values);
check_list_contents (&list, ascending, unique_values);
llx_splice (llx_null (&list), llx_head (&dups), llx_null (&dups));
llx_sort (llx_head (&list), llx_null (&list), compare_elements, &aux_data);
check_list_contents (&list, values, cnt);
llx_destroy (&dups, NULL, NULL, &llx_malloc_mgr);
free_elements (cnt, &list, elems, NULL, values);
}
free (ascending);
}
/* Tests llx_sort_unique. */
static void
test_sort_unique (void)
{
const int max_elems = 7;
int cnt, inc_pat;
for (cnt = 0; cnt <= max_elems; cnt++)
for (inc_pat = 0; inc_pat <= 1 << cnt; inc_pat++)
{
struct llx_list list;
struct element **elems;
int *values;
struct element **perm_elems;
int *perm_values;
int unique_cnt;
int *unique_values;
size_t perm_cnt;
int i, j;
allocate_elements (cnt, &list, &elems, NULL, &values);
allocate_elements (cnt, NULL, &perm_elems, NULL, &perm_values);
j = unique_cnt = 0;
for (i = 0; i < cnt; i++)
{
elems[i]->x = values[i] = j;
unique_cnt = j + 1;
if (inc_pat & (1 << i))
j++;
}
unique_values = xnmalloc (unique_cnt, sizeof *unique_values);
for (i = 0; i < unique_cnt; i++)
unique_values[i] = i;
perm_cnt = 1;
while (llx_next_permutation (llx_head (&list), llx_null (&list),
compare_elements, &aux_data))
{
struct llx_list perm_list;
extract_values (&list, perm_values, cnt);
llx_init (&perm_list);
for (i = 0; i < cnt; i++)
{
perm_elems[i]->x = perm_values[i];
perm_elems[i]->y = i;
llx_push_tail (&perm_list, perm_elems[i], &llx_malloc_mgr);
}
llx_sort_unique (llx_head (&perm_list), llx_null (&perm_list), NULL,
compare_elements, &aux_data,
&llx_malloc_mgr);
check_list_contents (&perm_list, unique_values, unique_cnt);
check (llx_is_sorted (llx_head (&perm_list), llx_null (&perm_list),
compare_elements_x_y, &aux_data));
llx_destroy (&perm_list, NULL, NULL, &llx_malloc_mgr);
perm_cnt++;
}
check (perm_cnt == expected_perms (values, cnt));
free_elements (cnt, &list, elems, NULL, values);
free_elements (cnt, NULL, perm_elems, NULL, perm_values);
free (unique_values);
}
}
/* Tests llx_insert_ordered. */
static void
test_insert_ordered (void)
{
const int max_elems = 6;
int cnt, inc_pat;
for (cnt = 0; cnt <= max_elems; cnt++)
for (inc_pat = 0; inc_pat <= 1 << cnt; inc_pat++)
{
struct llx_list list;
struct element **elems;
int *values;
struct element **perm_elems;
int *perm_values;
size_t perm_cnt;
int i, j;
allocate_elements (cnt, &list, &elems, NULL, &values);
allocate_elements (cnt, NULL, &perm_elems, NULL, &perm_values);
j = 0;
for (i = 0; i < cnt; i++)
{
elems[i]->x = values[i] = j;
if (inc_pat & (1 << i))
j++;
elems[i]->y = i;
}
perm_cnt = 1;
while (llx_next_permutation (llx_head (&list), llx_null (&list),
compare_elements_y, &aux_data))
{
struct llx_list perm_list;
extract_values (&list, perm_values, cnt);
llx_init (&perm_list);
for (i = 0; i < cnt; i++)
{
perm_elems[i]->x = perm_values[i];
perm_elems[i]->y = i;
llx_insert_ordered (llx_head (&perm_list),
llx_null (&perm_list),
perm_elems[i],
compare_elements, &aux_data,
&llx_malloc_mgr);
}
check (llx_is_sorted (llx_head (&perm_list), llx_null (&perm_list),
compare_elements_x_y, &aux_data));
llx_destroy (&perm_list, NULL, NULL, &llx_malloc_mgr);
perm_cnt++;
}
check (perm_cnt == factorial (cnt));
free_elements (cnt, &list, elems, NULL, values);
free_elements (cnt, NULL, perm_elems, NULL, perm_values);
}
}
/* Tests llx_partition. */
static void
test_partition (void)
{
const int max_elems = 10;
int cnt;
unsigned int pbase;
int r0, r1;
for (cnt = 0; cnt < max_elems; cnt++)
for (r0 = 0; r0 <= cnt; r0++)
for (r1 = r0; r1 <= cnt; r1++)
for (pbase = 0; pbase <= (1u << (r1 - r0)); pbase++)
{
struct llx_list list;
struct element **elems;
struct llx **elemp;
int *values;
unsigned int pattern = pbase << r0;
int i, j;
int first_false;
struct llx *part_llx;
allocate_ascending (cnt, &list, &elems, &elemp, &values);
/* Check that llx_find_partition works okay in every
case. We use it after partitioning, too, but that
only tests cases where it returns non-null. */
for (i = r0; i < r1; i++)
if (!(pattern & (1u << i)))
break;
j = i;
for (; i < r1; i++)
if (pattern & (1u << i))
break;
part_llx = llx_find_partition (elemp[r0], elemp[r1],
pattern_pred,
&pattern);
if (i == r1)
check (part_llx == elemp[j]);
else
check (part_llx == NULL);
/* Figure out expected results. */
j = 0;
first_false = -1;
for (i = 0; i < r0; i++)
values[j++] = i;
for (i = r0; i < r1; i++)
if (pattern & (1u << i))
values[j++] = i;
for (i = r0; i < r1; i++)
if (!(pattern & (1u << i)))
{
if (first_false == -1)
first_false = i;
values[j++] = i;
}
if (first_false == -1)
first_false = r1;
for (i = r1; i < cnt; i++)
values[j++] = i;
check (j == cnt);
/* Partition and check for expected results. */
check (llx_partition (elemp[r0], elemp[r1],
pattern_pred, &pattern)
== elemp[first_false]);
check (llx_find_partition (elemp[r0], elemp[r1],
pattern_pred, &pattern)
== elemp[first_false]);
check_list_contents (&list, values, cnt);
check ((int) llx_count (&list) == cnt);
free_elements (cnt, &list, elems, elemp, values);
}
}
/* Tests that allocation failure is gracefully handled. */
static void
test_allocation_failure (void)
{
struct llx_list list;
llx_init (&list);
check (llx_push_head (&list, NULL, &llx_null_mgr) == NULL);
check (llx_push_tail (&list, NULL, &llx_null_mgr) == NULL);
check (llx_insert (llx_null (&list), NULL, &llx_null_mgr) == NULL);
check_list_contents (&list, NULL, 0);
}
/* Main program. */
struct test
{
const char *name;
const char *description;
void (*function) (void);
};
static const struct test tests[] =
{
{
"push-pop",
"push/pop",
test_push_pop
},
{
"insert-remove",
"insert/remove",
test_insert_remove
},
{
"swap",
"swap",
test_swap
},
{
"swap-range",
"swap_range",
test_swap_range
},
{
"remove-range",
"remove_range",
test_remove_range
},
{
"remove-equal",
"remove_equal",
test_remove_equal
},
{
"remove-if",
"remove_if",
test_remove_if
},
{
"find-equal",
"find_equal",
test_find_equal
},
{
"find",
"find",
test_find
},
{
"find-if",
"find_if",
test_find_if
},
{
"find-adjacent-equal",
"find_adjacent_equal",
test_find_adjacent_equal
},
{
"count-range",
"count_range",
test_count_range
},
{
"count-equal",
"count_equal",
test_count_equal
},
{
"count-if",
"count_if",
test_count_if
},
{
"min-max",
"min/max",
test_min_max
},
{
"lexicographical-compare-3way",
"lexicographical_compare_3way",
test_lexicographical_compare_3way
},
{
"apply",
"apply",
test_apply
},
{
"destroy",
"destroy",
test_destroy
},
{
"reverse",
"reverse",
test_reverse
},
{
"permutations-no-dups",
"permutations (no dups)",
test_permutations_no_dups
},
{
"permutations-with-dups",
"permutations (with dups)",
test_permutations_with_dups
},
{
"merge-no-dups",
"merge (no dups)",
test_merge_no_dups
},
{
"merge-with-dups",
"merge (with dups)",
test_merge_with_dups
},
{
"sort-exhaustive",
"sort (exhaustive)",
test_sort_exhaustive
},
{
"sort-stable",
"sort (stability)",
test_sort_stable
},
{
"sort-subset",
"sort (subset)",
test_sort_subset
},
{
"sort-big",
"sort (big)",
test_sort_big
},
{
"unique",
"unique",
test_unique
},
{
"sort-unique",
"sort_unique",
test_sort_unique
},
{
"insert-ordered",
"insert_ordered",
test_insert_ordered
},
{
"partition",
"partition",
test_partition
},
{
"allocation-failure",
"allocation failure",
test_allocation_failure
},
};
enum { N_TESTS = sizeof tests / sizeof *tests };
int
main (int argc, char *argv[])
{
int i;
if (argc != 2)
{
fprintf (stderr, "exactly one argument required; use --help for help\n");
return EXIT_FAILURE;
}
else if (!strcmp (argv[1], "--help"))
{
printf ("%s: test doubly linked list of pointers (llx) library\n"
"usage: %s TEST-NAME\n"
"where TEST-NAME is one of the following:\n",
argv[0], argv[0]);
for (i = 0; i < N_TESTS; i++)
printf (" %s\n %s\n", tests[i].name, tests[i].description);
return 0;
}
else
{
for (i = 0; i < N_TESTS; i++)
if (!strcmp (argv[1], tests[i].name))
{
tests[i].function ();
return 0;
}
fprintf (stderr, "unknown test %s; use --help for help\n", argv[1]);
return EXIT_FAILURE;
}
}
pspp-0.8.5/tests/libpspp/encoding-guesser-test.c 0000644 0001750 0001750 00000005440 12470243701 016627 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2011 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
#include
#include "libpspp/encoding-guesser.h"
#include
#include
#include
#include
#include "libpspp/i18n.h"
#include "gl/error.h"
#include "gl/progname.h"
#include "gl/xalloc.h"
static void
usage (void)
{
printf ("usage: %s [OTHER_ENCODING] [BUFSIZE] < INPUT\n"
"where OTHER_ENCODING is the fallback encoding (default taken\n"
" from the current locale)\n"
" and BUFSIZE is the buffer size (default %d)\n",
program_name, ENCODING_GUESS_MIN);
exit (0);
}
int
main (int argc, char *argv[])
{
const char *encoding, *guess;
char *buffer;
int bufsize;
size_t n;
int i;
set_program_name (argv[0]);
i18n_init ();
encoding = NULL;
bufsize = 0;
for (i = 1; i < argc; i++)
{
const char *arg = argv[i];
if (!strcmp (arg, "--help"))
usage ();
else if (isdigit (arg[0]) && bufsize == 0)
{
bufsize = atoi (arg);
if (bufsize < ENCODING_GUESS_MIN)
error (1, 0, "buffer size %s is less than minimum size %d",
arg, ENCODING_GUESS_MIN);
}
else if (!isdigit (arg[0]) && encoding == NULL)
encoding = arg;
else
error (1, 0, "bad syntax; use `%s --help' for help", program_name);
}
if (bufsize == 0)
bufsize = ENCODING_GUESS_MIN;
buffer = xmalloc (bufsize);
n = fread (buffer, 1, bufsize, stdin);
guess = encoding_guess_head_encoding (encoding, buffer, n);
if (!strcmp (guess, "ASCII") && encoding_guess_encoding_is_auto (encoding))
while (n > 0)
{
size_t n_ascii = encoding_guess_count_ascii (buffer, n);
if (n == n_ascii)
n = fread (buffer, 1, bufsize, stdin);
else
{
memmove (buffer, buffer + n_ascii, n - n_ascii);
n -= n_ascii;
n += fread (buffer + n, 1, bufsize - n, stdin);
guess = encoding_guess_tail_encoding (encoding, buffer, n);
break;
}
}
puts (guess);
free (buffer);
return 0;
}
pspp-0.8.5/tests/libpspp/sparse-xarray-test.c 0000644 0001750 0001750 00000050263 12470243701 016172 0000000 0000000 /* PSPP - a program for statistical analysis.
Copyright (C) 2007, 2009 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
/* This is a test program for the sparse array routines defined
in sparse-xarray.c. */
#ifdef HAVE_CONFIG_H
#include
#endif
#include
#include