Skip to content

Instantly share code, notes, and snippets.

View danbarua's full-sized avatar

Dan Barua danbarua

  • GSK
  • United Kingdom
View GitHub Profile
@danbarua
danbarua / ValidationTests.cs
Created May 20, 2014 13:11
Testing FluentValidators with Nancy (appdomain scanning bypassed)
namespace Nancy.Validation.FluentValidation.Tests
{
using System;
using System.Collections.Generic;
using System.Linq;
using Nancy.Bootstrapper;
using Nancy.ModelBinding;
using Nancy.Testing;
using Nancy.TinyIoc;
@danbarua
danbarua / MessagingAcceptanceTests.cs
Created May 27, 2014 16:32
Courtesey of @the.fridge.ninja
[TestFixture]
public class MessagingAcceptanceTests
{
[Test]
public void All_commands_are_decorated_with_data_contract()
{
var messageTypes = typeof(Command).Assembly.GetTypes()
.Where(typeof(Command).IsAssignableFrom)
.Where(type => type.IsClass && false == type.IsAbstract);
@danbarua
danbarua / TestableFileResponse.cs
Created June 17, 2014 15:35
Testable implementation of Nancy's GenericFileResponse
namespace WordWatch.Server.Api
{
using System;
using System.IO;
using System.IO.Abstractions;
using Nancy;
using Nancy.Helpers;
using Nancy.Responses;
@danbarua
danbarua / PartialFileResponse.cs
Created November 10, 2014 08:22
206 Partial Content responses for Nancy
namespace Infrastructure
{
using System;
using System.Globalization;
using System.IO;
using System.Linq;
using Nancy;
using Util;
@danbarua
danbarua / Create_Index.sql
Created November 28, 2014 12:07
Speed up NEventStore 3 projection rebuilds with this index
/****** Object: Index [IX_Commits_Ordered] Script Date: 11/28/2014 11:59:00 ******/
CREATE NONCLUSTERED INDEX [IX_Commits_Ordered] ON [dbo].[Commits]
(
[CommitSequence] ASC,
[StreamId] ASC,
[StreamRevision] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = OFF, ALLOW_PAGE_LOCKS = OFF) ON [PRIMARY]
GO
@danbarua
danbarua / Global.asax.cs
Created February 18, 2015 11:59
Use TeamCity credentials to auth with NuGet.Server
public class Global : System.Web.HttpApplication
{
private readonly string connectionString = ConfigurationManager.ConnectionStrings["teamCity"].ConnectionString;
protected void Application_Start(object sender, EventArgs e)
{
}
protected void Session_Start(object sender, EventArgs e)
public class Indexer
{
private Dictionary<string, List<string>> termToIds =
new Dictionary<string, List<string>>(StringComparer.OrdinalIgnoreCase);
private Dictionary<string, List<string>> idToTerms =
new Dictionary<string, List<string>>(StringComparer.OrdinalIgnoreCase);
public void Index(string docId, string text)
{
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Reflection;
using ServiceStack.Net30.Collections.Concurrent;
/// <summary>
@danbarua
danbarua / Test.cs
Last active August 29, 2015 14:21 — forked from jchannon/Test.cs
public class SomeFixture : IDisposable
{
private DockerClient client;
public SomeFixture()
{
Console.WriteLine("SomeFixture ctor: This should only be run once");
//Using https://github.com/ahmetalpbalkan/Docker.DotNet
@danbarua
danbarua / gist:710e77de8dd5117d843c
Created June 18, 2015 16:10
spike inserting events to PGSQL using the new copy api in v3
if(expectedVersion == ExpectedVersion.NoStream)
{
using(var tx = _connection.BeginTransaction(IsolationLevel.Serializable))
{
int streamIdInternal = -1;
using(
var command =
new NpgsqlCommand(
"INSERT INTO streams(id, id_original) VALUES (:stream_id, :stream_id_original) RETURNING id_internal;")
)