Mailing List Archive

[6.0] 21ec091a0 doc: Add varnishtest macro syntax and built-in macros
commit 21ec091a03b18a8ecb68ed330f551237e7bd00ac
Author: Dridi Boukelmoune <dridi.boukelmoune@gmail.com>
Date: Thu Jul 1 12:59:33 2021 +0200

doc: Add varnishtest macro syntax and built-in macros

diff --git a/doc/sphinx/reference/vtc.rst b/doc/sphinx/reference/vtc.rst
index 876b80900..30d53cf82 100644
--- a/doc/sphinx/reference/vtc.rst
+++ b/doc/sphinx/reference/vtc.rst
@@ -52,6 +52,64 @@ being the command and the following ones being its arguments. To continue over
to a new line without breaking the argument string, you can escape the newline
character (\\n) with a backslash (\\).

+MACROS
+======
+
+When a string is processed, macro expansion is performed. Macros are in the
+form ``${<name>[,<args>...]}``, they have a name followed by an optional
+comma- or space-separated list of arguments. Leading and trailing spaces are
+ignored.
+
+The macros ``${foo,bar,baz}`` and ``${ foo bar baz }`` are equivalent. If an
+argument contains a space or a comma, arguments can be quoted. For example the
+macro ``${foo,"bar,baz"}`` gives one argument ``bar,baz`` to the macro called
+``foo``.
+
+Unless documented otherwise, all macros are simple macros that don't take
+arguments.
+
+Built-in macros
+---------------
+
+``${bad_backend}``
+ A socket address that will reliably never accept connections.
+
+``${bad_ip}``
+ An unlikely IPv4 address.
+
+``${date}``
+ The current date and time formatted for HTTP.
+
+``${listen_addr}``
+ The default listen address various components use, by default a random
+ port on localhost.
+
+``${localhost}``
+ The first IP address that resolves to "localhost".
+
+``${pwd}``
+ The working directory from which ``varnishtest`` was executed.
+
+``${string,<action>[,<args>...]}``
+ The ``string`` macro is the entry point for text generation, it takes
+ a specialized action with each its own set of arguments.
+
+``${string,repeat,<uint>,<str>}``
+ Repeat ``uint`` times the string ``str``.
+
+``${testdir}``
+ The directory containing the VTC script of the ongoing test case
+ execution.
+
+``${tmpdir}``
+ The dedicated working directory for the ongoing test case execution,
+ which happens to also be the current working directory. Useful when an
+ absolute path to the working directory is needed.
+
+``${topbuild}``
+ Only present when the ``-i`` option is used, to work on Varnish itself
+ instead of a regular installation.
+
SYNTAX
======

_______________________________________________
varnish-commit mailing list
varnish-commit@varnish-cache.org
https://www.varnish-cache.org/lists/mailman/listinfo/varnish-commit