Skip to content

Commit a887ebb

Browse files
author
Dirk Rombauts
committed
Merge branch 'release-2.5.0'
2 parents ed88fff + 9fcc30a commit a887ebb

File tree

58 files changed

+1638
-52
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

58 files changed

+1638
-52
lines changed

.gitignore

+5
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,16 @@ obj/
3030
[Dd]ebug*/
3131
[Rr]elease*/
3232
Ankh.NoLoad
33+
.vscode/
3334

3435
#MonoDevelop files
3536
*.userprefs
3637
*.pidb
3738
*~
3839

40+
#Webstorm files
41+
.idea/
42+
3943
#Tooling
4044
_ReSharper*/
4145
*.resharper
@@ -82,3 +86,4 @@ packages/Chocolatey/
8286
# Fody
8387
!src/Pickles/packages/Fody*/build/*
8488
src/Pickles/.vs/config/applicationhost.config
89+
src/Pickles/Pickles/PortabilityAnalysis.html

CHANGELOG.md

+15
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,23 @@ This project adheres to [Semantic Versioning](http://semver.org). We consider th
1010
- The settings file of the GUI runner
1111
- The JSON output of the JSON format
1212

13+
Features in Experimental are subject to change and removal without being considered breaking.
14+
1315
This document is formatted according to the principles of [Keep A CHANGELOG](http://keepachangelog.com).
1416

17+
18+
## [2.5.0] - 2016-03-21
19+
20+
### Added
21+
22+
- Experimental features - see the [documentation](http://docs.picklesdoc.com/en/latest/ExperimentalFeatures/) (by [@dirkrombauts](https://github.com/dirkrombauts)).
23+
24+
### Experimental
25+
26+
- Using a different MarkDown component. Warning: it is not entirely compatible with the static HTML version. ([#269](https://github.com/picklesdoc/pickles/issues/269)) (by [@dirkrombauts](https://github.com/dirkrombauts)).
27+
- Enabling mathematics in the description elements in the DHTML version. Warning: requires internet connectivity. ([#281](https://github.com/picklesdoc/pickles/issues/281)) (by [@dirkrombauts](https://github.com/dirkrombauts)).
28+
- Overview Dashboard on DHTML Pickles Site with Summary Charts by Namespace and Tags ([#295](https://github.com/picklesdoc/pickles/pull/295)) (by [@ocsurfnut](https://github.com/ocsurfnut))
29+
1530
## [2.4.1] - 2016-03-01
1631

1732
### Fixed

DeployArtifacts.cmd

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
@ECHO OFF
2+
call DeployOutput.cmd %1
3+
call DeployToChocolatey.cmd %1
4+
call DeployToNuget.cmd %1

build.bat

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
@echo off
2-
set "picklesVersion=2.4.1"
2+
set "picklesVersion=2.5.0"
33

44
cls
55

build.cmd

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
call build.bat

chocolatey.fsx

+6
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@ Target "CreatePackage CMD" (fun _ ->
3333
cmdDir + "PicklesDoc.Pickles.ObjectModel.dll";
3434
cmdDir + "PicklesDoc.Pickles.TestFrameworks.dll";
3535
cmdDir + "System.IO.Abstractions.dll";
36+
cmdDir + "FeatureSwitcher.dll";
37+
cmdDir + "Strike.Jint.dll";
38+
cmdDir + "Jint.dll";
3639
cmdDir + "pickles.exe";
3740
cmdDir + "NLog.config" ]
3841

@@ -70,6 +73,9 @@ Target "CreatePackage GUI" (fun _ ->
7073
guiDir + "PicklesDoc.Pickles.ObjectModel.dll";
7174
guiDir + "PicklesDoc.Pickles.TestFrameworks.dll";
7275
guiDir + "System.IO.Abstractions.dll";
76+
guiDir + "FeatureSwitcher.dll";
77+
guiDir + "Strike.Jint.dll";
78+
guiDir + "Jint.dll";
7379
guiDir + "System.Windows.Interactivity.dll";
7480
guiDir + "picklesui.exe";
7581
guiDir + "NLog.config";

chocolatey/pickles.nuspec

+3
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,9 @@ Optionally, *Pickles* can **integrate test results**, so that your stakeholders
5050
<file src="PicklesDoc.Pickles.ObjectModel.dll" target="tools" />
5151
<file src="PicklesDoc.Pickles.TestFrameworks.dll" target="tools" />
5252
<file src="System.IO.Abstractions.dll" target="tools" />
53+
<file src="FeatureSwitcher.dll" target="tools" />
54+
<file src="Strike.Jint.dll" target="tools" />
55+
<file src="Jint.dll" target="tools" />
5356
<file src="pickles.exe" target="tools" />
5457
</files>
5558
</package>

chocolatey/picklesui.nuspec

+3
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,9 @@ Optionally, *Pickles* can **integrate test results**, so that your stakeholders
5757
<file src="PicklesDoc.Pickles.ObjectModel.dll" target="tools" />
5858
<file src="PicklesDoc.Pickles.TestFrameworks.dll" target="tools" />
5959
<file src="System.IO.Abstractions.dll" target="tools" />
60+
<file src="FeatureSwitcher.dll" target="tools" />
61+
<file src="Strike.Jint.dll" target="tools" />
62+
<file src="Jint.dll" target="tools" />
6063
<file src="System.Windows.Interactivity.dll" target="tools" />
6164
<file src="picklesui.exe" target="tools" />
6265
<file src="picklesui.exe.gui" target="tools" />

nuget.fsx

+9
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,9 @@ Target "CreatePackageCommandLine" (fun _ ->
3535
cmdDir + "PicklesDoc.Pickles.ObjectModel.dll";
3636
cmdDir + "PicklesDoc.Pickles.TestFrameworks.dll";
3737
cmdDir + "System.IO.Abstractions.dll";
38+
cmdDir + "FeatureSwitcher.dll";
39+
cmdDir + "Strike.Jint.dll";
40+
cmdDir + "Jint.dll";
3841
cmdDir + "pickles.exe";
3942
cmdDir + "NLog.config" ]
4043

@@ -64,6 +67,9 @@ Target "CreatePackageMsBuild" (fun _ ->
6467
msBuildDir + "PicklesDoc.Pickles.ObjectModel.dll";
6568
msBuildDir + "PicklesDoc.Pickles.TestFrameworks.dll";
6669
msBuildDir + "System.IO.Abstractions.dll";
70+
msBuildDir + "FeatureSwitcher.dll";
71+
msBuildDir + "Strike.Jint.dll";
72+
msBuildDir + "Jint.dll";
6773
msBuildDir + "PicklesDoc.Pickles.MSBuild.Tasks.dll";
6874
msBuildDir + "build/Pickles.MSBuild.targets";]
6975

@@ -94,6 +100,9 @@ Target "CreatePackagePowerShell" (fun _ ->
94100
powerShellDir + "PicklesDoc.Pickles.TestFrameworks.dll";
95101
powerShellDir + "PicklesDoc.Pickles.PowerShell.dll";
96102
powerShellDir + "System.IO.Abstractions.dll";
103+
powerShellDir + "FeatureSwitcher.dll";
104+
powerShellDir + "Strike.Jint.dll";
105+
powerShellDir + "Jint.dll";
97106
"src/Pickles/Pickles.PowerShell/init.ps1" ]
98107

99108
NuGet (fun p ->

src/Pickles/Examples/Features/Arithmetic.feature

+6-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
Feature: Arithmetic
2-
In order to avoid silly mistakes
3-
As a math idiot
4-
I want to be able to perform arithmetic on the calculator
2+
In order to avoid silly mistakes
3+
As a math idiot
4+
I want to be able to perform arithmetic on the calculator
5+
6+
When $a \ne 0$, there are two solutions to $\(ax^2 + bx + c = 0\)$ and they are
7+
$$x = {-b \pm \sqrt{b^2-4ac} \over 2a}.$$
58

69
@arithmetic @fast
710
Scenario: Add two numbers

src/Pickles/Pickles.BaseDhtmlFiles/Index.html

+84-8
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,10 @@
1414
<!--[if lt IE 9]>
1515
<script src="js/html5.js"></script>
1616
<![endif]-->
17+
#### EMBED EXPERIMENTALS ####
1718
</head>
1819

19-
<body>
20+
<body data-bind="style: { overflow: overviewVisible() ? 'hidden' : 'auto' }">
2021
<div id="progress" style="width:100%;height:100%;position: absolute;left:0;top:0;background:#ffffff;z-index:100">
2122
<span style="position: absolute;left:50%;top:50%;font-weight:bold">Loading...</span>
2223
</div>
@@ -82,15 +83,25 @@
8283
<div class="navbar navbar-inverse navbar-fixed-top" id="TopNav">
8384
<div class="navbar-inner">
8485
<div class="container-fluid">
86+
<!-- ko ifnot: overviewVisible -->
8587
<a class="brand" href="#" data-bind="text: configuration().SutName != null ? configuration().SutName : 'Features'"></a>
8688
<div class="navbar-search pull-left">
87-
<input type="text" id="TypeAheadSearchBox" class="search-query" data-bind="value: whatToSearchFor" style="width: 300px" placeholder="@tag or feature name" />
89+
<input type="text" id="TypeAheadSearchBox" class="search-query" data-bind="value: whatToSearchFor" style="width: 300px" placeholder="@tag or feature name"/>
8890
<a id="SearchButton" data-bind="click: search" class="btn">Search</a>
8991
<a id="ClearSearchButton" data-bind="click: clearSearch" class="btn">Clear</a>
9092
</div>
93+
<!-- /ko -->
94+
<!-- ko if: overviewVisible -->
95+
<div class="pull-left">
96+
<span class="brand">Overview and Summary</span>
97+
</div>
98+
<!-- /ko -->
99+
<div class="overview pull-right">
100+
<a id="OverviewButton" class="btn" data-bind="text: overviewVisible() ? 'Hide Overview' : 'Show Overview', click: toggleOverview"></a>
101+
</div>
91102
</div>
92103
</div>
93-
<div class="navbar-below">
104+
<div class="navbar-below" data-bind="style: { height: overviewVisible() ? '0px' : '22px' }">
94105
<div data-bind="click: $root.hideShowNavigation"><i class="icon-white" data-bind="css: { 'icon-minus-sign': $root.navIsShown(), 'icon-plus-sign': !$root.navIsShown() }"></i> Navigation</div>
95106
<div data-bind="click: $root.hideShowNavigationTree"><i class="icon-white" data-bind="css: { 'icon-minus-sign': $root.ShowAllLinks(), 'icon-plus-sign': !$root.ShowAllLinks() }"></i> Links</div>
96107
</div>
@@ -183,7 +194,6 @@ <h4 data-bind="text: Name, click: $root.toggleDetail" class="canHighlight, click
183194
</div>
184195
</div>
185196
<!--/row-->
186-
187197
<!--<hr>
188198
189199
<footer>
@@ -192,7 +202,41 @@ <h4 data-bind="text: Name, click: $root.toggleDetail" class="canHighlight, click
192202

193203
</div>
194204
<!--/.fluid-container-->
195-
<!-- Le javascript
205+
206+
<div class="modal-host">
207+
<div class="modal-overlay" data-bind="css: { 'modal-overlay-visible': overviewVisible }">
208+
<div class="modal-box">
209+
<div class="clearfix">
210+
<div id="overallCompleteCanvas-container" class="pull-left">
211+
<canvas id="overallCompleteCanvas"></canvas>
212+
</div>
213+
<aside id="overallCompleteSummary" class="pull-right">
214+
<h3>Scenario Summary by Result</h3>
215+
<ul data-bind="foreach: totals">
216+
<li>
217+
<span class="color-key" data-bind="text: value, style: { backgroundColor: color }"></span>
218+
<span data-bind="text: label"></span>
219+
</li>
220+
</ul>
221+
</aside>
222+
</div>
223+
<div>
224+
<h3 class="header">Scenario Summary by Root Namespace</h3>
225+
<canvas id="byRootFolderCanvas"></canvas>
226+
</div>
227+
<div>
228+
<h3 class="header">Scenario Summary by Top 20 Tags</h3>
229+
<canvas id="byTagCanvas"></canvas>
230+
</div>
231+
<div>
232+
<h3 class="header">@NotTested Scenario Summary by Root Namespace</h3>
233+
<canvas id="notTestedbyRootFolderCanvas"></canvas>
234+
</div>
235+
</div>
236+
</div>
237+
</div>
238+
239+
<!-- Le javascript
196240
================================================== -->
197241
<!-- Placed at the end of the document so the pages load faster -->
198242
<script src="js/jquery-1.8.3.min.js" type="text/javascript"></script>
@@ -201,6 +245,8 @@ <h4 data-bind="text: Name, click: $root.toggleDetail" class="canHighlight, click
201245
<script src="js/knockout.mapping-latest.js" type="text/javascript"></script>
202246
<script src="js/underscore-min.js" type="text/javascript"></script>
203247
<script src="js/jquery.highlight-4.closure.js"></script>
248+
<script src="js/Chart.min.js"></script>
249+
<script src="js/Chart.StackedBar.js"></script>
204250
<script src="js/Markdown.Converter.js" type="text/javascript"></script>
205251
<script src="js/Markdown.Extra.js" type="text/javascript"></script>
206252
<script src="js/featuresModel.js" type="text/javascript"></script>
@@ -209,8 +255,9 @@ <h4 data-bind="text: Name, click: $root.toggleDetail" class="canHighlight, click
209255
<script src="js/heirarchyBuilder.js" type="text/javascript"></script>
210256
<script src="js/typeaheadList.js" type="text/javascript"></script>
211257
<script src="js/featureSearch.js" type="text/javascript"></script>
258+
<script src="js/picklesOverview.js" type="text/javascript"></script>
212259
<script type="text/javascript">
213-
function ViewModel(features, configuration) {
260+
function ViewModel(features, configuration, summary) {
214261
var self = this;
215262

216263
features = $.map(features, function (el, i) { return new FeatureParent(el); });
@@ -219,8 +266,11 @@ <h4 data-bind="text: Name, click: $root.toggleDetail" class="canHighlight, click
219266
self.featuresByFolder = ko.observable(buildFullHierarchy(getFeaturesFromScenariosList(features)));
220267
self.currentFeature = ko.observable();
221268
self.configuration = ko.observable(configuration);
269+
self.totals = ko.observable([]);
270+
222271
self.ShowAllLinks = ko.observable(false);
223-
272+
self.overviewVisible = ko.observable(false);
273+
224274
self.setCurrentFeature = function () {
225275
if (window.location.hash != '') {
226276
var featureFromHashLocation = findFeatureByRelativeFolder(removeBeginningHash(window.location.hash), features);
@@ -230,6 +280,29 @@ <h4 data-bind="text: Name, click: $root.toggleDetail" class="canHighlight, click
230280
}
231281
};
232282

283+
self.toggleOverview = function() {
284+
if (!self.overviewVisible()) {
285+
// scroll to top to support fixed overlay
286+
window.scrollTo(0, 0);
287+
}
288+
289+
self.overviewVisible(!self.overviewVisible());
290+
291+
if (self.overviewVisible()) {
292+
if (!self.overview) {
293+
// build charts first time overview becomes visible
294+
self.overview = PicklesOverview(summary);
295+
self.overview.createOverallTotalsChart($('#overallCompleteCanvas').get(0).getContext('2d'));
296+
self.overview.createByTagChart($('#byTagCanvas').get(0).getContext('2d'));
297+
self.overview.createByRootFolderChart($('#byRootFolderCanvas').get(0).getContext('2d'));
298+
self.overview.createNotTestedByRootFolderChart($('#notTestedbyRootFolderCanvas').get(0).getContext('2d'));
299+
self.totals(self.overview.getTotalsData());
300+
} else {
301+
$('.modal-overlay').scrollTop(0);
302+
}
303+
}
304+
};
305+
233306
self.whatToSearchFor = ko.observable("");
234307

235308
self.clearSearch = function () {
@@ -317,7 +390,7 @@ <h4 data-bind="text: Name, click: $root.toggleDetail" class="canHighlight, click
317390
function jsonPWrapper(data) {
318391
data.Features.reverse();
319392

320-
var viewModel = new window.ViewModel(data.Features, data.Configuration);
393+
var viewModel = new window.ViewModel(data.Features, data.Configuration, data.Summary);
321394
viewModel.setCurrentFeature();
322395

323396
window.ko.applyBindings(viewModel);
@@ -328,11 +401,14 @@ <h4 data-bind="text: Name, click: $root.toggleDetail" class="canHighlight, click
328401
});
329402

330403
$('#progress').hide();
404+
$('#TopNav').show();
331405
}
332406

333407
var navShown = true;
334408

335409
$(document).ready(function () {
410+
$('#TopNav').hide();
411+
336412
function chromeSOPHack_LoadJsonPFileAndCreateDynamicScriptTag() {
337413
var url = "pickledFeatures.js"; // URL of the external script
338414

0 commit comments

Comments
 (0)