mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2024-12-28 19:10:28 +00:00
Make testcase default template more modular (#8514)
* make testcase default template more modular * exclude state/popup/export from tabList * fix state in linkcatcherActions * use "explicitState" instead of "state" for tabs macro * clean testcase-tablist code * remove unwanted tiddler * remove redundant parameters from export-filter
This commit is contained in:
parent
ec651539a6
commit
c51a233627
@ -2,91 +2,141 @@ title: $:/core/ui/testcases/DefaultTemplate
|
|||||||
code-body: yes
|
code-body: yes
|
||||||
|
|
||||||
\whitespace trim
|
\whitespace trim
|
||||||
|
|
||||||
|
\function tf.state() [<qualify "$:/state/testcase">]
|
||||||
|
|
||||||
\procedure linkcatcherActions()
|
\procedure linkcatcherActions()
|
||||||
<%if [<navigateTo>has[title]] %>
|
<%if [<navigateTo>has[title]] %>
|
||||||
<$qualify title=<<state>> name="qualifiedState">
|
<$action-setfield $tiddler=<<tf.state>> text=<<navigateTo>>/>
|
||||||
<$action-setfield $tiddler=<<qualifiedState>> text=<<navigateTo>>/>
|
|
||||||
</$qualify>
|
|
||||||
<%endif%>
|
<%endif%>
|
||||||
\end
|
\end
|
||||||
|
|
||||||
<$let
|
\procedure testcase-header()
|
||||||
state={{{ [<qualify "$:/state/testcase">] }}}
|
<div class="tc-test-case-header">
|
||||||
>
|
<h2>
|
||||||
<div class="tc-test-case-wrapper">
|
<$genesis $type={{{ [<linkTarget>!match[]then[$link]else[span]] }}} to=<<testcaseTiddler>>>
|
||||||
<div class="tc-test-case-header">
|
<%if [<testResult>!match[]] %>
|
||||||
<h2>
|
<span class={{{ tc-test-case-result-icon
|
||||||
<$genesis $type={{{ [<linkTarget>!match[]then[$link]else[span]] }}} to=<<testcaseTiddler>>>
|
[<testResult>!match[fail]then[tc-test-case-result-icon-pass]]
|
||||||
<%if [<testResult>!match[]] %>
|
[<testResult>match[fail]then[tc-test-case-result-icon-fail]]
|
||||||
<span class={{{ tc-test-case-result-icon [<testResult>!match[fail]then[tc-test-case-result-icon-pass]] [<testResult>match[fail]then[tc-test-case-result-icon-fail]] +[join[ ]] }}}>
|
+[join[ ]] }}}
|
||||||
<%if [<testResult>!match[fail]] %>
|
>
|
||||||
{{$:/core/images/done-button}}
|
<%if [<testResult>!match[fail]] %>
|
||||||
<%else%>
|
{{$:/core/images/done-button}}
|
||||||
{{$:/core/images/close-button}}
|
<%else%>
|
||||||
<%endif%>
|
{{$:/core/images/close-button}}
|
||||||
</span>
|
|
||||||
<%endif%>
|
<%endif%>
|
||||||
<$view tiddler="Description" mode="inline"/>
|
|
||||||
</$genesis>
|
|
||||||
<span class="tc-test-case-toolbar">
|
|
||||||
<$button popup=`$(state)$-more`
|
|
||||||
tooltip={{$:/language/Buttons/More/Hint}}
|
|
||||||
aria-label={{$:/language/Buttons/More/Caption}}
|
|
||||||
class="tc-btn-invisible"
|
|
||||||
selectedClass="tc-selected"
|
|
||||||
>
|
|
||||||
{{$:/core/images/down-arrow}}
|
|
||||||
</$button>
|
|
||||||
<$let
|
|
||||||
tv-config-toolbar-icons="yes"
|
|
||||||
tv-config-toolbar-text="yes"
|
|
||||||
tv-config-toolbar-class="tc-btn-invisible"
|
|
||||||
>
|
|
||||||
<$reveal state=`$(state)$-more` type="popup" position="belowleft" animate="yes">
|
|
||||||
<div class="tc-drop-down">
|
|
||||||
<$list filter="[all[shadows+tiddlers]tag[$:/tags/TestCase/Actions]!has[draft.of]]"
|
|
||||||
variable="listItem"
|
|
||||||
>
|
|
||||||
<$transclude $tiddler=<<listItem>> $mode="inline"/>
|
|
||||||
</$list>
|
|
||||||
</div>
|
|
||||||
</$reveal>
|
|
||||||
</$let>
|
|
||||||
</span>
|
</span>
|
||||||
</h2>
|
<%endif%>
|
||||||
|
<$view tiddler="Description" mode="inline"/>
|
||||||
|
</$genesis>
|
||||||
|
<span class="tc-test-case-toolbar">
|
||||||
|
<<testcase-toolbar>>
|
||||||
|
</span>
|
||||||
|
</h2>
|
||||||
|
</div>
|
||||||
|
\end
|
||||||
|
|
||||||
|
\procedure testcase-toolbar()
|
||||||
|
<$button popup=`$(tf.state)$-more`
|
||||||
|
tooltip={{$:/language/Buttons/More/Hint}}
|
||||||
|
aria-label={{$:/language/Buttons/More/Caption}}
|
||||||
|
class="tc-btn-invisible"
|
||||||
|
selectedClass="tc-selected"
|
||||||
|
>
|
||||||
|
{{$:/core/images/down-arrow}}
|
||||||
|
</$button>
|
||||||
|
<$let
|
||||||
|
tv-config-toolbar-icons="yes"
|
||||||
|
tv-config-toolbar-text="yes"
|
||||||
|
tv-config-toolbar-class="tc-btn-invisible"
|
||||||
|
>
|
||||||
|
<$reveal state=`$(tf.state)$-more` type="popup" position="belowleft" animate="yes">
|
||||||
|
<div class="tc-drop-down">
|
||||||
|
<$list filter="[all[shadows+tiddlers]tag[$:/tags/TestCase/Actions]!has[draft.of]]"
|
||||||
|
variable="listItem"
|
||||||
|
>
|
||||||
|
<$transclude $tiddler=<<listItem>> $mode="inline"/>
|
||||||
|
</$list>
|
||||||
</div>
|
</div>
|
||||||
<%if [[Narrative]is[tiddler]] %>
|
</$reveal>
|
||||||
<div class="tc-test-case-narrative">
|
|
||||||
<$transclude $tiddler="Narrative" $mode="block"/>
|
|
||||||
</div>
|
|
||||||
<%endif%>
|
|
||||||
<%if [<testResult>match[fail]] %>
|
|
||||||
<div class="tc-test-case-result-fail">
|
|
||||||
<div class="tc-test-case-result-fail-header">
|
|
||||||
TEST FAILED
|
|
||||||
</div>
|
|
||||||
<div class="tc-test-case-result-fail-body">
|
|
||||||
<$diff-text source=<<expectedHTML>> dest=<<outputHTML>>/>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<%endif%>
|
|
||||||
<div class="tc-test-case-panes">
|
|
||||||
<div class="tc-test-case-source">
|
|
||||||
<$macrocall $name="tabs" tabsList="[all[tiddlers]sort[]] -[prefix<state>] -Description -Narrative -Output Output +[putfirst[]] -[has[plugin-type]]" state=<<state>> default="Output" template="$:/core/ui/testcases/DefaultTemplate/SourceTabs"/>
|
|
||||||
</div>
|
|
||||||
<div class="tc-test-case-divider">
|
|
||||||
</div>
|
|
||||||
<div class="tc-test-case-output">
|
|
||||||
<%if [<displayFormat>!match[]else[wikitext]match[plaintext]] %>
|
|
||||||
<pre><$view tiddler="Output" format="plainwikified" mode="block"/></pre>
|
|
||||||
<%else%>
|
|
||||||
<$linkcatcher actions=<<linkcatcherActions>>>
|
|
||||||
<$tiddler tiddler="Output">
|
|
||||||
<$transclude $tiddler="Output" $mode="block"/>
|
|
||||||
</$tiddler>
|
|
||||||
</$linkcatcher>
|
|
||||||
<%endif%>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</$let>
|
</$let>
|
||||||
|
\end
|
||||||
|
|
||||||
|
\procedure testcase-narrative()
|
||||||
|
<div class="tc-test-case-narrative">
|
||||||
|
<$transclude $tiddler="Narrative" $mode="block"/>
|
||||||
|
</div>
|
||||||
|
\end
|
||||||
|
|
||||||
|
\procedure testcase-fail()
|
||||||
|
<div class="tc-test-case-result-fail">
|
||||||
|
<div class="tc-test-case-result-fail-header">
|
||||||
|
TEST FAILED
|
||||||
|
</div>
|
||||||
|
<div class="tc-test-case-result-fail-body">
|
||||||
|
<$diff-text source=<<expectedHTML>> dest=<<outputHTML>>/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
\end
|
||||||
|
|
||||||
|
\procedure testcase-output-wikified()
|
||||||
|
<$linkcatcher actions=<<linkcatcherActions>>>
|
||||||
|
<$tiddler tiddler="Output">
|
||||||
|
<$transclude $tiddler="Output" $mode="block"/>
|
||||||
|
</$tiddler>
|
||||||
|
</$linkcatcher>
|
||||||
|
\end
|
||||||
|
|
||||||
|
\procedure testcase-output()
|
||||||
|
<div class="tc-test-case-output">
|
||||||
|
<%if [<displayFormat>!match[]else[wikitext]match[plaintext]] %>
|
||||||
|
<pre><$view tiddler="Output" format="plainwikified" mode="block"/></pre>
|
||||||
|
<%else%>
|
||||||
|
<<testcase-output-wikified>>
|
||||||
|
<%endif%>
|
||||||
|
</div>
|
||||||
|
\end
|
||||||
|
|
||||||
|
\procedure testcase-tabsList()
|
||||||
|
[all[tiddlers]sort[]] Output +[putfirst[]]
|
||||||
|
-Description
|
||||||
|
-Narrative
|
||||||
|
-[has[plugin-type]]
|
||||||
|
-[prefix<tf.state>]
|
||||||
|
-[prefix[$:/state/popup/export]]
|
||||||
|
\end
|
||||||
|
|
||||||
|
\procedure testcase-source()
|
||||||
|
<div class="tc-test-case-source">
|
||||||
|
<$macrocall $name="tabs"
|
||||||
|
tabsList=<<testcase-tabsList>>
|
||||||
|
explicitState=<<tf.state>>
|
||||||
|
default="Output"
|
||||||
|
template="$:/core/ui/testcases/DefaultTemplate/SourceTabs"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
\end
|
||||||
|
|
||||||
|
\procedure testcase-panes()
|
||||||
|
<div class="tc-test-case-panes">
|
||||||
|
<<testcase-source>>
|
||||||
|
<div class="tc-test-case-divider"></div>
|
||||||
|
<<testcase-output>>
|
||||||
|
</div>
|
||||||
|
\end
|
||||||
|
|
||||||
|
\procedure testcase-body()
|
||||||
|
<div class="tc-test-case-wrapper">
|
||||||
|
<<testcase-header>>
|
||||||
|
<%if [[Narrative]is[tiddler]] %>
|
||||||
|
<<testcase-narrative>>
|
||||||
|
<%endif%>
|
||||||
|
<%if [<testResult>match[fail]] %>
|
||||||
|
<<testcase-fail>>
|
||||||
|
<%endif%>
|
||||||
|
<<testcase-panes>>
|
||||||
|
</div>
|
||||||
|
\end
|
||||||
|
|
||||||
|
<<testcase-body>>
|
@ -1,4 +1,4 @@
|
|||||||
title: $:/core/ui/testcases/actions/Export
|
title: $:/core/ui/testcases/actions/Export
|
||||||
tags: $:/tags/TestCase/Actions
|
tags: $:/tags/TestCase/Actions
|
||||||
|
|
||||||
<$macrocall $name="exportButton" exportFilter="[all[tiddlers]sort[]] -[prefix[$:/state/]] -Description -Narrative -ExpectedResult -Output Output +[putfirst[]] -[has[plugin-type]]" lingoBase="$:/language/Buttons/ExportTiddlers/"/>
|
<$macrocall $name="exportButton" exportFilter="[all[tiddlers]sort[]] -[prefix[$:/state/]] -Description -Narrative -ExpectedResult -[has[plugin-type]]" lingoBase="$:/language/Buttons/ExportTiddlers/"/>
|
Loading…
Reference in New Issue
Block a user