aboutsummaryrefslogtreecommitdiffstats
path: root/libpathod
diff options
context:
space:
mode:
Diffstat (limited to 'libpathod')
-rw-r--r--libpathod/app.py9
-rw-r--r--libpathod/language.py9
-rw-r--r--libpathod/templates/request_preview.html4
-rw-r--r--libpathod/templates/response_preview.html4
4 files changed, 10 insertions, 16 deletions
diff --git a/libpathod/app.py b/libpathod/app.py
index 38d0be33..e073921c 100644
--- a/libpathod/app.py
+++ b/libpathod/app.py
@@ -108,7 +108,6 @@ def _preview(is_request):
section = "main",
syntaxerror = None,
error = None,
- pauses = None
)
if not spec.strip():
args["error"] = "Can't parse an empty spec."
@@ -125,16 +124,16 @@ def _preview(is_request):
return render(template, False, **args)
s = cStringIO.StringIO()
- args["pauses"] = r.preview_safe()
+ safe = r.preview_safe()
- c = app.config["pathod"].check_policy(r, app.config["pathod"].request_settings)
+ c = app.config["pathod"].check_policy(safe, app.config["pathod"].request_settings)
if c:
args["error"] = c
return render(template, False, **args)
if is_request:
- r.serve(s, app.config["pathod"].request_settings, host="example.com")
+ safe.serve(s, app.config["pathod"].request_settings, host="example.com")
else:
- r.serve(s, app.config["pathod"].request_settings)
+ safe.serve(s, app.config["pathod"].request_settings)
args["output"] = utils.escape_unprintables(s.getvalue())
return render(template, False, **args)
diff --git a/libpathod/language.py b/libpathod/language.py
index f7909b81..ba462abe 100644
--- a/libpathod/language.py
+++ b/libpathod/language.py
@@ -167,7 +167,7 @@ class FileGenerator:
class _Token(object):
"""
- A specification token.
+ A specification token. Tokens are immutable.
"""
__metaclass__ = abc.ABCMeta
@abc.abstractmethod
@@ -646,11 +646,10 @@ class _Message(object):
def preview_safe(self):
"""
- Modify this message to be safe for previews. Returns a list of elided actions.
+ Return a copy of this message that issafe for previews.
"""
- pauses = [i for i in self.actions if isinstance(i, PauseAt)]
- #self.actions = [i for i in self.actions if not isinstance(i, PauseAt)]
- return pauses
+ tokens = [i for i in self.tokens if not isinstance(i, PauseAt)]
+ return self.__class__(tokens)
def maximum_length(self, settings, request_host):
"""
diff --git a/libpathod/templates/request_preview.html b/libpathod/templates/request_preview.html
index e4efd9d0..db08580e 100644
--- a/libpathod/templates/request_preview.html
+++ b/libpathod/templates/request_preview.html
@@ -40,9 +40,7 @@
</div>
<div class="span10">
<pre>{{ output }}</pre>
- {% if pauses %}
- <p>Note: pauses are skipped when generating previews!</p>
- {% endif %}
+ <p>Note: pauses are skipped when generating previews!</p>
</div>
</div>
{% endif %}
diff --git a/libpathod/templates/response_preview.html b/libpathod/templates/response_preview.html
index c725bcf8..bb72513d 100644
--- a/libpathod/templates/response_preview.html
+++ b/libpathod/templates/response_preview.html
@@ -40,9 +40,7 @@
</div>
<div class="span10">
<pre>{{ output }}</pre>
- {% if pauses %}
- <p>Note: pauses are skipped when generating previews!</p>
- {% endif %}
+ <p>Note: pauses are skipped when generating previews!</p>
</div>
</div>
{% endif %}