Skip to content

Commit 47aeab0

Browse files
committed
Applied the same change to the classic report
1 parent ba760c3 commit 47aeab0

File tree

4 files changed

+41
-3
lines changed

4 files changed

+41
-3
lines changed

Samples/TestStack.BDDfy.Samples/BDDfy_Rocks.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@ namespace TestStack.BDDfy.Samples
55
[Story(
66
AsA = "As a .Net programmer",
77
IWant = "I want to use BDDfy",
8-
SoThat = "So that BDD becomes easy and fun")]
8+
SoThat = "So that BDD becomes easy and fun",
9+
ImageUri = "https://upload.wikimedia.org/wikipedia/commons/7/72/DirkvdM_rocks.jpg",
10+
StoryUri = "https://en.wikipedia.org/wiki/Rock_%28geology%29")]
911
public class BDDfy_Rocks
1012
{
1113
void Given_I_have_not_used_BDDfy_before()
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using System.Linq;
4+
using System.Text;
5+
using System.Threading.Tasks;
6+
using Xunit;
7+
using Shouldly;
8+
9+
namespace TestStack.BDDfy.Tests.Stories
10+
{
11+
[Story(
12+
AsA = "programmer",
13+
IWant = "to attach an uri and image metadata to a story",
14+
SoThat = "my output report communicates better to my stakeholders",
15+
StoryUri = "http://teststoryuri.com.au",
16+
ImageUri = "http://teststoryuri.com.au/storyimg.png")]
17+
public class WhenAStoryHasUriAndImageMetadata
18+
{
19+
[Fact]
20+
public void Then_it_is_injected_by_BDDfy()
21+
{
22+
var story = new DummyScenario().BDDfy<WhenAStoryHasUriAndImageMetadata>();
23+
story.Metadata.StoryUri.ShouldBe("http://teststoryuri.com.au");
24+
story.Metadata.ImageUri.ShouldBe("http://teststoryuri.com.au/storyimg.png");
25+
}
26+
}
27+
}

TestStack.BDDfy.Tests/TestStack.BDDfy.Tests.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -136,6 +136,7 @@
136136
<Compile Include="Scanner\ReflectiveScanner\WhenStepsAreDefinedInABaseClass.cs" />
137137
<Compile Include="Scanner\ReflectiveScanner\WhenStepsReturnTheirText.cs" />
138138
<Compile Include="Stories\CanUseACustomStoryAttribute.cs" />
139+
<Compile Include="Stories\WhenAStoryHasUriAndImageMetadata.cs" />
139140
<Compile Include="Stories\WhenStoryAttibuteMissesDuplicateTextsInProperties.cs" />
140141
<Compile Include="Stories\WhenStoryAttibuteMissesSoThatTextInSoThatProperty.cs" />
141142
<Compile Include="Stories\WhenStoryAttibuteMissesIWantTextInIWantProperty.cs" />

TestStack.BDDfy/Reporters/Html/ClassicReportBuilder.cs

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -316,8 +316,16 @@ private void AddStoryMetadataAndNarrative(Story story)
316316
{
317317
AddLine(story.Metadata == null
318318
? string.Format("<div class='namespaceName'>{0}</div>", story.Namespace)
319-
: string.Format("<div class='storyTitle'>{0}{1}</div>", story.Metadata.TitlePrefix, story.Metadata.Title));
320-
319+
: string.Format("<div class='storyTitle'>{0}</div>",
320+
string.IsNullOrWhiteSpace(story.Metadata.StoryUri)
321+
? story.Metadata.TitlePrefix + story.Metadata.Title
322+
: string.Format("<a href='{0}'>{1}{2}</a>", story.Metadata.StoryUri, story.Metadata.TitlePrefix, story.Metadata.Title)));
323+
324+
if (story.Metadata != null && !string.IsNullOrWhiteSpace(story.Metadata.ImageUri))
325+
{
326+
AddLine(string.Format("<img class='storyImg' src='{0}' alt='Image for {1}{2}'/>", story.Metadata.ImageUri, story.Metadata.TitlePrefix, story.Metadata.Title));
327+
}
328+
321329
if (story.Metadata == null || string.IsNullOrEmpty(story.Metadata.Narrative1))
322330
return;
323331

0 commit comments

Comments
 (0)