Skip to content

Instantly share code, notes, and snippets.

Christian Droulers cdroulers

Block or report user

Report or block cdroulers

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
cdroulers / RazorTemplateRenderer.cs
Last active Sep 11, 2017
Simple replacement for RazorLight in .NET Core 2.0 (licensed under The Unlicense
View RazorTemplateRenderer.cs
using System;
using System.IO;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.Abstractions;
using Microsoft.AspNetCore.Mvc.ModelBinding;
using Microsoft.AspNetCore.Mvc.Razor;
using Microsoft.AspNetCore.Mvc.Rendering;
using Microsoft.AspNetCore.Mvc.ViewFeatures;
cdroulers / opencover-to-ncover.xlst
Created Aug 24, 2017
XSLT file to transform opencover output to nCover output.
View opencover-to-ncover.xlst
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="" version="1.0">
<xsl:output method="xml" indent="yes" standalone="yes"/>
<xsl:template match="/CoverageSession/Modules">
<xsl:for-each select="Module[not(@skippedDueTo)]">
<module name="{ModuleName}">
<xsl:for-each select="Classes/Class">
<xsl:if test="count(Methods/Method) &gt; 0">
<class name="{FullName}">
cdroulers / trx-to-junit.xslt
Last active Jun 18, 2019
Transform dotnet test output (TRX) to jUnit format for CI purposes.
View trx-to-junit.xslt
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="" xmlns:a ="" xmlns:b ="" >
<xsl:output method="xml" indent="yes" />
<xsl:template match="/">
<xsl:variable name="buildName" select="//a:TestRun/@name"/>
<xsl:variable name="numberOfTests" select="count(//a:UnitTestResult/@testId) + count(//b:UnitTestResult/@testId)"/>
<xsl:variable name="numberOfFailures" select="count(//a:UnitTestResult/@outcome[.='Failed']) + count(//b:UnitTestResult/@outcome[.='Failed'])" />
<xsl:variable name="numberOfErrors" select="count(//a:UnitTestResult[not(@outcome)]) + count(//b:UnitTestResult[not(@outcome)])" />
<xsl:variable name="numberSkipped" select="count(//a:UnitTestResult/@outcome[.!='Passed' and .!='Failed']) + count(//b:UnitTestResult/@outcome[.!='Passed' and .!='Failed'])" />
View xunit-to-junit.xslt
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="">
<xsl:output method="xml" indent="yes" omit-xml-declaration="yes" cdata-section-elements="message stack-trace"/>
<xsl:template match="/">
<xsl:for-each select="//assembly">
<xsl:attribute name="name"><xsl:value-of select="@name"/></xsl:attribute>
<xsl:attribute name="tests"><xsl:value-of select="@total"/></xsl:attribute>
<xsl:attribute name="failures"><xsl:value-of select="@failed"/></xsl:attribute>
cdroulers / PostBuild.cmd
Created Feb 1, 2016
Post-build event to generate list of files for Chutzpah and all.d.ts.
View PostBuild.cmd
if $(ConfigurationName) == Debug (
copy /Y "$(ProjectDir)..\Helpers\bin\$(ConfigurationName)\Helpers.exe" "$(TargetDir)"
copy /Y "$(TargetPath).config" "$(TargetDir)Helpers.exe.config"
$(TargetDir)Helpers.exe "$(TargetPath)" "Web.Helpers.Web.BundleHelper" "Main"
cdroulers / XmlType.cs
Created May 29, 2015
An NHibernate Mutable Type for XML in SQL Server.
View XmlType.cs
public class XmlType<T> : MutableType
where T : class
public XmlType()
: base(new XmlSqlType())
cdroulers / build.fsx
Created May 7, 2015
FAKE target to run code coverage on NUnit tests
View build.fsx
open Fake.OpenCoverHelper
let buildDir = "./build/"
let coverageDir = buildDir + "coverage/"
let testsDir = buildDir + "tests/"
Target "RunNUnitTests" (fun _ ->
let assembliesToTest = (" ", (!! (buildDir + "/*.Tests.dll"))) |> System.String.Join
CreateDir coverageDir
CreateDir testsDir
cdroulers / Sample.tsv
Last active Sep 23, 2015
A sample tab separated file.
View Sample.tsv
Some parameter Other parameter Last parameter
CONST 123456 12.45
View BaseEntity.ts
module shared {
"use strict";
export interface IMapOptions {
Properties: { [key: string]: (x: any) => any };
Ignore?: string[];
PropertyNames?: { [key: string]: string };
function includeProperty(mapOptions: IMapOptions, prop: string) {
View MyDirective.html
<input type="text" ng-model="ctrl.SomeProperty"><br>
<input type="text" ng-model="ctrl.SomeModel.SomeField" ng-show="ctrl.ShouldShow()"><br>
// Usage of the directive:
<my-directive model="Whatever"></my-directive>
You can’t perform that action at this time.