<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>
<channel>
	<title>Comments on: Universal Manifest Format For Unit Tests (part 2)</title>
	<atom:link href="http://alice.nodelman.net/blog/post/universal-manifest-format-for-unit-tests-part-2/feed/" rel="self" type="application/rss+xml" />
	<link>http://alice.nodelman.net/blog/post/universal-manifest-format-for-unit-tests-part-2/</link>
	<description>infrequent updates and long delays</description>
	<pubDate>Sun, 20 May 2012 20:46:29 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Robert Kaiser</title>
		<link>http://alice.nodelman.net/blog/post/universal-manifest-format-for-unit-tests-part-2/comment-page-1/#comment-16140</link>
		<dc:creator>Robert Kaiser</dc:creator>
		<pubDate>Wed, 19 May 2010 16:18:37 +0000</pubDate>
		<guid isPermaLink="false">http://alice.nodelman.net/blog/?p=92#comment-16140</guid>
		<description>What would be really good is to have some possibility to say "if the pref foo is (not) true/2/'bar'" in the skip-if or random-if values.
Reftests can currently do that, and we have somewhat strangely done things in other tests for that, like bailing out early from a test when a pref is (not) matched. It would be nice to have a generic way to set this.</description>
		<content:encoded><![CDATA[<p>What would be really good is to have some possibility to say &#8220;if the pref foo is (not) true/2/&#8217;bar&#8217;&#8221; in the skip-if or random-if values.<br />
Reftests can currently do that, and we have somewhat strangely done things in other tests for that, like bailing out early from a test when a pref is (not) matched. It would be nice to have a generic way to set this.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David Baron</title>
		<link>http://alice.nodelman.net/blog/post/universal-manifest-format-for-unit-tests-part-2/comment-page-1/#comment-16062</link>
		<dc:creator>David Baron</dc:creator>
		<pubDate>Sun, 16 May 2010 22:17:34 +0000</pubDate>
		<guid isPermaLink="false">http://alice.nodelman.net/blog/?p=92#comment-16062</guid>
		<description>I think the skip, fails, etc. conditions should remain JS.  That keeps it clear what's an &#38;&#38; vs. an &#124;&#124;.

We can use significantly shorter variable names (the current MOZ_WIDGET_TOOLKIT is for backwards compatibility).  However, I'm wary of making them too short.  Currently things are based on widget because that's the most likely cause of platform-specific failures in reftests, which mostly test layout and graphics.  But if we start using this for other tests, that will likely change.  And once we have a qt build (for mobile) there's a real difference between "this fails with gtk widgets" and "this fails on Linux".

I'd prefer something like:
  fails: true
or
  fails: widget == "cocoa"</description>
		<content:encoded><![CDATA[<p>I think the skip, fails, etc. conditions should remain JS.  That keeps it clear what&#8217;s an &amp;&amp; vs. an ||.</p>
<p>We can use significantly shorter variable names (the current MOZ_WIDGET_TOOLKIT is for backwards compatibility).  However, I&#8217;m wary of making them too short.  Currently things are based on widget because that&#8217;s the most likely cause of platform-specific failures in reftests, which mostly test layout and graphics.  But if we start using this for other tests, that will likely change.  And once we have a qt build (for mobile) there&#8217;s a real difference between &#8220;this fails with gtk widgets&#8221; and &#8220;this fails on Linux&#8221;.</p>
<p>I&#8217;d prefer something like:<br />
  fails: true<br />
or<br />
  fails: widget == &#8220;cocoa&#8221;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: alice</title>
		<link>http://alice.nodelman.net/blog/post/universal-manifest-format-for-unit-tests-part-2/comment-page-1/#comment-16027</link>
		<dc:creator>alice</dc:creator>
		<pubDate>Sat, 15 May 2010 20:22:55 +0000</pubDate>
		<guid isPermaLink="false">http://alice.nodelman.net/blog/?p=92#comment-16027</guid>
		<description>@Boris - the indentation is not required by json, I've included it in the examples to make things more readable.</description>
		<content:encoded><![CDATA[<p>@Boris - the indentation is not required by json, I&#8217;ve included it in the examples to make things more readable.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rob Sayre</title>
		<link>http://alice.nodelman.net/blog/post/universal-manifest-format-for-unit-tests-part-2/comment-page-1/#comment-16018</link>
		<dc:creator>Rob Sayre</dc:creator>
		<pubDate>Sat, 15 May 2010 14:42:29 +0000</pubDate>
		<guid isPermaLink="false">http://alice.nodelman.net/blog/?p=92#comment-16018</guid>
		<description>I like this plan. YAML is nicer for humans to write than JSON, has plenty of parser support, and it has comments. I would go with that instead.</description>
		<content:encoded><![CDATA[<p>I like this plan. YAML is nicer for humans to write than JSON, has plenty of parser support, and it has comments. I would go with that instead.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Robert O'Callahan</title>
		<link>http://alice.nodelman.net/blog/post/universal-manifest-format-for-unit-tests-part-2/comment-page-1/#comment-16013</link>
		<dc:creator>Robert O'Callahan</dc:creator>
		<pubDate>Sat, 15 May 2010 11:41:56 +0000</pubDate>
		<guid isPermaLink="false">http://alice.nodelman.net/blog/?p=92#comment-16013</guid>
		<description>How about replacing the token 'files' with the type, use an extended JSON that allows the value to be an array and allows comments, and don't indent array elements, so one could write

[
{"==": ["file1.html", "file1-ref.html"]},
{"==": ["file2.html", "file2-ref.html"]},
// {"==": ["file3.html", "file3-ref.html"]},
{"==": ["file4.html", "file4-ref.html"]},
]

This would keep common cases on one line without indentation, which I think would be a big help.</description>
		<content:encoded><![CDATA[<p>How about replacing the token &#8216;files&#8217; with the type, use an extended JSON that allows the value to be an array and allows comments, and don&#8217;t indent array elements, so one could write</p>
<p>[<br />
{"==": ["file1.html", "file1-ref.html"]},<br />
{&#8221;==&#8221;: ["file2.html", "file2-ref.html"]},<br />
// {&#8221;==&#8221;: ["file3.html", "file3-ref.html"]},<br />
{&#8221;==&#8221;: ["file4.html", "file4-ref.html"]},<br />
]</p>
<p>This would keep common cases on one line without indentation, which I think would be a big help.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Boris</title>
		<link>http://alice.nodelman.net/blog/post/universal-manifest-format-for-unit-tests-part-2/comment-page-1/#comment-16000</link>
		<dc:creator>Boris</dc:creator>
		<pubDate>Sat, 15 May 2010 02:23:21 +0000</pubDate>
		<guid isPermaLink="false">http://alice.nodelman.net/blog/?p=92#comment-16000</guid>
		<description>So for the common case this is a lot more typing than the current reftest format, actually.  Worse yet, there's indentation involved, which can very easily get pretty wacky unless one is careful (which increases the time it takes to add entries even more).  Do we have any plan for handling that?</description>
		<content:encoded><![CDATA[<p>So for the common case this is a lot more typing than the current reftest format, actually.  Worse yet, there&#8217;s indentation involved, which can very easily get pretty wacky unless one is careful (which increases the time it takes to add entries even more).  Do we have any plan for handling that?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joel Maher</title>
		<link>http://alice.nodelman.net/blog/post/universal-manifest-format-for-unit-tests-part-2/comment-page-1/#comment-15997</link>
		<dc:creator>Joel Maher</dc:creator>
		<pubDate>Sat, 15 May 2010 01:35:03 +0000</pubDate>
		<guid isPermaLink="false">http://alice.nodelman.net/blog/?p=92#comment-15997</guid>
		<description>This is really cool.  I think the &#38;&#38; and &#124;&#124; stuff is in logic like this:
 "skip-if": ["maemo", "android"],

But this is ambiguous as I could assume it is an &#124;&#124; condition, yet how would we solve an &#38;&#38; condition.  I found this exact problem while toying with filtering for fennec mochitests (https://elvis314.wordpress.com/2010/04/27/filtering-mochitests-for-remote-testing/)  I ended up coding my implementation to be &#38;&#38; which is not always the most useful.  

One thing that I would like to know is how would mochitest format look like?  Currently this is a os.walk of test_* files in a directory tree.  So with no manifest other than entries in a Makefile and using a format above, would we have:
{    "type" : "mochitest",
             "files" : ["mochifile.html"],
             "skip-if": ["isdebug"],
}</description>
		<content:encoded><![CDATA[<p>This is really cool.  I think the &amp;&amp; and || stuff is in logic like this:<br />
 &#8220;skip-if&#8221;: ["maemo", "android"],</p>
<p>But this is ambiguous as I could assume it is an || condition, yet how would we solve an &amp;&amp; condition.  I found this exact problem while toying with filtering for fennec mochitests (https://elvis314.wordpress.com/2010/04/27/filtering-mochitests-for-remote-testing/)  I ended up coding my implementation to be &amp;&amp; which is not always the most useful.  </p>
<p>One thing that I would like to know is how would mochitest format look like?  Currently this is a os.walk of test_* files in a directory tree.  So with no manifest other than entries in a Makefile and using a format above, would we have:<br />
{    &#8220;type&#8221; : &#8220;mochitest&#8221;,<br />
             &#8220;files&#8221; : ["mochifile.html"],<br />
             &#8220;skip-if&#8221;: ["isdebug"],<br />
}</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jesse Ruderman</title>
		<link>http://alice.nodelman.net/blog/post/universal-manifest-format-for-unit-tests-part-2/comment-page-1/#comment-15996</link>
		<dc:creator>Jesse Ruderman</dc:creator>
		<pubDate>Sat, 15 May 2010 01:02:45 +0000</pubDate>
		<guid isPermaLink="false">http://alice.nodelman.net/blog/?p=92#comment-15996</guid>
		<description>I like your idea of replacing "MOZ_WIDGET_TOOLKIT=='cocoa'" with "cocoa".  It would save typing, prevent errors, and make it easier to read manifest entries for tests that have complex conditions.  But that's orthogonal to the syntax of the manifest format.

I like the idea of allowing groups of tests to share a common pref or skip-condition.  We could add that to the reftest manifest format using indentation, like in Python or YAML, without changing the syntax for the normal case.

I also like the idea of using a common --filter or --manifest option across all of our test suites.  But again, that has nothing to do with the syntax.

How would your manifest format would handle conditions that require &#38;&#38; or &#124;&#124;, like the test for bug 399636 requires?  Are you planning to allow &#124;&#124; and &#38;&#38; and ! in "fails-if" and "random-if" conditions, but not arbitrary JavaScript?</description>
		<content:encoded><![CDATA[<p>I like your idea of replacing &#8220;MOZ_WIDGET_TOOLKIT==&#8217;cocoa&#8217;&#8221; with &#8220;cocoa&#8221;.  It would save typing, prevent errors, and make it easier to read manifest entries for tests that have complex conditions.  But that&#8217;s orthogonal to the syntax of the manifest format.</p>
<p>I like the idea of allowing groups of tests to share a common pref or skip-condition.  We could add that to the reftest manifest format using indentation, like in Python or YAML, without changing the syntax for the normal case.</p>
<p>I also like the idea of using a common &#8211;filter or &#8211;manifest option across all of our test suites.  But again, that has nothing to do with the syntax.</p>
<p>How would your manifest format would handle conditions that require &amp;&amp; or ||, like the test for bug 399636 requires?  Are you planning to allow || and &amp;&amp; and ! in &#8220;fails-if&#8221; and &#8220;random-if&#8221; conditions, but not arbitrary JavaScript?</p>
]]></content:encoded>
	</item>
</channel>
</rss>

