%PDF- %PDF-
| Direktori : /data/old/usr/share/texlive/texmf-dist/doc/latex/oberdiek/test/ |
| Current File : //data/old/usr/share/texlive/texmf-dist/doc/latex/oberdiek/test/ltxcmds-test-ifempty.tex |
%%
%% This is file `ltxcmds-test-ifempty.tex',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% ltxcmds.dtx (with options: `test-ifempty')
%%
%% This is a generated file.
%%
%% Project: ltxcmds
%% Version: 2011/11/09 v1.22
%%
%% Copyright (C) 2009-2011 by
%% Heiko Oberdiek <heiko.oberdiek at googlemail.com>
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
%% version 1.3c of this license or (at your option) any later
%% version. This version of this license is in
%% http://www.latex-project.org/lppl/lppl-1-3c.txt
%% and the latest version of this license is in
%% http://www.latex-project.org/lppl.txt
%% and version 1.3 or later is part of all distributions of
%% LaTeX version 2005/12/01 or later.
%%
%% This work has the LPPL maintenance status "maintained".
%%
%% This Current Maintainer of this work is Heiko Oberdiek.
%%
%% The Base Interpreter refers to any `TeX-Format',
%% because some files are installed in TDS:tex/generic//.
%%
%% This work consists of the main source file ltxcmds.dtx
%% and the derived files
%% ltxcmds.sty, ltxcmds.pdf, ltxcmds.ins, ltxcmds.drv,
%% ltxcmds-test1.tex, ltxcmds-test-gobble.tex,
%% ltxcmds-test-ifempty.tex, ltxcmds-test-zapspace.tex,
%% ltxcmds-test-ifboxempty.tex, ltxcmds-test-nextchar.tex,
%% ltxcmds-test-carcdr.tex.
%%
\catcode`\{=1 %
\catcode`\}=2 %
\catcode`\#=6 %
\catcode`\@=11 %
\errorcontextlines=1000 %
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname RequirePackage\endcsname\relax
\input ltxcmds.sty\relax
\else
\RequirePackage{ltxcmds}[2011/11/09]%
\fi
\def\msg#{\immediate\write16}
\def\TestY{\Y}
\def\TestN{\N}
\msg{* \string\ltx@ifempty}
\long\def\test#1{%
\begingroup
% Calculate expected test result via macro definition
\def\Stuff{#1}%
\ifx\Stuff\ltx@empty
\def\StuffEmpty{\Y}%
\else
\def\StuffEmpty{\N}%
\fi
% Test \ltx@ifempty
\expandafter\expandafter\expandafter\def
\expandafter\expandafter\expandafter\TestEmpty
\expandafter\expandafter\expandafter{%
\ltx@ifempty{#1}{\Y}{\N}%
}%
\ifx\StuffEmpty\TestEmpty
\msg{* Test OK}%
\else
\ltx@IfUndefined{detokenize}{}{%
\msg{Stuff: [\detokenize{\Stuff}]}%
}%
\errmessage{Test failed!}%
\fi
\endgroup
}
\test{}
\test{a}
\test{abc}
\test{\par}
\test{ }
\test{\if}
\test{{\if}}
\test{\else}
\test{{\else}}
\test{\fi}
\test{{}\fi}
\test{\or\ifcase}
\test{{}}
\test{{a}}
\test{{}abc}
\test{{\par}}
\test{{}\par}
\def\SpaceTwo#1{%
\def\SpaceTwo{#1#1}%
}\SpaceTwo{ }
\msg{* \string\ltx@ifblank}
\long\def\test#1{%
\begingroup
% Calculate expected test result via macro definition
\def\Stuff{#1}%
\ifx\Stuff\ltx@empty
\def\StuffEmpty{\Y}%
\else
\ifx\Stuff\ltx@space
\def\StuffEmpty{\Y}%
\else
\ifx\Stuff\SpaceTwo
\def\StuffEmpty{\Y}%
\else
\def\StuffEmpty{\N}%
\fi
\fi
\fi
% Test \ltx@ifblank
\expandafter\expandafter\expandafter\def
\expandafter\expandafter\expandafter\TestEmpty
\expandafter\expandafter\expandafter{%
\ltx@ifblank{#1}{\Y}{\N}%
}%
\ifx\StuffEmpty\TestEmpty
\msg{* Test OK}%
\else
\ltx@IfUndefined{detokenize}{}{%
\msg{Stuff: [\detokenize{\Stuff}]}%
}%
\errmessage{Test failed!}%
\fi
\endgroup
}
\test{}
\test{a}
\test{\if}
\test{\else}
\test{\fi}
\test{ \fi}
\test{\par}
\test{ \par}
\test{{}}
\test{ {}}
\def\x#1{%
\test{#1#1}%
\test{#1#1{}}%
\test{#1#1\par}%
\test{#1#1\else}%
}\x{ }
\csname @@end\endcsname\end
\endinput
%%
%% End of file `ltxcmds-test-ifempty.tex'.