summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/oberdiek/test/ltxcmds-test-ifempty.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/latex/oberdiek/test/ltxcmds-test-ifempty.tex')
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/test/ltxcmds-test-ifempty.tex152
1 files changed, 152 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/oberdiek/test/ltxcmds-test-ifempty.tex b/Master/texmf-dist/doc/latex/oberdiek/test/ltxcmds-test-ifempty.tex
new file mode 100644
index 00000000000..b4b5c00b90e
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/oberdiek/test/ltxcmds-test-ifempty.tex
@@ -0,0 +1,152 @@
+%%
+%% 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.
+%%
+%% 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.
+%%
+\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/03/16]%
+\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'.