Files
Orchard/lib/specflow/TechTalk.SpecFlow.Reporting.dll

2762 lines
108 KiB
Plaintext
Raw Normal View History

MZ<EFBFBD><00><><00>@<00><1F><00> <09>!<21>L<>!This program cannot be run in DOS mode.
$PEL<00><>P<00>! <00><00><> <00>@  <00><>@<40>@<40>K<00><00> <00><>  H.text<00><> <00> `.rsrc<00><00><00>@@.reloc <00>@Bp<>HTpTU <00>>y1P <00><00><><EFBFBD><58>`r"<22><>B v<13>45<0E><>2i<32><69><EFBFBD>TG<54><12><><EFBFBD><EFBFBD>̺<EFBFBD><CCBA><EFBFBD>I?<3F>T<EFBFBD><54><EFBFBD><EFBFBD><07><>" <09>l<EFBFBD>!70<37><30>J<EFBFBD> ) "{<7B><>a<>RD<><44>}<7D><>R<EFBFBD><52><EFBFBD>IӢՒ%<25><><EFBFBD>fXs<58>i[,i<><69><EFBFBD><EFBFBD><EFBFBD><11>l<7F><04>nTa?/B`q<><71>(,(+#<23>(
rp$(
<16>o
&*~*<02>*Zr7p(
<14><16>(*<2A><>(
rQp$o
o
(
(
o
*0>
(
o
+# <04> o
o!
o"
,
X <09>i2<69>*(#
*0S<17>? ,<2C> o$
<16> (%
r<EFBFBD>p(
(&
<0C>&(%
r<EFBFBD>p(
(&
<0C>& <0C>*3L20, + <04>
( , <0C>X <09>i2<69>**2(
( *0s 
<06>s'
o(
*(#
*:(#
}*0o*
{(  *{*"}*{*"}*{*"}*(#
*{*"}*{*"}*{*"}*{ *"} *{
*"}
*{ *"} *{ *"} *(#
*06o+
 +$ <09>
<06>C(
(,
,(& X <08>i2<69>*0Z<o-
+D <04>
<06>E(
(.
,%+<06> ('X<05>i2<69>X <09>i2<69>*2o/
o0
*o1
*0 r<>pr<>p(+r<>p(2
s3
o4
<07>i,<07>iY<>o/
o0
r<EFBFBD>p(5
+ s$((oor<>po6
o7
o0
r<EFBFBD>p~ -<14>,s8
<EFBFBD> ~ (+(+(;
(<
o~-<14>-s8
<EFBFBD>~(+(+oo!o#  o=
*0$ o>
o0
o?
r<EFBFBD>po?
Yo@
*0
(A
sB
(%*0<00> sB
(C
oD
(E
sF
oG
r<EFBFBD>p(H
<17><<03>(  (C
o
oI
<EFBFBD>(
o7
oJ
toK
oL
o)oM
(N
*(O
*(>
*0i <11>(
r psP
o.oA(<28>,o.oA(<28>*o/o.oAoQ
oR
o.o?(<28>*0" o.oC(S
o2 (0*0PsN
oK
oT
}(U
rCp(V
(W
}o4 oX
}o3**(#
*{*.<2E>(
*:(5}*FrGp{s<*0<00>sY
}{{oFoZ
{r<>po[
o\
}(9
s]
<0B>
(
r<EFBFBD>ps\ s<> s^
 o_
<EFBFBD>
,o`
<EFBFBD>sa
(b
sc
{od
<EFBFBD> ,o`
<EFBFBD>oe
sf
sY
og
*_z
<00><10> 0[sh
si
r<>p{oj
{r<>pok
-*ol
 8<> om
tQ on
r!poo
9<>{r/pop
(q
or
uQ9<>on
r<EFBFBD>poo
9<>op
<17>?  ,<2C> o$
<16>os
on
r<EFBFBD>poo
,N r<>por
  ,<{sO

r<>pop
(2
}
 ot
} 
ou
 ov
:<3A><><EFBFBD><EFBFBD><EFBFBD> uU  , o`
<EFBFBD>*A< EV(h
}}*<2A>{(w
, {(x
*(x
*>sy
oz
*{*"}*{*"}*{*"}*<2A>(#
(D({
(B(|
-({
+r<>p(@*{*"}*^(E({
(G*{*:(5}*0<00>{ot(}
,z{ots~
r<EFBFBD>p s
+< r<>po<70>
,((L <18>?*<2A> <20>o<>
+ o<>
o<>
% -<2D>(L<06>
,o`
<EFBFBD>*#_<>
0?o<>
15{sO
}(
o<>
(;
} ou
o<>
*0UsY
sh
si
r<>prpoj
{ovs<>
s<>
(<28>
o<>
<EFBFBD>
,o`
<EFBFBD>*@ I
Js<>
}(#
*(#
*(#
*J{EoK
(<28>
*0Ds<>
}E{Eo<>
<06><06>s<>
(+{EoQ
oR
o<EFBFBD>
(Q*0]s<>
o<>
+4o<>
s<>
s~
 o<>
o<>
<EFBFBD>
, o`
<EFBFBD>ov
-<2D><> ,o`
<EFBFBD>*&:
AO fo>
o<>
o<>
<EFBFBD> *(#
*(#
*(#
*(#
*(#
*Js<>
}0(#
*Js<>
}5(#
*<2A>o<>
o<>
~<7E>
<EFBFBD>?(<28>
([*:sh
(]*<2A>o<>
o<>
~<7E>
<EFBFBD>?(<28>
(]*0L (^(<28>
(<28>
~<7E>
~<7E>
o<EFBFBD>
(<28>
(
rpo
o!
(<28>
}6*0o<>
-r?p(q
s<EFBFBD>
z*{6*{>*"}>*0i s<>
}=(#
(aoC(S
}7{7(P}9{7oK
o<EFBFBD>
oy(%
{7(*}8*0<00>sY}:{:{7oK
oT
}2{:(U
  rCp(V
(W
}3{:(`o{}4s<>
};s<>
}<{8o<>
+^(<28>
sX sS o}!}.o}-{;o<>
{<o<>
{:{5o<>
(<28>
-<2D><><0E>o`
<EFBFBD>{9o<>
8<>(<28>
sT  o<>
}# o<>
}"  o<>
,-sWrsp}+ o<>
o<EFBFBD>
(k o<>
+~<11>sW

o<>
}+
o<>
,o<>
{<7B>
+},
u,t(d  (k+o<>
(kX<10>i?w<><77><EFBFBD>(<28>
:<3A><><EFBFBD><EFBFBD><EFBFBD><0F>o`
<EFBFBD>{:{5o<>
8<>(<28>
  {/- (g {0o<>
- }0 {/o<>
-' {/<04>u(
 {-(<28>
<EFBFBD>uo<>
 {/o<>
-' {/<04>w(
 {-(<28>
<EFBFBD>wo<>
(<28>
:Z<><5A><EFBFBD><EFBFBD><12>o`
<EFBFBD>{:*AL<00>k<00> 3<00><00>0<00>o<>
o<EFBFBD>
8<><06>
o<>
o<EFBFBD>
+_<08> s<>
 +.o<>
o<EFBFBD>
o<EFBFBD>
<09>o<EFBFBD>
o<>
<09>o<EFBFBD>
o<EFBFBD>
X o<>
o<EFBFBD>
o<EFBFBD>
<EFBFBD>i2<EFBFBD>(e<04><07>i2<69>X<05>i?p<><70><EFBFBD>s<EFBFBD>
**0<00>s<>
o<>
o<EFBFBD>
8<>(<28>
(l o<>
(fo<>
o<>
(fo<>
o<>
,]o<>
o<EFBFBD>
+C<07> o<>
 +" <09>o<>
(fo<>
 X  <08>i2<69>X<06>i2<69>o<>
(<28>
:R<><52><EFBFBD><EFBFBD><05>o`
<EFBFBD>*<00><>0Y,-*o<>
+-(<28>
r<>p(<28>
r<EFBFBD>p(2
(<28>
o<EFBFBD>
(<28>
-<2D><><01>o`
<EFBFBD>*:I0<00>{<o<>
{-% ,Pr<>p(5
-r<>p(5
-r<>p(5
-+'s<>
}/+ s<>
}/+s<>
}/+s<>
z{/(io<>
*0<00>s<>
o<>
o<EFBFBD>
Y +dY o<06>i/r<>po<08>r<EFBFBD>p(2
+r<>p o<>
o<>
o<>
o<>
o<EFBFBD>
&o<>
o<>
&Y /<2F>o<>
*(#
*0H{F{Go<06>i/-r<>p{Go%{F%
X}F<06>r<EFBFBD>p(2
*r<>p*0]s<> }G{Goo<>
<18>? $<24> ^<5E> o<>
r<EFBFBD>ps<70>
}F<08><06>s<>
o<EFBFBD>
*0x <11>(
r psP
(`oA(<28>,{:(`oA(<28>*{:(>
(`oA{7oQ
oR
(`o?(<28>*(#
*o<>
*r{/o<>
{Ho<>
o<EFBFBD>
*0<00>o<>
 s<>8no<>
}H{Ho<>
<EFBFBD>uo<>
 {8o<>
8j(<28>
o(<28>
:Qo{Ho<>
o<EFBFBD>
o<>
9.sU  }$ {H}( }% }&  o<>
(+(+~?-<14>qs<>
<EFBFBD>?~?(+(+<05>i1]s
}'+7{'sVo<06>})<06>}*o
X<05>io<06>i(
2<EFBFBD>{;o
{0o
{/-5{H(o}/{/{/o<>
(ho<>
 + (<28>
:<3A><><EFBFBD><EFBFBD><EFBFBD><10>o`
<EFBFBD>:<3A>{= -<0E><06>s
  (+

-CsX

}-
{H(o}/{=
o<EFBFBD>
{:{5
o<EFBFBD>
sU  }$ {H}( }% }&  
{0 o
ov
:<3A><><EFBFBD><EFBFBD><EFBFBD> ,o`
<EFBFBD>*A4K}<00><00><00> 0<00> 
u},s<>
+>u~,s<>
+.u,s<>
+u<>,s
+u<>,s
o<>
o<EFBFBD>
o<>
o<EFBFBD>
o<>
(mo 
o<>
o<EFBFBD>
o<>
o<EFBFBD>
*"(n*<2A>-*o<>
(no<>
<02>rs

( +(
+s 
*0!s 
o<>
o<EFBFBD>
*<2A>o<>
~@-<14>ss 
<EFBFBD>@~@( +( +s
*0v 
r<>p(5
,s<>
+r<>p(5
,s<>
+s<>
o<>
o<EFBFBD>
o<>
o<EFBFBD>
o<>
(mo 
o<>
o<EFBFBD>
o<>
o<EFBFBD>
*:(c&(j*{A*"}A*{B*"}B*<2A>(E({
(w(|
-({
+r<>p(u*{C*"}C*{D*"}D*j(E(z(|*0e"(
-r<>po
o"
-
(
*o
<17>? ~<7E>
<EFBFBD>o
~<7E>
~<7E>
o<EFBFBD>
o
( o<>
*V(,(*(A
*(
*J(<28>
r<EFBFBD>po"
*0.#r<>p(
(b
s
o
<EFBFBD>
,o`
<EFBFBD>*
#
0<00>$s
o
s]
s^
o0
r<EFBFBD>pr<70>po<70>
(<28>s<>  o_
<EFBFBD> ,o`
<EFBFBD>o<>
s
s
s
rpr<70>po<>
o
o
r5pr<70>po
o
o
(b
s 
 o!
<EFBFBD> ,o`
<EFBFBD>*?Q <00><0F> <00>(|
,rQp(
sZ*s"
*S*<?xml version="1.0" encoding="utf-8"?>
<!-- to be finished and used from -->
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:sfr="urn:TechTalk:SpecFlow.Report"
exclude-result-prefixes="msxsl">
<xsl:param name="tool-language" select="'en'" />
<xsl:param name="base-tool-language" select="substring-before($tool-language, '-')" />
<xsl:include href="GherkinElements.xslt"/>
<xsl:param name="common-tool-text">
<Language code="en">
<GeneratedByPre>Generated by SpecFlow at </GeneratedByPre>
<GeneratedByPost></GeneratedByPost>
<See>see </See>
<Show>show</Show>
<Hide>hide</Hide>
<Copy>copy</Copy>
</Language>
<Language code="de">
<GeneratedByPre>Erstellt durch SpecFlow am </GeneratedByPre>
<GeneratedByPost></GeneratedByPost>
<See></See>
<Show>anzeigen</Show>
<Hide>ausblenden</Hide>
<Copy>kopieren</Copy>
</Language>
</xsl:param>
<xsl:template name="get-common-tool-text">
<xsl:param name="text-key" />
<xsl:call-template name="get-tool-text-base">
<xsl:with-param name="text-key" select="$text-key" />
<xsl:with-param name="local-tool-texts" select="msxsl:node-set($common-tool-text)" />
</xsl:call-template>
</xsl:template>
<xsl:template name="get-tool-text-base">
<xsl:param name="text-key" />
<xsl:param name="local-tool-texts" />
<xsl:choose>
<xsl:when test="$local-tool-texts//Language[@code = $tool-language]">
<xsl:value-of select="$local-tool-texts//Language[@code = $tool-language]/node()[local-name() = $text-key]"/>
</xsl:when>
<xsl:when test="$local-tool-texts//Language[@code = $base-tool-language]">
<xsl:value-of select="$local-tool-texts//Language[@code = $base-tool-language]/node()[local-name() = $text-key]"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$local-tool-texts//Language[@code = 'en']/node()[local-name() = $text-key]"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="sfr:ScenarioStep" priority="-0.1" mode="clipboardCopy">
<xsl:variable name="step-id" select="generate-id()" />
<xsl:text> </xsl:text>
<a href="#" onclick="copyStepToClipboard('{$step-id}'); return false;" class="button">[<xsl:call-template name="get-common-tool-text">
<xsl:with-param name="text-key" select="'Copy'" />
</xsl:call-template>]</a>
</xsl:template>
<xsl:template name="html-common-header">
<xsl:param name="title" />
<xsl:comment>Generated by SpecFlow (see http://www.specflow.org/)</xsl:comment>
<title>
<xsl:value-of select="$title"/>
</title>
<style>
<![CDATA[
body
{
font: small verdana, arial, helvetica; color:#000000;
}
h1
{
font-size: 16px;
}
h2
{
font-size: 14px;
}
h3
{
font-size: 12px;
}
div.marker
{
height: 1.1em;
width: 1.1em;
float:left;
margin-right: 0.3em;
}
table.reportTable
{
width: 100%;
font-size: 12px;
}
table.subReportTable
{
font-size: 12px;
margin-left: 2em;
}
td, th
{
text-align: left;
border-bottom: solid 1px #dcdcdc;
border-right: solid 1px #dcdcdc;
padding-left: 0.5em;
padding-right: 0.5em;
padding-top: 0.25em;
padding-bottom: 0.25em;
}
th
{
background-color: #FFF2E5;
padding-top: 0.4em;
padding-bottom: 0.4em;
}
.top
{
border-top: solid 1px #dcdcdc;
}
.left
{
border-left: solid 1px #dcdcdc;
}
td.accessPath, th.accessPath
{
padding-left: 1.0em;
}
td.accessPath
{
font-style:italic;
}
td.empty
{
border: none;
height: 2.0em;
}
td.numeric
{
text-align: right;
}
td.marker
{
white-space: nowrap;
}
td.subRow
{
padding-left: 2em;
}
div.legend
{
margin-top: 2em;
padding-left: 2em;
font-style:italic;
font-size: 10px;
}
a.button
{
}
.hidden
{
display: none;
}
// gherkin elements style
table.tableArg
{
font-size: 12px;
margin-left: 2em;
}
table.tableArg th
{
background-color: #BBFFBB;
}
.stepKeyword
{
font-style:italic;
}
.stepParam
{
font-style:italic;
color: Green;
}
]]></style>
<script>
var showButtonText = "[<xsl:call-template name="get-common-tool-text">
<xsl:with-param name="text-key" select="'Show'" />
</xsl:call-template>]";
var hideButtonText = "[<xsl:call-template name="get-common-tool-text">
<xsl:with-param name="text-key" select="'Hide'" />
</xsl:call-template>]";
<![CDATA[
function toggle(sdid, event){
var link;
if(window.event) {
link = window.event.srcElement;
} else {
link = event.target;
}
toToggle=document.getElementById(sdid);
if (link.innerHTML==showButtonText)
{
link.innerHTML=hideButtonText;
toToggle.style.display="block";
}
else
{
link.innerHTML=showButtonText;
toToggle.style.display="none";
}
}
function copyToClipboard(s)
{
if (window.clipboardData)
{
window.clipboardData.setData('Text',s);
}
else
{
try
{
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
}
catch(e)
{
alert("The clipboard copy didn't work.\nYour browser doesn't allow Javascript clipboard copy.\nIf you want to change its behaviour: \n1.Open a new browser window\n2.Enter the URL: about:config\n3.Change the signed.applets.codebase_principal_support property to true");
return;
}
var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
trans.addDataFlavor('text/unicode');
var len = new Object();
var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
str.data=s;
trans.setTransferData("text/unicode",str,s.length*2);
var clipid=Components.interfaces.nsIClipboard;
clip.setData(trans,null,clipid.kGlobalClipboard);
}
}
]]>
</script>
</xsl:template>
<xsl:template name="html-copy-step-to-clipboard-script">
<script>
<![CDATA[
function getInnerText(elm)
{
if (elm.textContent)
return elm.textContent;
return elm.innerText;
}
function copyStepToClipboard(stepId)
{
text=document.getElementById("txt" + stepId);
tableArg=document.getElementById("tbl" + stepId);
result = getInnerText(text);
if (tableArg != null)
{
result += "\r\n";
result += getTableSource(tableArg);
}
copyToClipboard(result);
}
function getTableSource(table)
{
indent = " ";
var rows = table.getElementsByTagName("tr");
header = rows[0].cells;
columnWidths = new Array();
for (colIndex = 0; colIndex < header.length; colIndex++)
columnWidths[colIndex] = header[colIndex].innerHTML.length;
for (rowIndex = 1; rowIndex < rows.length; rowIndex++)
{
row = rows[rowIndex].cells;
for (colIndex = 0; colIndex < header.length; colIndex++)
if (row[colIndex].innerHTML.length > columnWidths[colIndex])
columnWidths[colIndex] = row[colIndex].innerHTML.length;
}
tableSource = "";
for (rowIndex = 0; rowIndex < rows.length; rowIndex++)
{
row = rows[rowIndex].cells;
tableSource = tableSource + indent + "|";
for (colIndex = 0; colIndex < header.length; colIndex++)
{
tableSource = tableSource + " ";
tableSource = tableSource + row[colIndex].innerHTML;
for (i = row[colIndex].innerHTML.length; i < columnWidths[colIndex]; i++)
tableSource = tableSource + " ";
tableSource = tableSource + " |";
}
tableSource = tableSource + "\r\n";
}
return tableSource;
}
]]>
</script>
</xsl:template>
<xsl:template name="html-body-header">
<xsl:param name="title" />
<xsl:param name="generatedAt" select="/*/@generatedAt" />
<h1>
<xsl:value-of select="$title"/>
</h1>
<xsl:call-template name="get-common-tool-text">
<xsl:with-param name="text-key" select="'GeneratedByPre'" />
</xsl:call-template>
<xsl:value-of select="$generatedAt"/>
<xsl:call-template name="get-common-tool-text">
<xsl:with-param name="text-key" select="'GeneratedByPost'" />
</xsl:call-template>
<xsl:text> (</xsl:text>
<xsl:call-template name="get-common-tool-text">
<xsl:with-param name="text-key" select="'See'" />
</xsl:call-template>
<a href="http://www.specflow.org/">http://www.specflow.org/</a>).
</xsl:template>
</xsl:stylesheet>
A<?xml version="1.0" encoding="utf-8"?>
<!-- to be finished and used from -->
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:sfr="urn:TechTalk:SpecFlow.Report"
exclude-result-prefixes="msxsl">
<xsl:param name="feature-language" select="'en'" />
<xsl:param name="languages" select="document('Languages.xml')" />
<xsl:template name="get-keyword">
<xsl:param name="keyword" />
<xsl:param name="language">
<xsl:choose>
<xsl:when test="ancestor::sfr:Feature[1]/sfr:Language">
<xsl:value-of select="ancestor::sfr:Feature[1]/sfr:Language"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$feature-language" />
</xsl:otherwise>
</xsl:choose>
</xsl:param>
<xsl:variable name="local-keyword">
<xsl:choose>
<xsl:when test="$languages//Language[@code = $language]">
<xsl:value-of select="$languages//Language[@code = $language]/node()[local-name() = $keyword]"/>
</xsl:when>
<xsl:otherwise>
<xsl:variable name="base-language" select="substring-before($language, '-')" />
<xsl:value-of select="$languages//Language[@code = $base-language]/node()[local-name() = $keyword]"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:value-of select="$local-keyword"/>
</xsl:template>
<xsl:template match="sfr:ScenarioStep">
<xsl:variable name="step-id" select="generate-id()" />
<xsl:variable name="step-keyword" select="@xsi:type" />
<span id="txt{$step-id}">
<span class="stepKeyword">
<xsl:call-template name="get-keyword">
<xsl:with-param name="keyword" select="$step-keyword" />
</xsl:call-template>
</span>
<xsl:text> </xsl:text>
<xsl:apply-templates select="sfr:Text" />
</span>
<xsl:apply-templates select="." mode="clipboardCopy"/>
<xsl:apply-templates select="sfr:TableArg" />
<xsl:apply-templates select="sfr:MultiLineTextArgument" />
</xsl:template>
<xsl:template match="sfr:ScenarioStep" priority="-0.5" mode="clipboardCopy">
<!-- nop -->
</xsl:template>
<xsl:template match="sfr:Text" priority="-0.1">
<xsl:value-of select="string(node())"/>
</xsl:template>
<xsl:template match="sfr:TableArg">
<xsl:variable name="table-id" select="concat('tbl', generate-id(..))" />
<table class="tableArg" id="{$table-id}" cellpadding="0" cellspacing="0">
<tr>
<xsl:for-each select="sfr:Header/sfr:Cells/sfr:Cell">
<th>
<xsl:attribute name="class">
<xsl:choose>
<xsl:when test="position()=1">left top</xsl:when>
<xsl:otherwise>top</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
<xsl:value-of select="sfr:Value"/>
</th>
</xsl:for-each>
</tr>
<xsl:for-each select="sfr:Body/sfr:Row">
<tr>
<xsl:for-each select="sfr:Cells/sfr:Cell">
<td>
<xsl:attribute name="class">
<xsl:choose>
<xsl:when test="position()=1">left</xsl:when>
<xsl:otherwise></xsl:otherwise>
</xsl:choose>
</xsl:attribute>
<xsl:value-of select="sfr:Value"/>
</td>
</xsl:for-each>
</tr>
</xsl:for-each>
</table>
</xsl:template>
<xsl:template match="sfr:MultiLineTextArgument">
<pre>
<xsl:value-of select="."/>
</pre>
</xsl:template>
</xsl:stylesheet>
C.<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:sfr="urn:TechTalk:SpecFlow.Report"
xmlns:nunit="urn:NUnit"
xmlns:mstest="http://microsoft.com/schemas/VisualStudio/TeamTest/2006"
exclude-result-prefixes="msxsl nunit sfr">
<xsl:output method="xml" />
<xsl:key name="unit-test-result" match="mstest:UnitTestResult" use="@testId"/>
<xsl:template name="get-last-part">
<xsl:param name="text" />
<xsl:param name="delimiter" />
<xsl:choose>
<xsl:when test="contains($text, $delimiter)">
<xsl:call-template name="get-last-part">
<xsl:with-param name="text" select="substring-after($text,$delimiter)" />
<xsl:with-param name="delimiter" select="$delimiter" />
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$text"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="/mstest:TestRun">
<nunit:test-results>
<xsl:attribute name="name">
<xsl:value-of select="@name"/>
</xsl:attribute>
<xsl:variable name="startTime" select="mstest:Times/@start" /> <!-- start="2010-06-20T21:54:47.1619417+02:00" -->
<xsl:attribute name="date">
<xsl:value-of select="substring($startTime, 1, 10)"/>
</xsl:attribute>
<xsl:attribute name="time">
<xsl:value-of select="substring($startTime, 12, 8)"/>
</xsl:attribute>
<xsl:apply-templates select="mstest:ResultSummary" />
<xsl:for-each select="mstest:TestDefinitions/mstest:UnitTest">
<xsl:variable name="className" select="mstest:TestMethod/@className" />
<xsl:if test="not(preceding-sibling::mstest:UnitTest[mstest:TestMethod/@className=$className])">
<xsl:variable name="unitTests" select="//mstest:UnitTest[mstest:TestMethod/@className=$className]"/>
<nunit:test-suite type="TestFixture" result="Failure" success="False">
<xsl:attribute name="name">
<xsl:call-template name="get-last-part">
<xsl:with-param name="text" select="substring-before(mstest:TestMethod/@className, ',')" />
<xsl:with-param name="delimiter" select="'.'" />
</xsl:call-template>
<!--<xsl:value-of select="substring-before(mstest:TestMethod/@className, ',')"/>-->
</xsl:attribute>
<!-- SpecFlow specific conversion -->
<xsl:if test="mstest:Properties/mstest:Property[string(mstest:Key)='FeatureTitle']">
<xsl:attribute name="description">
<xsl:value-of select="mstest:Properties/mstest:Property[string(mstest:Key)='FeatureTitle']/mstest:Value"/>
</xsl:attribute>
</xsl:if>
<xsl:attribute name="executed">True</xsl:attribute>
<xsl:attribute name="success">
<xsl:choose>
<xsl:when test="$unitTests[key('unit-test-result', @id)/@outcome!='Passed']">
<xsl:text>False</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:text>True</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
<xsl:attribute name="result">
<xsl:choose>
<xsl:when test="$unitTests[key('unit-test-result', @id)/@outcome='Failed']">
<xsl:text>Failure</xsl:text>
</xsl:when>
<xsl:when test="$unitTests[key('unit-test-result', @id)/@outcome='Inconclusive']">
<xsl:text>Inconclusive</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:text>Success</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
<xsl:attribute name="time">0.000</xsl:attribute>
<xsl:attribute name="asserts">0</xsl:attribute>
<nunit:results>
<xsl:apply-templates select="$unitTests" />
</nunit:results>
</nunit:test-suite>
</xsl:if>
</xsl:for-each>
</nunit:test-results>
</xsl:template>
<xsl:template match="mstest:ResultSummary">
<!--
<Counters total="4" executed="4" passed="2" error="0" failed="1" timeout="0"
aborted="0" inconclusive="1" passedButRunAborted="0" notRunnable="0"
notExecuted="0" disconnected="0" warning="0" completed="0" inProgress="0"
pending="0" />
total="4" errors="0" failures="1" not-run="1" inconclusive="1" ignored="1" skipped="0" invalid="0"
-->
<xsl:attribute name="total">
<xsl:value-of select="mstest:Counters/@total"/>
</xsl:attribute>
<xsl:attribute name="errors">
<xsl:value-of select="mstest:Counters/@error"/>
</xsl:attribute>
<xsl:attribute name="failures">
<xsl:value-of select="mstest:Counters/@failed"/>
</xsl:attribute>
<xsl:attribute name="inconclusive">
<xsl:value-of select="mstest:Counters/@inconclusive"/>
</xsl:attribute>
<xsl:attribute name="ignored">0</xsl:attribute>
<!--<xsl:attribute name="not-run">
</xsl:attribute>-->
<!--<xsl:attribute name="skipped">
<xsl:value-of select="mstest:Counters/@notExecuted"/>
</xsl:attribute>-->
<!--<xsl:attribute name="invalid">
<xsl:value-of select="mstest:Counters/@notRunnable"/>
</xsl:attribute>-->
</xsl:template>
<xsl:template match="mstest:UnitTest">
<!--
input (MsTest):
<UnitTest name="ScenarioWithPendingSteps"
storage="c:\users\jba\dev\code\specflowexamples\mstestconversion\reportingtest.mstestsampleproject\bin\debug\reportingtest.mstestsampleproject.dll"
id="e0c798ae-34fe-8aec-156d-98ed561da84b">
<Css projectStructure="" iteration="" />
<Execution timeOut="1800000" id="6c9f7dc0-04e5-4820-b965-35e67ab5b8dc" />
<Description>Scenario with pending steps</Description>
<Owners>
<Owner name="" />
</Owners>
<Properties>
<Property>
<Key>FeatureTitle</Key>
<Value>Feature with failing scenarios</Value>
</Property>
</Properties>
<TestMethod codeBase="C:/Users/jba/Dev/Code/SpecFlowExamples/MsTestConversion/ReportingTest.MSTestSampleProject/bin/Debug/ReportingTest.MSTestSampleProject.DLL" adapterTypeName="Microsoft.VisualStudio.TestTools.TestTypes.Unit.UnitTestAdapter, Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Adapter" className="ReportingTest.MSTestSampleProject.FeatureWithFailingScenariosFeature, ReportingTest.MSTestSampleProject, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" name="ScenarioWithPendingSteps" />
</UnitTest>
<UnitTestResult executionId="6c9f7dc0-04e5-4820-b965-35e67ab5b8dc"
testId="e0c798ae-34fe-8aec-156d-98ed561da84b"
testName="ScenarioWithPendingSteps"
computerName="TTV-JBA01"
duration="00:00:03.4117534"
startTime="2010-06-29T21:54:47.5419634+02:00"
endTime="2010-06-29T21:54:50.9541586+02:00"
testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b"
outcome="Inconclusive"
testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d">
<Output>
<StdOut>{stdout}</StdOut>
<ErrorInfo>
<Message>{errorMessgage}</Message>
<StackTrace>{stackTrace}</StackTrace>
</ErrorInfo>
</Output>
</UnitTestResult>
output (NUnit):
<test-case name="ReportingTest.SampleProject.FeatureWithFailingScenariosFeature.ScenarioWithPendingSteps"
description="Scenario with pending steps"
executed="True"
result="Inconclusive"
success="False"
time="0.106"
asserts="0">
<reason>
<message>{errorMessgage}</message>
</reason>
</test-case>
-->
<nunit:test-case>
<xsl:variable name="id" select="@id" />
<!--<xsl:variable name="testResult" select="/mstest:TestRun/mstest:Results/mstest:UnitTestResult[@testId=$id]" />-->
<xsl:variable name="testResult" select="key('unit-test-result', $id)" />
<xsl:attribute name="name">
<xsl:value-of select="substring-before(mstest:TestMethod/@className, ',')"/>.<xsl:value-of select="@name"></xsl:value-of>
</xsl:attribute>
<xsl:attribute name="description">
<xsl:value-of select="mstest:Description" />
<xsl:if test="mstest:Properties/mstest:Property[string(mstest:Key)='VariantName']">
<xsl:text>(</xsl:text>
<xsl:for-each select="mstest:Properties/mstest:Property[string(mstest:Key)='VariantName']">
<xsl:value-of select="mstest:Value"/>
</xsl:for-each>
<xsl:text>)</xsl:text>
</xsl:if>
</xsl:attribute>
<xsl:attribute name="executed">True</xsl:attribute>
<xsl:attribute name="result">
<xsl:choose>
<xsl:when test="$testResult/@outcome='Failed'">
<xsl:text>Failure</xsl:text>
</xsl:when>
<xsl:when test="$testResult/@outcome='Inconclusive'">
<xsl:text>Inconclusive</xsl:text>
</xsl:when>
<xsl:when test="$testResult/@outcome='Passed'">
<xsl:text>Success</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:text>???</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
<xsl:attribute name="success">
<xsl:choose>
<xsl:when test="$testResult/@outcome='Passed'">
<xsl:text>True</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:text>False</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
<xsl:attribute name="time">
<xsl:value-of select="(substring($testResult/@duration, 1, 2) * 60 * 60) +
(substring($testResult/@duration, 4, 2) * 60) +
(substring($testResult/@duration, 7, 2)) +
(substring($testResult/@duration, 9, 4))"/>
</xsl:attribute>
<xsl:attribute name="asserts">1</xsl:attribute>
<xsl:if test="$testResult/@outcome='Inconclusive'">
<nunit:reason>
<nunit:message>
<xsl:value-of select="$testResult/mstest:Output/mstest:ErrorInfo/mstest:Message"/>
</nunit:message>
</nunit:reason>
</xsl:if>
<xsl:if test="$testResult/@outcome='Failed'">
<nunit:failure>
<nunit:message>
<xsl:value-of select="$testResult/mstest:Output/mstest:ErrorInfo/mstest:Message"/>
</nunit:message>
<nunit:stack-trace>
<xsl:value-of select="$testResult/mstest:Output/mstest:ErrorInfo/mstest:StackTrace"/>
</nunit:stack-trace>
</nunit:failure>
</xsl:if>
</nunit:test-case>
</xsl:template>
</xsl:stylesheet>
<00>.<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:sfr="urn:TechTalk:SpecFlow.Report"
exclude-result-prefixes="msxsl">
<xsl:output method="html" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"/>
<xsl:include href="../Common/Common.xslt"/>
<xsl:param name="tool-text">
<Language code="en">
<Title>Step Definition Report</Title>
<Givens>Givens</Givens>
<Whens>Whens</Whens>
<Thens>Thens</Thens>
<StepDefinition>Step Definition</StepDefinition>
<Instances>Instances</Instances>
<BindingsWithoutInstancesMessage>Bindings without instances are not included in this report.</BindingsWithoutInstancesMessage>
<ParameterValuesPre>Used values for parameter </ParameterValuesPre>
<ParameterValuesPost>:</ParameterValuesPost>
<ScenarioOutlineExampleMessage>(scenario outline example)</ScenarioOutlineExampleMessage>
</Language>
<Language code="de">
<Title>Auflistung der Step Definitionen</Title>
<Givens>Gegeben Steps</Givens>
<Whens>Wenn Steps</Whens>
<Thens>Dann Steps</Thens>
<StepDefinition>Step Definition</StepDefinition>
<Instances>Instanzen</Instances>
<BindingsWithoutInstancesMessage>Bindings ohne Instanzen sind in diesem Report nicht aufgeführt.</BindingsWithoutInstancesMessage>
<ParameterValuesPre>Verwendete Parameterwerte </ParameterValuesPre>
<ParameterValuesPost>:</ParameterValuesPost>
<ScenarioOutlineExampleMessage>(Szenariogrundriss Beispiel)</ScenarioOutlineExampleMessage>
</Language>
</xsl:param>
<xsl:template match="@* | node()">
<xsl:copy>
<xsl:apply-templates select="@* | node()"/>
</xsl:copy>
</xsl:template>
<xsl:template name="get-tool-text">
<xsl:param name="text-key" />
<xsl:call-template name="get-tool-text-base">
<xsl:with-param name="text-key" select="$text-key" />
<xsl:with-param name="local-tool-texts" select="msxsl:node-set($tool-text)" />
</xsl:call-template>
</xsl:template>
<xsl:key name="step-usage-variation" match="sfr:Instance" use="normalize-space(string(sfr:ScenarioStep))"/>
<xsl:template match="/">
<xsl:variable name="title">
<xsl:call-template name="get-tool-text">
<xsl:with-param name="text-key" select="'Title'" />
</xsl:call-template>
<xsl:text> - </xsl:text>
<xsl:value-of select="sfr:StepDefinitionReport/@projectName"/>
</xsl:variable>
<html>
<head>
<xsl:call-template name="html-common-header">
<xsl:with-param name="title" select="$title" />
</xsl:call-template>
<style>
<![CDATA[
a.instanceRef
{
font-size: 10px;
margin-left: 2em;
}
.noBinding td
{
background-color: #FFFFBB;
}
.noInstances td
{
background-color: #FFBBBB;
}
]]>
</style>
<xsl:call-template name="html-copy-step-to-clipboard-script" />
</head>
<body>
<xsl:call-template name="html-body-header">
<xsl:with-param name="title" select="$title" />
</xsl:call-template>
<xsl:if test="(/sfr:StepDefinitionReport/@showBindingsWithoutInsance!='true')">
<div class="legend">
<xsl:call-template name="get-tool-text">
<xsl:with-param name="text-key" select="'BindingsWithoutInstancesMessage'" />
</xsl:call-template>
</div>
</xsl:if>
<h2>
<xsl:call-template name="get-tool-text">
<xsl:with-param name="text-key" select="'Givens'" />
</xsl:call-template>
</h2>
<xsl:call-template name="process-block">
<xsl:with-param name="block-name" select="'Given'" />
</xsl:call-template>
<h2>
<xsl:call-template name="get-tool-text">
<xsl:with-param name="text-key" select="'Whens'" />
</xsl:call-template>
</h2>
<xsl:call-template name="process-block">
<xsl:with-param name="block-name" select="'When'" />
</xsl:call-template>
<h2>
<xsl:call-template name="get-tool-text">
<xsl:with-param name="text-key" select="'Thens'" />
</xsl:call-template>
</h2>
<xsl:call-template name="process-block">
<xsl:with-param name="block-name" select="'Then'" />
</xsl:call-template>
</body>
</html>
</xsl:template>
<xsl:template name="process-block">
<xsl:param name="block-name" />
<table class="reportTable" cellpadding="0" cellspacing="0">
<tr>
<th class="top left">
<xsl:call-template name="get-tool-text">
<xsl:with-param name="text-key" select="'StepDefinition'" />
</xsl:call-template>
</th>
<th class="top">
<xsl:call-template name="get-tool-text">
<xsl:with-param name="text-key" select="'Instances'" />
</xsl:call-template>
</th>
</tr>
<xsl:for-each select="sfr:StepDefinitionReport/sfr:StepDefinition[@type=$block-name]">
<xsl:sort order="ascending" select="sfr:ScenarioStep/sfr:Text" data-type="text"/>
<xsl:if test="(/sfr:StepDefinitionReport/@showBindingsWithoutInsance='true') or sfr:Instances">
<xsl:variable name="stepdef-id" select="generate-id()" />
<tr>
<xsl:attribute name="class">
<xsl:choose>
<xsl:when test="not(sfr:Binding)">noBinding</xsl:when>
<xsl:when test="not(sfr:Instances)">noInstances</xsl:when>
<xsl:otherwise></xsl:otherwise>
</xsl:choose>
</xsl:attribute>
<td class="left">
<xsl:apply-templates select="sfr:ScenarioStep" />
</td>
<td>
<xsl:value-of select="count(./sfr:Instances/sfr:Instance)"/>
<xsl:if test="sfr:Instances">
<xsl:text> </xsl:text>
<a href="#" onclick="toggle('{$stepdef-id}', event); return false;" class="button">[<xsl:call-template name="get-common-tool-text">
<xsl:with-param name="text-key" select="'Show'" />
</xsl:call-template>]</a>
</xsl:if>
</td>
</tr>
<xsl:if test="sfr:Instances">
<tr id="{$stepdef-id}" class="hidden">
<td class="left" colspan="2">
<table class="subReportTable" cellpadding="0" cellspacing="0">
<tr>
<th class="top left">
<xsl:call-template name="get-tool-text">
<xsl:with-param name="text-key" select="'Instances'" />
</xsl:call-template>
<xsl:text>:</xsl:text>
</th>
</tr>
<xsl:for-each select="sfr:Instances/sfr:Instance">
<xsl:variable name="current-key" select="normalize-space(string(sfr:ScenarioStep))" />
<xsl:if test="generate-id() = generate-id(key('step-usage-variation', $current-key))">
<tr>
<td class="left">
<!--<xsl:value-of select="count(key('step-usage-variation', $current-key))"/>-->
<xsl:apply-templates select="sfr:ScenarioStep" />
<br/>
<xsl:for-each select="../sfr:Instance[normalize-space(string(sfr:ScenarioStep)) = $current-key]">
<xsl:apply-templates select="." mode="instance-ref" />
<br/>
</xsl:for-each>
</td>
</tr>
</xsl:if>
</xsl:for-each>
</table>
</td>
</tr>
</xsl:if>
</xsl:if>
</xsl:for-each>
</table>
</xsl:template>
<xsl:template match="sfr:Instance" mode="instance-ref">
<b>
<a class="instanceRef" href="{sfr:FeatureRef/@file}" title="{sfr:FeatureRef/@file}, line {sfr:ScenarioRef/@line}">
<xsl:value-of select="sfr:FeatureRef/@name"/>
<xsl:text> / </xsl:text>
<xsl:value-of select="sfr:ScenarioRef/@name"/>
<xsl:if test="@fromScenarioOutline = 'true'">
<xsl:text> </xsl:text>
<xsl:call-template name="get-tool-text">
<xsl:with-param name="text-key" select="'ScenarioOutlineExampleMessage'" />
</xsl:call-template>
</xsl:if>
</a>
</b>
</xsl:template>
<xsl:template name="step-param">
<xsl:param name="param-name" select="@name" />
<xsl:param name="instances-root" select="../../sfr:Instances" />
<xsl:variable name="param-sample">
<xsl:choose>
<xsl:when test="$instances-root/sfr:Instance/sfr:Parameters/sfr:Parameter[@name=$param-name]">
<xsl:value-of select="$instances-root/sfr:Instance/sfr:Parameters/sfr:Parameter[@name=$param-name]"/>
</xsl:when>
<xsl:otherwise>
<xsl:text>{</xsl:text>
<xsl:value-of select="$param-name"/>
<xsl:text>}</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:variable name="param-values">
<xsl:call-template name="get-tool-text">
<xsl:with-param name="text-key" select="'ParameterValuesPre'" />
</xsl:call-template>
<xsl:text>'</xsl:text><xsl:value-of select="$param-name"/>
<xsl:text>'</xsl:text>
<xsl:call-template name="get-tool-text">
<xsl:with-param name="text-key" select="'ParameterValuesPost'" />
</xsl:call-template>
<xsl:text>
</xsl:text>
<xsl:for-each select="$instances-root/sfr:Instance/sfr:Parameters/sfr:Parameter[@name=$param-name]">
<xsl:variable name="param-value" select="string(text())" />
<xsl:if test="not(../../preceding-sibling::sfr:Instance[string(sfr:Parameters/sfr:Parameter[@name=$param-name]/text())=$param-value])">
<xsl:value-of select="text()"/>
<xsl:text>
</xsl:text>
</xsl:if>
</xsl:for-each>
</xsl:variable>
<span class="stepParam" title="{$param-values}">
<xsl:value-of select="$param-sample"/>
</span>
</xsl:template>
<xsl:template match="sfr:Text">
<xsl:call-template name="display-text">
<xsl:with-param name="text" select="string(node())" />
</xsl:call-template>
</xsl:template>
<xsl:template name="display-text">
<xsl:param name="text" />
<xsl:choose>
<xsl:when test="contains($text, '{')">
<xsl:value-of select="substring-before($text, '{')" />
<xsl:variable name="rest" select="substring-after($text, '{')" />
<xsl:call-template name="step-param">
<xsl:with-param name="param-name" select="substring-before($rest, '}')" />
</xsl:call-template>
<xsl:call-template name="display-text">
<xsl:with-param name="text" select="substring-after($rest, '}')" />
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$text"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>
<EFBFBD>=<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:sfr="urn:TechTalk:SpecFlow.Report"
xmlns:nunit="urn:NUnit"
exclude-result-prefixes="msxsl">
<xsl:output method="html" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"/>
<xsl:include href="../Common/Common.xslt"/>
<xsl:template match="@* | node()">
<xsl:copy>
<xsl:apply-templates select="@* | node()"/>
</xsl:copy>
</xsl:template>
<xsl:key name="step-usage-variation" match="sfr:Instance" use="normalize-space(string(sfr:ScenarioStep))"/>
<xsl:template match="/">
<xsl:variable name="title">
<xsl:value-of select="sfr:NUnitExecutionReport/@projectName"/> Test Execution Report
</xsl:variable>
<html>
<head>
<xsl:call-template name="html-common-header">
<xsl:with-param name="title" select="$title" />
</xsl:call-template>
<style>
<![CDATA[
.bar
{
height: 1.5em;
}
.success
{
background-color: #22dd22;
}
.failure
{
background-color: #dd2222;
}
.ignored
{
background-color: #ffff00;
}
.pending
{
background-color: #dd66ff;
}
.bar div
{
height: 1.5em;
float: left;
}
div.failurePanel
{
background-color: #DDDDDD;
}
span.traceMessage
{
font-style:italic;
margin-left: 2em;
color: #888888;
}
]]>
</style>
</head>
<body>
<xsl:call-template name="html-body-header">
<xsl:with-param name="title" select="$title" />
</xsl:call-template>
<h2>Summary</h2>
<xsl:variable name="summary">
<xsl:call-template name="get-summary" />
</xsl:variable>
<table class="reportTable" cellpadding="0" cellspacing="0">
<tr>
<th class="top left">Features</th>
<th class="top" colspan="2">Success rate</th>
<th class="top">Scenarios</th>
<th class="top">Success</th>
<th class="top">Failed</th>
<th class="top">Pending</th>
<th class="top">Ignored</th>
</tr>
<tr>
<td class="left">
<xsl:value-of select="count(//nunit:test-suite[@type='TestFixture'])"/> features
</td>
<xsl:call-template name="summary-row">
<xsl:with-param name="summary" select="$summary" />
</xsl:call-template>
</tr>
</table>
<hr />
<h2>Feature Summary</h2>
<table class="reportTable" cellpadding="0" cellspacing="0">
<tr>
<th class="top left">Feature</th>
<th class="top" colspan="2">Success rate</th>
<th class="top">Scenarios</th>
<th class="top">Success</th>
<th class="top">Failed</th>
<th class="top">Pending</th>
<th class="top">Ignored</th>
</tr>
<xsl:apply-templates select="//nunit:test-suite[@type='TestFixture']" mode="summary">
<xsl:sort select="@description" />
<xsl:sort select="@name"/>
</xsl:apply-templates>
</table>
<h2>Feature Execution Details</h2>
<xsl:apply-templates select="//nunit:test-suite[@type='TestFixture']">
<xsl:sort select="@description" />
<xsl:sort select="@name"/>
</xsl:apply-templates>
</body>
</html>
</xsl:template>
<xsl:template match="nunit:test-suite" mode="summary">
<xsl:variable name="featureSummary">
<xsl:call-template name="get-summary" />
</xsl:variable>
<xsl:variable name="feature-id" select="generate-id()" />
<tr>
<td class="left">
<a href="#{$feature-id}"><xsl:call-template name="get-name"/></a>
</td>
<xsl:call-template name="summary-row">
<xsl:with-param name="summary" select="$featureSummary" />
</xsl:call-template>
</tr>
</xsl:template>
<xsl:template name="summary-row">
<xsl:param name="summary" />
<td>
<xsl:call-template name="get-success-rate">
<xsl:with-param name="summary" select="$summary" />
</xsl:call-template>
</td>
<td style="width:21em">
<xsl:call-template name="draw-bar">
<xsl:with-param name="summary" select="$summary" />
</xsl:call-template>
</td>
<td>
<xsl:value-of select="msxsl:node-set($summary)/*/all"/>
</td>
<td>
<xsl:value-of select="msxsl:node-set($summary)/*/success"/>
</td>
<td>
<xsl:value-of select="msxsl:node-set($summary)/*/failure"/>
</td>
<td>
<xsl:value-of select="msxsl:node-set($summary)/*/pending"/>
</td>
<td>
<xsl:value-of select="msxsl:node-set($summary)/*/ignored"/>
</td>
</xsl:template>
<xsl:template match="nunit:test-suite">
<xsl:variable name="feature-id" select="generate-id()" />
<a name="{$feature-id}" />
<h3><xsl:call-template name="get-keyword">
<xsl:with-param name="keyword" select="'Feature'" />
</xsl:call-template>: <xsl:call-template name="get-name"/></h3>
<table class="reportTable" cellpadding="0" cellspacing="0">
<tr>
<th class="top left">
<xsl:call-template name="get-keyword">
<xsl:with-param name="keyword" select="'Scenario'" />
</xsl:call-template>
</th>
<th class="top" style="width: 5em">Status</th>
<th class="top" style="width: 5em">Time(s)</th>
</tr>
<xsl:apply-templates select=".//nunit:test-case" />
</table>
</xsl:template>
<xsl:template match="nunit:test-case">
<xsl:variable name="scenarioSummary">
<xsl:call-template name="get-summary">
<xsl:with-param name="nodes" select="." />
</xsl:call-template>
</xsl:variable>
<xsl:variable name="status" select="local-name(msxsl:node-set($scenarioSummary)/*/*[local-name()!='all' and text() = '1'])" />
<xsl:variable name="scenario-id" select="generate-id()" />
<xsl:variable name="testName" select="@name" />
<tr>
<td class="left">
<xsl:call-template name="get-name"/>
<xsl:if test="/sfr:NUnitExecutionReport/sfr:ScenarioOutput[@name = $testName]">
<xsl:text> </xsl:text>
<a href="#" onclick="toggle('out{$scenario-id}', event); return false;" class="button">[<xsl:call-template name="get-common-tool-text">
<xsl:with-param name="text-key" select="'Show'" />
</xsl:call-template>]</a>
</xsl:if>
</td>
<td class="{$status}">
<xsl:value-of select="$status"/>
<xsl:if test="$status = 'failure'">
<xsl:text> </xsl:text>
<a href="#" onclick="toggle('err{$scenario-id}', event); return false;" class="button">[<xsl:call-template name="get-common-tool-text">
<xsl:with-param name="text-key" select="'Show'" />
</xsl:call-template>]</a>
</xsl:if>
</td>
<td>
<xsl:choose>
<xsl:when test="@time">
<xsl:value-of select="@time"/>
</xsl:when>
<xsl:otherwise>N/A</xsl:otherwise>
</xsl:choose>
</td>
</tr>
<xsl:if test="/sfr:NUnitExecutionReport/sfr:ScenarioOutput[@name = $testName]">
<tr id="out{$scenario-id}" class="hidden">
<td class="left subRow" colspan="3">
<div class="failurePanel">
<pre>
<xsl:call-template name="scenario-output">
<xsl:with-param name="word" select="/sfr:NUnitExecutionReport/sfr:ScenarioOutput[@name = $testName]/sfr:Text"/>
</xsl:call-template>
</pre>
</div>
</td>
</tr>
</xsl:if>
<xsl:if test="$status = 'failure'">
<tr id="err{$scenario-id}" class="hidden">
<td class="left subRow" colspan="3">
<xsl:apply-templates select="nunit:failure" />
</td>
</tr>
</xsl:if>
</xsl:template>
<xsl:template match="nunit:failure">
<div class="failurePanel">
<xsl:choose>
<xsl:when test="not(nunit:message)">N/A</xsl:when>
<xsl:otherwise>
<b>
<xsl:call-template name="br-replace">
<xsl:with-param name="word" select="nunit:message"/>
</xsl:call-template>
</b>
</xsl:otherwise>
</xsl:choose>
<!-- display the stacktrace -->
<code>
<br/>
<xsl:call-template name="br-replace">
<xsl:with-param name="word" select="nunit:stack-trace"/>
</xsl:call-template>
</code>
</div>
</xsl:template>
<xsl:template name="br-replace">
<xsl:param name="word"/>
<xsl:choose>
<xsl:when test="contains($word,'&#xA;')">
<xsl:value-of select="substring-before($word,'&#xA;')"/>
<br/>
<xsl:call-template name="br-replace">
<xsl:with-param name="word" select="substring-after($word,'&#xA;')"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$word"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="scenario-output">
<xsl:param name="word"/>
<xsl:param name="traceMode" select="Normal" />
<xsl:choose>
<xsl:when test="contains($word,'&#xA;')">
<xsl:variable name="line" select="substring-before($word,'&#xA;')" />
<xsl:variable name="newTraceMode">
<xsl:call-template name="get-scenario-trace-mode">
<xsl:with-param name="text" select="$line" />
<xsl:with-param name="traceMode" select="$traceMode" />
</xsl:call-template>
</xsl:variable>
<xsl:call-template name="scenario-line-output">
<xsl:with-param name="text" select="$line" />
<xsl:with-param name="traceMode" select="$newTraceMode" />
</xsl:call-template>
<xsl:call-template name="scenario-output">
<xsl:with-param name="word" select="substring-after($word,'&#xA;')"/>
<xsl:with-param name="traceMode" select="$newTraceMode" />
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:variable name="newTraceMode">
<xsl:call-template name="get-scenario-trace-mode">
<xsl:with-param name="text" select="$word" />
<xsl:with-param name="traceMode" select="$traceMode" />
</xsl:call-template>
</xsl:variable>
<xsl:call-template name="scenario-line-output">
<xsl:with-param name="text" select="$word" />
<xsl:with-param name="traceMode" select="$newTraceMode" />
</xsl:call-template>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="get-scenario-trace-mode">
<xsl:param name="text" />
<xsl:param name="traceMode" />
<xsl:choose>
<xsl:when test="starts-with($text, '->')">Trace</xsl:when>
<xsl:when test="$traceMode = 'Trace' and not(starts-with($text, ' '))">Normal</xsl:when>
<xsl:when test="$traceMode = 'Trace'">Trace</xsl:when>
<xsl:otherwise>Normal</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="scenario-line-output">
<xsl:param name="text" />
<xsl:param name="traceMode" />
<xsl:choose>
<xsl:when test="$traceMode = 'Trace'">
<span class="traceMessage">
<xsl:value-of select="$text"/>
</span>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$text"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="get-summary">
<xsl:param name="nodes" select=".//nunit:test-case" />
<testCaseSummary>
<all>
<xsl:value-of select="count($nodes)"/>
</all>
<success>
<xsl:value-of select="count($nodes[@executed = 'True' and @success='True'])"/>
</success>
<failure>
<xsl:value-of select="count($nodes[@executed = 'True' and @success='False' and nunit:failure])"/>
</failure>
<pending>
<xsl:value-of select="count($nodes[@executed = 'True' and @success='False' and not(nunit:failure)])"/>
</pending>
<ignored>
<xsl:value-of select="count($nodes[@executed = 'False'])"/>
</ignored>
</testCaseSummary>
</xsl:template>
<xsl:template name="get-success-rate">
<xsl:param name="summary" />
<xsl:value-of select="round(msxsl:node-set($summary)/*/success * 100 div msxsl:node-set($summary)/*/all)"/>
<xsl:text>%</xsl:text>
</xsl:template>
<xsl:template name="draw-bar">
<xsl:param name="summary" />
<xsl:variable name="testCount" select="msxsl:node-set($summary)/*/all" />
<xsl:variable name="successWidth" select="(msxsl:node-set($summary)/*/success * 20 div $testCount)" />
<xsl:variable name="failureWidth" select="(msxsl:node-set($summary)/*/failure * 20 div $testCount)" />
<xsl:variable name="pendingWidth" select="(msxsl:node-set($summary)/*/pending * 20 div $testCount)" />
<xsl:variable name="ignoredWidth" select="(msxsl:node-set($summary)/*/ignored * 20 div $testCount)" />
<div class="bar">
<xsl:if test="$successWidth != 0">
<div class="success" style="width:{$successWidth}em" title="{msxsl:node-set($summary)/*/success} succeeded">
<xsl:text disable-output-escaping="yes"><![CDATA[&nbsp;]]></xsl:text>
</div>
</xsl:if>
<xsl:if test="$failureWidth != 0">
<div class="failure" style="width:{$failureWidth}em" title="{msxsl:node-set($summary)/*/failure} failed">
<xsl:text disable-output-escaping="yes"><![CDATA[&nbsp;]]></xsl:text>
</div>
</xsl:if>
<xsl:if test="$pendingWidth != 0">
<div class="pending" style="width:{$pendingWidth}em" title="{msxsl:node-set($summary)/*/pending} pending/not bound">
<xsl:text disable-output-escaping="yes"><![CDATA[&nbsp;]]></xsl:text>
</div>
</xsl:if>
<xsl:if test="$ignoredWidth != 0">
<div class="ignored" style="width:{$ignoredWidth}em" title="{msxsl:node-set($summary)/*/ignored} ignored">
<xsl:text disable-output-escaping="yes"><![CDATA[&nbsp;]]></xsl:text>
</div>
</xsl:if>
</div>
</xsl:template>
<xsl:template name="get-name">
<xsl:choose>
<xsl:when test="./@description">
<span title="{@name}">
<xsl:value-of select="./@description"/>
</span>
</xsl:when>
<xsl:when test="../../@type='ParameterizedTest' and ../../@description">
<span title="{@name}">
<xsl:value-of select="../../@description"/>
<xsl:text>(</xsl:text>
<xsl:value-of select="substring-after(./@name,'(')"/>
</span>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="./@name"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>
<00>\<?xml version="1.0" encoding="utf-8"?>
<SpecFlowLanguages>
<Language code="ar" cultureInfo="ar" defaultSpecificCulture="ar-SA" englishName="Arabic">
<Feature>خاصية</Feature>
<Background>الخلفية</Background>
<Scenario>سيناريو</Scenario>
<ScenarioOutline>سيناريو مخطط</ScenarioOutline>
<Examples>امثلة</Examples>
<Given>بفرض</Given>
<When>متى</When>
<When>عندما</When>
<Then>اذاً</Then>
<Then>ثم</Then>
<And>و</And>
<But>لكن</But>
</Language>
<Language code="bg" cultureInfo="bg" defaultSpecificCulture="bg-BG" englishName="Bulgarian">
<Feature>Функционалност</Feature>
<Background>Предистория</Background>
<Scenario>Сценарий</Scenario>
<ScenarioOutline>Рамка на сценарий</ScenarioOutline>
<Examples>Примери</Examples>
<Given>Дадено</Given>
<When>Когато</When>
<Then>То</Then>
<And>И</And>
<But>Но</But>
</Language>
<Language code="ca" cultureInfo="ca" defaultSpecificCulture="ca-ES" englishName="Catalan">
<Feature>Característica</Feature>
<Feature>Funcionalitat</Feature>
<Background>Rerefons</Background>
<Background>Antecedents</Background>
<Scenario>Escenari</Scenario>
<ScenarioOutline>Esquema de l'escenari</ScenarioOutline>
<Examples>Exemples</Examples>
<Given>Donat</Given>
<Given>Donada</Given>
<Given>Atès</Given>
<Given>Atesa</Given>
<When>Quan</When>
<Then>Aleshores</Then>
<Then>Cal</Then>
<And>I</And>
<But>Però</But>
</Language>
<Language code="cs" cultureInfo="cs" defaultSpecificCulture="cs-CZ" englishName="Czech">
<Feature>Požadavek</Feature>
<Background>Pozadí</Background>
<Background>Kontext</Background>
<Scenario>Scénář</Scenario>
<ScenarioOutline>Náčrt Scénáře</ScenarioOutline>
<ScenarioOutline>Osnova scénáře</ScenarioOutline>
<Examples>Příklady</Examples>
<Given>Pokud</Given>
<When>Když</When>
<Then>Pak</Then>
<And>A</And>
<And>A také</And>
<But>Ale</But>
</Language>
<Language code="cy-GB" cultureInfo="cy-GB" englishName="Welsh (United Kingdom)">
<Feature>Arwedd</Feature>
<Background>Cefndir</Background>
<Scenario>Scenario</Scenario>
<ScenarioOutline>Scenario Amlinellol</ScenarioOutline>
<Examples>Enghreifftiau</Examples>
<Given>Anrhegedig a</Given>
<When>Pryd</When>
<Then>Yna</Then>
<And>A</And>
<But>Ond</But>
</Language>
<Language code="da" cultureInfo="da" defaultSpecificCulture="da-DK" englishName="Danish">
<Feature>Egenskab</Feature>
<Background>Baggrund</Background>
<Scenario>Scenarie</Scenario>
<ScenarioOutline>Abstrakt Scenario</ScenarioOutline>
<Examples>Eksempler</Examples>
<Given>Givet</Given>
<When>Når</When>
<Then>Så</Then>
<And>Og</And>
<But>Men</But>
</Language>
<Language code="de" cultureInfo="de" defaultSpecificCulture="de-DE" englishName="German">
<Feature>Funktionalität</Feature>
<Background>Grundlage</Background>
<Scenario>Szenario</Scenario>
<ScenarioOutline>Szenariogrundriss</ScenarioOutline>
<Examples>Beispiele</Examples>
<Given>Angenommen</Given>
<Given>Gegeben sei</Given>
<When>Wenn</When>
<Then>Dann</Then>
<And>Und</And>
<But>Aber</But>
</Language>
<Language code="en" cultureInfo="en" defaultSpecificCulture="en-US" englishName="English">
<Feature>Feature</Feature>
<Background>Background</Background>
<Scenario>Scenario</Scenario>
<ScenarioOutline>Scenario Outline</ScenarioOutline>
<ScenarioOutline>Scenario Template</ScenarioOutline>
<Examples>Examples</Examples>
<Examples>Scenarios</Examples>
<Given>Given</Given>
<When>When</When>
<Then>Then</Then>
<And>And</And>
<But>But</But>
</Language>
<Language code="en-AU" cultureInfo="en-AU" englishName="English (Australia)">
<Feature>Crikey</Feature>
<Background>Background</Background>
<Scenario>Mate</Scenario>
<ScenarioOutline>Blokes</ScenarioOutline>
<Examples>Cobber</Examples>
<Given>Ya know how</Given>
<When>When</When>
<Then>Ya gotta</Then>
<And>N</And>
<But>Cept</But>
</Language>
<Language code="en-LOL" cultureInfo="en" englishName="English">
<Feature>OH HAI</Feature>
<Background>B4</Background>
<Scenario>MISHUN</Scenario>
<ScenarioOutline>MISHUN SRSLY</ScenarioOutline>
<Examples>EXAMPLZ</Examples>
<Given>I CAN HAZ</Given>
<When>WEN</When>
<Then>DEN</Then>
<And>AN</And>
<But>BUT</But>
</Language>
<Language code="en-PIRATE" cultureInfo="en" englishName="English">
<Feature>Ahoy matey!</Feature>
<Background>Yo-ho-ho</Background>
<Scenario>Heave to</Scenario>
<ScenarioOutline>Shiver me timbers</ScenarioOutline>
<Examples>Dead men tell no tales</Examples>
<Given>Gangway!</Given>
<When>Blimey!</When>
<Then>Let go and haul</Then>
<And>Aye</And>
<But>Avast!</But>
</Language>
<Language code="en-SCOUSE" cultureInfo="en" englishName="English">
<Feature>Feature</Feature>
<Background>Dis is what went down</Background>
<Scenario>The thing of it is</Scenario>
<ScenarioOutline>Wharrimean is</ScenarioOutline>
<Examples>Examples</Examples>
<Given>Givun</Given>
<Given>Youse know when youse got</Given>
<When>Wun</When>
<When>Youse know like when</When>
<Then>Dun</Then>
<Then>Den youse gotta</Then>
<And>An</And>
<But>Buh</But>
</Language>
<Language code="en-TX" cultureInfo="en" englishName="English">
<Feature>Feature</Feature>
<Background>Background</Background>
<Scenario>Scenario</Scenario>
<ScenarioOutline>All y'all</ScenarioOutline>
<Examples>Examples</Examples>
<Given>Given y'all</Given>
<When>When y'all</When>
<Then>Then y'all</Then>
<And>And y'all</And>
<But>But y'all</But>
</Language>
<Language code="es" cultureInfo="es" defaultSpecificCulture="es-ES" englishName="Spanish">
<Feature>Característica</Feature>
<Background>Antecedentes</Background>
<Scenario>Escenario</Scenario>
<ScenarioOutline>Esquema del escenario</ScenarioOutline>
<Examples>Ejemplos</Examples>
<Given>Dado</Given>
<Given>Dada</Given>
<Given>Dados</Given>
<Given>Dadas</Given>
<When>Cuando</When>
<Then>Entonces</Then>
<And>Y</And>
<But>Pero</But>
</Language>
<Language code="et" cultureInfo="et" defaultSpecificCulture="et-EE" englishName="Estonian">
<Feature>Omadus</Feature>
<Background>Taust</Background>
<Scenario>Stsenaarium</Scenario>
<ScenarioOutline>Raamstsenaarium</ScenarioOutline>
<Examples>Juhtumid</Examples>
<Given>Eeldades</Given>
<When>Kui</When>
<Then>Siis</Then>
<And>Ja</And>
<But>Kuid</But>
</Language>
<Language code="fi" cultureInfo="fi" defaultSpecificCulture="fi-FI" englishName="Finnish">
<Feature>Ominaisuus</Feature>
<Background>Tausta</Background>
<Scenario>Tapaus</Scenario>
<ScenarioOutline>Tapausaihio</ScenarioOutline>
<Examples>Tapaukset</Examples>
<Given>Oletetaan</Given>
<When>Kun</When>
<Then>Niin</Then>
<And>Ja</And>
<But>Mutta</But>
</Language>
<Language code="fr" cultureInfo="fr" defaultSpecificCulture="fr-FR" englishName="French">
<Feature>Fonctionnalité</Feature>
<Background>Contexte</Background>
<Scenario>Scénario</Scenario>
<ScenarioOutline>Plan du scénario</ScenarioOutline>
<ScenarioOutline>Plan du Scénario</ScenarioOutline>
<Examples>Exemples</Examples>
<Given>Soit</Given>
<Given>Etant donné</Given>
<Given>Etant donnée</Given>
<Given>Etant donnés</Given>
<Given>Etant données</Given>
<Given>Étant donné</Given>
<Given>Étant donnée</Given>
<Given>Étant donnés</Given>
<Given>Étant données</Given>
<When>Quand</When>
<When>Lorsque</When>
<When>Lorsqu'</When>
<Then>Alors</Then>
<And>Et</And>
<But>Mais</But>
</Language>
<Language code="he" cultureInfo="he" defaultSpecificCulture="he-IL" englishName="Hebrew">
<Feature>תכונה</Feature>
<Background>רקע</Background>
<Scenario>תרחיש</Scenario>
<ScenarioOutline>תבנית תרחיש</ScenarioOutline>
<Examples>דוגמאות</Examples>
<Given>בהינתן</Given>
<When>כאשר</When>
<Then>אז</Then>
<Then>אזי</Then>
<And>וגם</And>
<But>אבל</But>
</Language>
<Language code="hr" cultureInfo="hr" defaultSpecificCulture="hr-HR" englishName="Croatian">
<Feature>Osobina</Feature>
<Feature>Mogućnost</Feature>
<Feature>Mogucnost</Feature>
<Background>Pozadina</Background>
<Scenario>Scenarij</Scenario>
<ScenarioOutline>Skica</ScenarioOutline>
<ScenarioOutline>Koncept</ScenarioOutline>
<Examples>Primjeri</Examples>
<Examples>Scenariji</Examples>
<Given>Zadan</Given>
<Given>Zadani</Given>
<Given>Zadano</Given>
<When>Kada</When>
<When>Kad</When>
<Then>Onda</Then>
<And>I</And>
<But>Ali</But>
</Language>
<Language code="hu" cultureInfo="hu" defaultSpecificCulture="hu-HU" englishName="Hungarian">
<Feature>Jellemző</Feature>
<Background>Háttér</Background>
<Scenario>Forgatókönyv</Scenario>
<ScenarioOutline>Forgatókönyv vázlat</ScenarioOutline>
<Examples>Példák</Examples>
<Given>Amennyiben</Given>
<Given>Adott</Given>
<When>Majd</When>
<When>Ha</When>
<When>Amikor</When>
<Then>Akkor</Then>
<And>És</And>
<But>De</But>
</Language>
<Language code="id" cultureInfo="id" defaultSpecificCulture="id-ID" englishName="Indonesian">
<Feature>Fitur</Feature>
<Background>Dasar</Background>
<Scenario>Skenario</Scenario>
<ScenarioOutline>Skenario konsep</ScenarioOutline>
<Examples>Contoh</Examples>
<Given>Dengan</Given>
<When>Ketika</When>
<Then>Maka</Then>
<And>Dan</And>
<But>Tapi</But>
</Language>
<Language code="is" cultureInfo="is" defaultSpecificCulture="is-IS" englishName="Icelandic">
<Feature>Eiginleiki</Feature>
<Background>Bakgrunnur</Background>
<Scenario>Atburðarás</Scenario>
<ScenarioOutline>Lýsing Atburðarásar</ScenarioOutline>
<ScenarioOutline>Lýsing Dæma</ScenarioOutline>
<Examples>Dæmi</Examples>
<Examples>Atburðarásir</Examples>
<Given>Ef</Given>
<When>Þegar</When>
<Then>Þá</Then>
<And>Og</And>
<But>En</But>
</Language>
<Language code="it" cultureInfo="it" defaultSpecificCulture="it-IT" englishName="Italian">
<Feature>Funzionalità</Feature>
<Background>Contesto</Background>
<Scenario>Scenario</Scenario>
<ScenarioOutline>Schema dello scenario</ScenarioOutline>
<Examples>Esempi</Examples>
<Given>Dato</Given>
<Given>Data</Given>
<Given>Dati</Given>
<Given>Date</Given>
<When>Quando</When>
<Then>Allora</Then>
<And>E</And>
<But>Ma</But>
</Language>
<Language code="ja" cultureInfo="ja" defaultSpecificCulture="ja-JP" englishName="Japanese">
<Feature>フィーチャ</Feature>
<Feature>機能</Feature>
<Background>背景</Background>
<Scenario>シナリオ</Scenario>
<ScenarioOutline>シナリオアウトライン</ScenarioOutline>
<ScenarioOutline>シナリオテンプレート</ScenarioOutline>
<ScenarioOutline>テンプレ</ScenarioOutline>
<ScenarioOutline>シナリオテンプレ</ScenarioOutline>
<Examples>例</Examples>
<Examples>サンプル</Examples>
<Given>前提</Given>
<When>もし</When>
<Then>ならば</Then>
<And>かつ</And>
<But>しかし</But>
<But>但し</But>
<But>ただし</But>
</Language>
<Language code="ko" cultureInfo="ko" defaultSpecificCulture="ko-KR" englishName="Korean">
<Feature>기능</Feature>
<Background>배경</Background>
<Scenario>시나리오</Scenario>
<ScenarioOutline>시나리오 개요</ScenarioOutline>
<Examples>예</Examples>
<Given>조건</Given>
<Given>먼저</Given>
<When>만일</When>
<When>만약</When>
<Then>그러면</Then>
<And>그리고</And>
<But>하지만</But>
<But>단</But>
</Language>
<Language code="lt" cultureInfo="lt" defaultSpecificCulture="lt-LT" englishName="Lithuanian">
<Feature>Savybė</Feature>
<Background>Kontekstas</Background>
<Scenario>Scenarijus</Scenario>
<ScenarioOutline>Scenarijaus šablonas</ScenarioOutline>
<Examples>Pavyzdžiai</Examples>
<Examples>Scenarijai</Examples>
<Examples>Variantai</Examples>
<Given>Duota</Given>
<When>Kai</When>
<Then>Tada</Then>
<And>Ir</And>
<But>Bet</But>
</Language>
<Language code="lb-LU" cultureInfo="lb-LU" compatibleGherkinCode="lu" englishName="Luxembourgish (Luxembourg)">
<Feature>Funktionalitéit</Feature>
<Background>Hannergrond</Background>
<Scenario>Szenario</Scenario>
<ScenarioOutline>Plang vum Szenario</ScenarioOutline>
<Examples>Beispiller</Examples>
<Given>ugeholl</Given>
<When>wann</When>
<Then>dann</Then>
<And>an</And>
<And>a</And>
<But>awer</But>
<But>mä</But>
</Language>
<Language code="lv" cultureInfo="lv" defaultSpecificCulture="lv-LV" englishName="Latvian">
<Feature>Funkcionalitāte</Feature>
<Feature>Fīča</Feature>
<Background>Konteksts</Background>
<Background>Situācija</Background>
<Scenario>Scenārijs</Scenario>
<ScenarioOutline>Scenārijs pēc parauga</ScenarioOutline>
<Examples>Piemēri</Examples>
<Examples>Paraugs</Examples>
<Given>Kad</Given>
<When>Ja</When>
<Then>Tad</Then>
<And>Un</And>
<But>Bet</But>
</Language>
<Language code="nl" cultureInfo="nl" defaultSpecificCulture="nl-NL" englishName="Dutch">
<Feature>Functionaliteit</Feature>
<Background>Achtergrond</Background>
<Scenario>Scenario</Scenario>
<ScenarioOutline>Abstract Scenario</ScenarioOutline>
<Examples>Voorbeelden</Examples>
<Given>Gegeven</Given>
<Given>Stel</Given>
<When>Als</When>
<Then>Dan</Then>
<And>En</And>
<But>Maar</But>
</Language>
<Language code="no" cultureInfo="no" defaultSpecificCulture="nb-NO" englishName="Norwegian">
<Feature>Egenskap</Feature>
<Background>Bakgrunn</Background>
<Scenario>Scenario</Scenario>
<ScenarioOutline>Scenariomal</ScenarioOutline>
<ScenarioOutline>Abstrakt Scenario</ScenarioOutline>
<Examples>Eksempler</Examples>
<Given>Gitt</Given>
<When>Når</When>
<Then>Så</Then>
<And>Og</And>
<But>Men</But>
</Language>
<Language code="pl" cultureInfo="pl" defaultSpecificCulture="pl-PL" englishName="Polish">
<Feature>Właściwość</Feature>
<Background>Założenia</Background>
<Scenario>Scenariusz</Scenario>
<ScenarioOutline>Szablon scenariusza</ScenarioOutline>
<Examples>Przykłady</Examples>
<Given>Zakładając</Given>
<Given>Mając</Given>
<When>Jeżeli</When>
<When>Jeśli</When>
<Then>Wtedy</Then>
<And>Oraz</And>
<And>I</And>
<But>Ale</But>
</Language>
<Language code="pt" cultureInfo="pt" defaultSpecificCulture="pt-PT" englishName="Portuguese">
<Feature>Funcionalidade</Feature>
<Background>Contexto</Background>
<Scenario>Cenário</Scenario>
<Scenario>Cenario</Scenario>
<ScenarioOutline>Esquema do Cenário</ScenarioOutline>
<ScenarioOutline>Esquema do Cenario</ScenarioOutline>
<Examples>Exemplos</Examples>
<Given>Dado</Given>
<Given>Dada</Given>
<Given>Dados</Given>
<Given>Dadas</Given>
<When>Quando</When>
<Then>Então</Then>
<Then>Entao</Then>
<And>E</And>
<But>Mas</But>
</Language>
<Language code="ro" cultureInfo="ro" defaultSpecificCulture="ro-RO" englishName="Romanian">
<Feature>Functionalitate</Feature>
<Feature>Funcționalitate</Feature>
<Feature>Funcţionalitate</Feature>
<Background>Context</Background>
<Scenario>Scenariu</Scenario>
<ScenarioOutline>Structura scenariu</ScenarioOutline>
<ScenarioOutline>Structură scenariu</ScenarioOutline>
<Examples>Exemple</Examples>
<Given>Date fiind</Given>
<Given>Dat fiind</Given>
<Given>Dati fiind</Given>
<Given>Dați fiind</Given>
<Given>Daţi fiind</Given>
<When>Cand</When>
<When>Când</When>
<Then>Atunci</Then>
<And>Si</And>
<And>Și</And>
<And>Şi</And>
<But>Dar</But>
</Language>
<Language code="ru" cultureInfo="ru" defaultSpecificCulture="ru-RU" englishName="Russian">
<Feature>Функция</Feature>
<Feature>Функционал</Feature>
<Feature>Свойство</Feature>
<Background>Предыстория</Background>
<Background>Контекст</Background>
<Scenario>Сценарий</Scenario>
<ScenarioOutline>Структура сценария</ScenarioOutline>
<Examples>Примеры</Examples>
<Given>Допустим</Given>
<Given>Дано</Given>
<Given>Пусть</Given>
<When>Если</When>
<When>Когда</When>
<Then>То</Then>
<Then>Тогда</Then>
<And>И</And>
<And>К тому же</And>
<But>Но</But>
<But>А</But>
</Language>
<Language code="sk" cultureInfo="sk" defaultSpecificCulture="sk-SK" englishName="Slovak">
<Feature>Požiadavka</Feature>
<Background>Pozadie</Background>
<Scenario>Scenár</Scenario>
<ScenarioOutline>Náčrt Scenáru</ScenarioOutline>
<Examples>Príklady</Examples>
<Given>Pokiaľ</Given>
<When>Keď</When>
<Then>Tak</Then>
<And>A</And>
<But>Ale</But>
</Language>
<Language code="sr-CYRL" cultureInfo="sr" englishName="Serbian">
<Feature>Функционалност</Feature>
<Feature>Могућност</Feature>
<Feature>Особина</Feature>
<Background>Контекст</Background>
<Background>Основа</Background>
<Background>Позадина</Background>
<Scenario>Сценарио</Scenario>
<Scenario>Пример</Scenario>
<ScenarioOutline>Структура сценарија</ScenarioOutline>
<ScenarioOutline>Скица</ScenarioOutline>
<ScenarioOutline>Концепт</ScenarioOutline>
<Examples>Примери</Examples>
<Examples>Сценарији</Examples>
<Given>Задато</Given>
<Given>Задате</Given>
<Given>Задати</Given>
<When>Када</When>
<When>Кад</When>
<Then>Онда</Then>
<And>И</And>
<But>Али</But>
</Language>
<Language code="sr-LATN" cultureInfo="sr" englishName="Serbian">
<Feature>Funkcionalnost</Feature>
<Feature>Mogućnost</Feature>
<Feature>Mogucnost</Feature>
<Feature>Osobina</Feature>
<Background>Kontekst</Background>
<Background>Osnova</Background>
<Background>Pozadina</Background>
<Scenario>Scenario</Scenario>
<Scenario>Primer</Scenario>
<ScenarioOutline>Struktura scenarija</ScenarioOutline>
<ScenarioOutline>Skica</ScenarioOutline>
<ScenarioOutline>Koncept</ScenarioOutline>
<Examples>Primeri</Examples>
<Examples>Scenariji</Examples>
<Given>Zadato</Given>
<Given>Zadate</Given>
<Given>Zatati</Given>
<When>Kada</When>
<When>Kad</When>
<Then>Onda</Then>
<And>I</And>
<But>Ali</But>
</Language>
<Language code="sv" cultureInfo="sv" defaultSpecificCulture="sv-SE" englishName="Swedish">
<Feature>Egenskap</Feature>
<Background>Bakgrund</Background>
<Scenario>Scenario</Scenario>
<ScenarioOutline>Abstrakt Scenario</ScenarioOutline>
<ScenarioOutline>Scenariomall</ScenarioOutline>
<Examples>Exempel</Examples>
<Given>Givet</Given>
<When>När</When>
<Then>Så</Then>
<And>Och</And>
<But>Men</But>
</Language>
<Language code="tr" cultureInfo="tr" defaultSpecificCulture="tr-TR" englishName="Turkish">
<Feature>Özellik</Feature>
<Background>Geçmiş</Background>
<Scenario>Senaryo</Scenario>
<ScenarioOutline>Senaryo taslağı</ScenarioOutline>
<Examples>Örnekler</Examples>
<Given>Diyelim ki</Given>
<When>Eğer ki</When>
<Then>O zaman</Then>
<And>Ve</And>
<But>Fakat</But>
<But>Ama</But>
</Language>
<Language code="uk" cultureInfo="uk" defaultSpecificCulture="uk-UA" englishName="Ukrainian">
<Feature>Функціонал</Feature>
<Background>Передумова</Background>
<Scenario>Сценарій</Scenario>
<ScenarioOutline>Структура сценарію</ScenarioOutline>
<Examples>Приклади</Examples>
<Given>Припустимо</Given>
<Given>Припустимо, що</Given>
<Given>Нехай</Given>
<Given>Дано</Given>
<When>Якщо</When>
<When>Коли</When>
<Then>То</Then>
<Then>Тоді</Then>
<And>І</And>
<And>А також</And>
<And>Та</And>
<But>Але</But>
</Language>
<Language code="uz" cultureInfo="uz" defaultSpecificCulture="uz-Cyrl-UZ" englishName="Uzbek">
<Feature>Функционал</Feature>
<Background>Тарих</Background>
<Scenario>Сценарий</Scenario>
<ScenarioOutline>Сценарий структураси</ScenarioOutline>
<Examples>Мисоллар</Examples>
<Given>Агар</Given>
<When>Агар</When>
<Then>Унда</Then>
<And>Ва</And>
<But>Лекин</But>
<But>Бирок</But>
<But>Аммо</But>
</Language>
<Language code="vi" cultureInfo="vi" defaultSpecificCulture="vi-VN" englishName="Vietnamese">
<Feature>Tính năng</Feature>
<Background>Bối cảnh</Background>
<Scenario>Tình huống</Scenario>
<Scenario>Kịch bản</Scenario>
<ScenarioOutline>Khung tình huống</ScenarioOutline>
<ScenarioOutline>Khung kịch bản</ScenarioOutline>
<Examples>Dữ liệu</Examples>
<Given>Biết</Given>
<Given>Cho</Given>
<When>Khi</When>
<Then>Thì</Then>
<And>Và</And>
<But>Nhưng</But>
</Language>
<Language code="zh-CN" cultureInfo="zh-CN" englishName="Chinese (People's Republic of China)">
<Feature>功能</Feature>
<Background>背景</Background>
<Scenario>场景</Scenario>
<ScenarioOutline>场景大纲</ScenarioOutline>
<Examples>例子</Examples>
<Given>假如</Given>
<When>当</When>
<Then>那么</Then>
<And>而且</And>
<But>但是</But>
</Language>
<Language code="zh-TW" cultureInfo="zh-TW" englishName="Chinese (Taiwan)">
<Feature>功能</Feature>
<Background>背景</Background>
<Scenario>場景</Scenario>
<Scenario>劇本</Scenario>
<ScenarioOutline>場景大綱</ScenarioOutline>
<ScenarioOutline>劇本大綱</ScenarioOutline>
<Examples>例子</Examples>
<Given>假設</Given>
<When>當</When>
<Then>那麼</Then>
<And>而且</And>
<And>並且</And>
<But>但是</But>
</Language>
</SpecFlowLanguages>BSJB v2.0.50727lt#~<00><00>##Strings<00>C`#US<00>G#GUID<00>Gd #BlobW<1D> <00>%3<00>"H<00><00>"y$ .
<00><03><00><03>
<00><03>
<00><03>
<04><04>`N<00><04><00><04>3<00><07><08>:NE<08><00><08>
D <09>
0 <0B><00> ~ <00> <0B><00> <0B>  ~
{ <0C><00> <0C>  <0A>H ~ V ~ <00> <00> ~ <00> ~ =<0F>
f<00><0F>
<00><0F>9<10>cNzN<00>N<00><12><00>N<00>NN2NKNfN<00>N<00><13><00><13><00><13>
<14><13>M-m-<00>-<00><14><00>N<00>N<00>-N<<15>T<15><00>N<00><15><00><15><00><15> <00><15>
<16>;)LNu)<00>N<00><16>_<00><17>!<18>[D<00><18><00><18>?<19><00><19><00><19>
<00><19>

'
4<1A>@<1A>T<1A> ma
<1A>
<00><1A>
<00><1A>
<00><1A>
<00><1A>
><1B>
d<1B><00><1B> <00><1B> <00><1B>
<1C>
<1C>
'<1C>
7f
Hf
Yf
of<00><1C><00><1C><1D>e )N
?f<00><1D>/*~ N~ <00>~ <00>e<00><1E><00>e<00>~ <00>~ 8~ c<00><1F><00>~ <00>~ <00>~ <00>a<00>  Z <00> !<21>+!~ /!~ <00>!<21> <00>!<21> <00>!<21> <00>!<21>
"<00>*:Z:ev <00>  <00>v <00>v<00>v %<00><00><00>.!@$6r <<00><00>v?<00>@0F<00><01>$I<00><01>N-<02>O<00><v!P<00>Iv!Rdl!S<00>l"T<00>l$U<00>l)V<00>l+W<00>l-X<00>l1Y<00>v6Z *7`[<03>0Atz*0Cy<00>vE~<00><00>vE<00><00>E<00>( F<00>i H<00><00>/<00>SMwgz}z<00>w<00><06>w<07>6SV/{/<00><16>&<17>!m =~ A<00> w!<00> w!<00> w$
w>
wZ
w<00>
w!m rV<><56>
wV<> w w$ w8 <0B>K <0B>[ w` w<00>w[ w<00>w<00> /<00><00>  [ w) w[ w/ zwd > V<><56>
w w$ wH /c #!s w!<00> ^!<00> b!<00> j<00> r v! <0A>!2 # <0E><00>  ^!<21> [w<00>
w<00>w/<00> ^; z[<11>
| <02> <00>
!<00>1 !<00><!<00>G+!<00>\!<00>i%<00>!<00>{+<00>!<00><00>6,"<00><00>=d"<00><00>E
t"<00><00>K <00>"<00>{+ <00>"<00>{W <00>"<00><00>]<00>"<00> e<00>"<00>i<00>"<00>%n<00>"<00>.r<00>"<00>7n#<00>Br #<00>{+#<00><08>e#<00><08>i"#<00><08><05>*#<00><08><05>3#<00><08>e;#<00>iD#<00>9<06>L#<00>C<06>U#<00>M<06>]#<00>`Wf#<00>s<06>n#<00><08><06>w#<00><08><06>#<00><08><06><00>#<00>{+<00>#<00><08><00>#<00>$<08>P$<00>O<08>h%<00>j<08>!<00>%<00>y<08>"<00>%<00>y#X&<00>{+%:$<00><00><16>%G$<00><17>&<00> <0A>'`&<00> <09>'h&<00><00>'<00>&<00> +)'<00>( !)l'<00>7 (*<00>P .+n'<00>{++v'<00><08>+~'<00><08>+<00>'<00>{E+<00>'<00><00> K,<00>'<00>P .,<00>(<00>7 (,0*<00>{P-F*<00><00> V/k*<00><00> [0{*<00><08> e3<00>*<00><08> i3<00>*<00><08> e4<00>*<00><08> i4<00>*<00>
e5<00>*<00>
i5<00>*<00>{c6<00>*<00><08>
e9<00>*<00><08>
i9<00>*<00>{j: +<00><08>>+<00>{v>$+<00>7 (?<00>+<00><00>
|@,<00>P .C<00>,<00>{+C<00>,<00>{+C<00>,<00><00> <0B>C-<00><00> <0B>D<00>-<00><00> <0B>F<00>-<00>{+H<00>-<00>{+H<00>-<00>{+H<00>-<00>{+H<00>-<00>{+H<00>-<00>{+H<00>-<00>{+H.<00>{+H,.<00>{2J;.<00>{9L`.<00>{BO<00>.<00><00> KR<00>.<00><08> eT<00>.<00><08>ST<00>.<00><08> XT<00>.<00>{XUt/<00>( <09>V<00>2<00>f <0A>V<00>3<00><00> <0A>Wt4<00><00> <0A>Y<00>4<00><00> <0A>[x5<00><00> <0A>\h6<00><00> <0A>_<00>6<00><00>+`<00>7<00><00> <0A>`h:<00><00> <0A>d;<00><00> <0A>eh;<00><00> <0A>f<00>;<00><0E>g<<00> +i`7<00><00> <20>
i;<00>@!<21>jH;<00>O!<21> k-<<00>-el5<<00>Dil><<00><08>
emF<<00><08>
imO<<00>{<04>n<00><<00><08>es<00><<00><08>is<00><<00><08><0E>t<00><<00><08><0E>t<00><<00>{u<00><<00>A
z1=<00>K%}G=<00>{+~O=<00>Z~d=<00><00><00>=<00><00> <03><00>><00><00>.<03><00>,<00>{+<00><00>,<00><00><1C><07>
6<00>{+<00>6<00>F <20>
<EFBFBD>X7<00>{+<00>h7<00><00> <20>
<EFBFBD>&+&<00><00>M<00><00>W^c<00> l<00> qx<00> x<00> <00><00><00><00> <00> <00> <00> m <00> <00> <00> <00><00><00><00><00><00><00><00><00><00><00>m <00> <00><00><00> <00> <00><00>lcl"c"cm ,,<G<L[Gg[mx<00><00><00><00><00><00><00><00> M!\!<00><00><00><00><00><00><00><00><00><00><00> +<00> +<00> 6A<00>6X<00><00><00> {+{i!{i){i1{i9{iA{iI{iQ{iY{ia{ii{iq{<04>y{<04><00>{i<00>{B<03>{r<00>{+<00>{+a<00><14>a<00><14><03><01><14><03>{+aa$ 1-e<00>H<04>[<04>bAk#A}(9<00>.<04><01>e<00><01>4 {+<00><01>J<02>9<00>% {gA<00>m{+I<00>e9 qW<16>aj<16>q<00><16>1M!<02>e1<02>e<00>[<15>Q{<04><04>l<17><04>z<17>!<02>a<00>e {gI<02><17>I<02><05><01>)<05><01>0<00> ? <01><01>n<00><01>S9<00>%{+9<00>g9elQ{+Q0iAdq<05><01>eAq}y<00><18>a<02>e<00><18>A<00><18>{+<00>{+y<19>i$<19>qT<19>asey<02><19><05><00><19>y<02><19><05><00><19><05>{+<00><00>i<00><00><19><05><00>e<00>{+<00>{<04><05><02><17><05>L+<00>{+<00>v<06>{ <06><02><06><02><06>{$<06><00>*{+<00>{G<06><02>P<01><00>M<06>$W<06>2]<06>Ua<06>qg<06>|e<00><01>n<06><00>t<06><01>e<00><00>e<00> ?<05><02><1B><00><01><15><00> V<01>{<04><06><00> V<02>l<05><01><03> {i${+<00><01><1B><06><01><1B>$<00> ?<03>e$<00>n$<00><17>$<00>+{+!{<04> 0<1C><06><00>1{i9{iA{iI{+I{i{+Y<03><1B>y<00><1C>,{g<01><1C>4{+<$D2i{i#$4<00> ?a<00> Eq6<1D>1{+y{+T{+\{+aP a]eak <09>[ !{ ul<02> <09><01>" <02>l<05><01>( 9<00>/ <09>{ia<02>ed{+l{+$L t2d<00> ^ l<00> ^ \<00> ?t<00><1B>4$L |2<08>e<00> e<00>5n <09>Dt <09>Wy <09> e<00><03><05> <09><03>z<00>Dt |<00><1B>\$L <09>2T<00>n<00><00><1E> <09>#<1D> <09><00><1E> <09><00><1E> <09><00><1E> <09><00><1B><00><00><1E> <09>
<1F> <09><1F> <09>$<1F> <09>{+<00>-
<EFBFBD>I
<EFBFBD>|e<00><00> ^ <09>{+<00>$L <09>2<08>Se<00>\i<00>ee<00>i<00><00><1F> <09><03>i<00><00> ?<05><00><1B><00>$\
<EFBFBD>2p
<EFBFBD><00><08>|<1B>
<EFBFBD><01><1D>
<EFBFBD><00><1B>l<00><1F>
<EFBFBD>{+<00>{+<00>{+<00>{+{i<00><00><1F>
<04>n <04><1F>
 n<04>n<04><17>
! <20>
<00>eQ{i!{gQ<00><1D>
|e<00><01><15><06>$<08>2<08><01> <20>Q<00>  <04> <20>I !$ I!7 <0B>{g<04>{+<00><00> ?1!` d<00><1F>
T<00> ?<05>{gI!o 9{+A{+<00>3!<21> <0B>{g<04>{<04> <0B>{+<00>{g<04>{ <0C>z$ <0C><00>!e)A
<03><00>!e<00><01>!<21><06><00>!e){+<02>!I{4 <0C><00>!= Y{+a{i!{L i{+<00><00>ei"S "<22><07>{Z <0C><02>b !{i 8d<00>h<00><00><00> <00>=!<00>=.<00>< .<00>=.{( .+<00> .s<00> .<00>E .<00>3 .<00> .<00> .#<00> .K<00> .k<00> .C<00> .;<00> .S .[<00> @<00>=C<00>=`<00>=a<00>=<03><00>=<03><00>=<03><00>=<03><00>=<01>=!<01>=A<01>=D =a<01>=<03><01>=<03> =<03><01>=<03><01>=<03><01>=<03>c<07>[<02>= <02>=@<02>=C<02>=`<02>=c<02>x<07><02>=<03><02>=<03><02>x<07><02>=<03><02>x<07><02>=<03><02>=<03><02>x<07><02>=<03><02>=<03><02>x<03>=<03>x <03>=#c<04>#[<04>@<03>=`<03>=akV<07><03>=<03>kg<07><03>=<03>sx<07><03>=<03>{<04><07><03>=<03>k<04><04>=<04>= <04>=#<04>=@<04>=Ak<04>C<04>=`<04>=akO<08>kY!k<04>A<05>=ak<04><07><05>=<03>kr<08><05>=<03>k|AkVakg<07>k<04><08>{<04><08><07>=<03><07>=<03><07>=<08>=<08>= <08>=!<08>=@<08>=A<08>=`<08>=a<08>=<03><08>=<03><08>=<03><08>=<03><08>=@
<EFBFBD>= <0C>= <0C>= <0E>=@<0E>=`<0E>=<03><0E>=<03><0E>=<03><0E>=<03><0E>= <0F>=@<0F>=`<0F>=<03><0F>=<R\ty<04><04>EX\<05><05><05><05>0<06><06><06><07>-5 <09> 
>
<EFBFBD>
<EFBFBD>
<EFBFBD>
<EFBFBD>
<EFBFBD>
<EFBFBD> <0B> <0B> , E r 
  <00>2<00>}<00><05><00><05><00>}<00><00><00>}3<06><00><07><00><07><00><07><00>3b 8<00>3b 8w
}<00>
}<00>
}<00>
}<00>3<00> }<00><01>}<00>
}3}H <0C>      ! "#./67?!@!A#B#D%C%F'G'I)_+a-`-t/u/v1w1z3y3{5|5<00>8}<06><06><07>L<08> : C V f <09> 
/
6
h
|
  H Y f <0B>  <04> MIv<00><00><00> M<00><00> M<00>e <00> M<00>),"X*["<00>9<00>"<00>g<00>"<00><>##<00><>n#
!"<00><00> <0B><00>su<00>s<00><07>1 <0B>1 sR <02> s<00> u<00> s u <Module>TechTalk.SpecFlow.Reporting.dllExceptionHelperTechTalk.SpecFlow.CompatibilityMonoHelperAssemblyServicesTechTalk.SpecFlow.ReportingAssemblyResolverFilePositionBindingInfoBindingCollectorNUnitBasedExecutionReportGeneratorTechTalk.SpecFlow.Reporting.NUnitExecutionReportMsTestExecutionReportGeneratorTechTalk.SpecFlow.Reporting.MsTestExecutionReportNamespaceReplacerTableReportParametersMsTestExecutionReportParametersNUnitExecutionReportGeneratorNUnitExecutionReportTechTalk.SpecFlow.Reporting.NUnitExecutionReport.ReportElementsScenarioOutputParserHelperReflectionHelperExtensionsBindingTechTalk.SpecFlow.Reporting.StepDefinitionReport.ReportElementsFeatureRefInstanceParameterScenarioRefStepDefinitionStepDefinitionReportResourceXmlReaderStepDefinitionReportGeneratorTechTalk.SpecFlow.Reporting.StepDefinitionReportNUnitExecutionReportParametersStepDefinitionReportParametersXmlResourceResolverXsltHelpermscorlibSystemObjectMarshalByRefObjectSystem.XmlNameTableXmlTextReaderXmlUrlResolverExceptionPreserveStackTraceget_IsMonoset_IsMono.cctorSystem.ReflectionAssemblyGetLoadedAssembly.ctor<IsMono>k__BackingFieldIsMonoLoadAssemblyFromSubscribeAssemblyResolveAppDomainprobingPathResolveEventArgsAppDomain_AssemblyResolveget_FilePathset_FilePathget_Lineset_Lineget_Columnset_Column<FilePath>k__BackingField<Line>k__BackingField<Column>k__BackingFieldFilePathLineColumnget_MethodReferenceset_MethodReferenceget_FilePositionset_FilePositionget_BindingTypeset_BindingTypeSystem.Text.RegularExpressionsRegexget_Regexset_Regexget_ParameterNamesset_ParameterNamesget_HasMultilineTextArgset_HasMultilineTextArgget_HasTableArgset_HasTableArg<MethodReference>k__BackingField<FilePosition>k__BackingField<BindingType>k__BackingField<Regex>k__BackingField<ParameterNames>k__BackingField<HasMultilineTextArg>k__BackingField<HasTableArg>k__BackingFieldMethodReferenceBindingTypeParameterNamesHasMultilineTextArgHasTableArgSystem.Collections.GenericList`1BuildBindingsFromAssemblyTypeBuildBindingsFromTypeMethodInfoAttributeBuildStepBindingFromMethodGetBindingTypeCollectBindingsTechTalk.SpecFlow.GeneratorTechTalk.SpecFlow.Generator.ProjectSpecFlowProjectget_ReportParametersget_ReportTypeTransformReportGenerateAndTransformReportGenerateReportExtendReportXmlDocumentLoadXmlTestResultReportTypereportParametersxmlTestResultDocnamespaceURIGetNameTableoriginalNamespacenewNamespaceAddget_XsltFileset_XsltFileget_OutputFileset_OutputFileget_ProjectFileset_ProjectFile<XsltFile>k__BackingField<OutputFile>k__BackingField<ProjectFile>k__BackingFieldXsltFileOutputFileProjectFileget_XmlTestResultset_XmlTestResult<XmlTestResult>k__BackingFieldXmlTestResultCloseCurrentTestXmlNamespaceXmlNUnitNamespaceProjectNameGeneratedAtXmlNodeNUnitXmlTestResultScenarioOutputsNameTextTechTalk.SpecFlow.ParserTechTalk.SpecFlow.Parser.SyntaxElementsFeatureGetParsedFeaturesIEnumerable`1System.GlobalizationCultureInfoGetPropertyTFromScenarioOutlineParametersScenarioStepValueSourceFileLineInstancesShowBindingsWithoutInsanceStepDefinitionsbaseUriXmlNameTableSystem.IOStreamGetResourceStreamget_BaseURIBaseURIset_ReportParametersspecFlowProjectbindingsparsedFeaturesreportDictionary`2stepDefByBindingbindingByStepDefstepDefsWithNoBindingScenarioStepsScenarioOutlineCreateFirstExampleScenarioStepsCreateScenarioStepsGetReplacedTextCreateSampleStepMatchGetSampleTextAddStepInstancesCloneGherkinTableGherkinTableRowCloneTo<ReportParameters>k__BackingFieldget_LabelledTestOutputset_LabelledTestOutput<LabelledTestOutput>k__BackingFieldLabelledTestOutputget_BinFolderset_BinFolderget_ShowBindingsWithoutInsanceset_ShowBindingsWithoutInsance<BinFolder>k__BackingField<ShowBindingsWithoutInsance>k__BackingFieldBinFolderUriGetEntityGetAssemblyForIsXmlOutputSystem.Xml.SerializationXmlSerializerTransformXmlTechTalk.SpecFlow.Generator.
-I=-IMQP\-XUL-T-` 1  1Y Y] t t=--Id a` a` d ei eia
a ` m  P\MU UU qq uu UUt(t   y1} }1<12><> <12><>1 <11>ɀ<EFBFBD>$<04><00>$RSA1<00><>]BG<42>h<EFBFBD>3DS`<60>1I<31>k<EFBFBD>"'<27><><EFBFBD><EFBFBD>V<04> <09><><EFBFBD>9<12><><EFBFBD><EFBFBD>SM<><4D>^Cz?d<>*7"<22>NZ<02>ΖR,q<00><>Nw]<5D><><EFBFBD>Mm<4D> <09><> <15>m?<3F><><EFBFBD>{*<2A> <0A>ʼ<>|&<26>V<7F><56>J<EFBFBD><4A><EFBFBD>iܸN|s=_<><5F><EFBFBD><EFBFBD>Fem<19>R<EFBFBD>1<11><> 5<11><> 1 <12><><11><> !  <12><> <11><> <12><>  
  <12> 1 9<12>1
191 5<11><>
9<12>159959<12>
<12><12>
 <11>! <12> <12><12>MM<12>
<12> M-  )<12> 
- !<12>-<12>)  <12>1 M!-<12>)!  <12>5 <12><>}==<<11>=Q <12>A <12>E <A<11>= E  <12><><12>M<12>Q<12>] ]<12>] <12>e<12>i   ],<12>Ihx<12>M<12>Y<12>aA Y <12>q<12>m <12>u  <12>y <12>} E<12>m-@&Y<12>m<12>q<12>E<12>}<12>E<12>}<12>}E@<12>u<12>U<11><> -  <12><>- @ Y<12>m<11><> <12><><12><><12><> <12><>
A<12>m<12><>BNUnitExecutionReportT Namespaceurn:TechTalk:SpecFlow.Report projectName generatedAt-T Namespaceurn:TechTalk:SpecFlow.ReportScenarioOutput name <12><> <12><><12>1 -<12><> <12><12><>
<12><> Q<12><>-IM <12><><12><>  Q I<12><>-I<12><><12><>I<12><> <12><> filefromScenarioOutline line type-TBStepDefinitionReportT Namespaceurn:TechTalk:SpecFlow.ReportshowBindingsWithoutInsanceStepDefinition-`  ]Y  ]]a`a` <11><><11><> <11><>I <12><> e <12><> <12><><11><>` <11><>1 <11><> <11><> <11><>:`LIP\\<12><>\e\P`<11>=<11><><11><>I<12><><11><>` <12><> <12><> q ua u <12><> <12><>uae<12><>u-U<11><>U
eUUu<12><><11><>Uu<12><> <11><><11><> <11><><11><>  <11><><11><>  <12> <12>  <12> <12> <12><12>  m <12>
)<12><> `<12>
<12><12> MU<12><>U m M<12>
<12> MM <12><12> 
<12> -X<12>`M<12>
`2mTX`T`TT<12>`<12><><12><>U<11><> qU <12>uu
uu
u uu<12><><12><> <12><12><><12><><12><> <12><12><><12><>
<12><><12><>
<12><> <12><>yy <12>] <12>)<12>% <12><>  <12>] <12><><12>5<12>i<12>Q <12>-<12>I<12>M<12>Q<12><><12>5<12>a TechTalk.SpecFlow.Reporting)$08de25e1-aa29-4d61-9441-23ed05ab1dce 1.9.0.77 TechTalk SpecFlowCopyright © TechTalk 2011
en-USTWrapNonExceptionThrows<00><>P{<00><>ħRSDS<44><53><18>žG<C5BE><47><14><08><>c:\TeamCity\buildAgent\work\49470e097f19f702\Reporting\obj\Release\TechTalk.SpecFlow.Reporting.pdbh<>~<7E> p<>_CorDllMainmscoree.dll<00>% @<00>0<00>HX<>ll4VS_VERSION_INFO<00><04><> M M?DVarFileInfo$Translation<00><04>StringFileInfo<00>000004b04 CompanyNameTechTalk`FileDescriptionTechTalk.SpecFlow.Reporting4 FileVersion1.9.0.77` InternalNameTechTalk.SpecFlow.Reporting.dllXLegalCopyrightCopyright <00> TechTalk 2011h OriginalFilenameTechTalk.SpecFlow.Reporting.dll4 ProductNameSpecFlow8 ProductVersion1.9.0.77< Assembly Version1.9.0.77<00> <00>6