Skip to content

Instantly share code, notes, and snippets.

View MattHoneycutt's full-sized avatar

Matt Honeycutt MattHoneycutt

View GitHub Profile
using System.Web.Mvc;
namespace HeroicSupport.Web.Filters
{
public class StandardModelStateValidationAttribute : ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
if (!filterContext.Controller.ViewData.ModelState.IsValid)
{
using SpecsFor;
public class OrderProcessorSpecs : SpecsFor<OrderProcessor>
{
[Test]
public void Order_submitted_successfully_Tests()
{
GetMockFor<IInventory>()
.Setup(i => i.IsQuantityAvailable("TestPart", 10))
.Returns(true)
.Verifiable();
using SpecsFor;
public class OrderProcessorSpecs : SpecsFor<OrderProcessor>
{
ProcessingResult _result;
protected override void Given()
{
GetMockFor<IInventory>()
.Setup(i => i.IsQuantityAvailable("TestPart", 10))
.Returns(true)
@MattHoneycutt
MattHoneycutt / gist:97342b8f79e1cc378d14
Created October 24, 2014 15:50
Create a new git repo with a standard .gitignore
$StandardGitIgnoreFile = Resolve-Path ".\std.gitignore"
function Git-InitStandard() {
git init .
Copy-Item $StandardGitIgnoreFile ".\.gitignore"
Write-Host "Added standard gitignore file."
}
<#
This assumes you have a file next to your Powershell profile (where this function is defined) named std.gitignore. Here's what's in mine:
public class when_creating_an_issue : given.the_default_state
{
...snip...
}
public static class given
{
public abstract class the_default_state : SpecsFor<AddIssueController>
{
protected User TestUser;
public interface IRepository<TEntity>
{
void Save(TEntity entity);
IQueryable<TEntity> Query();
}
public abstract class SpecsForWithData<T> : SpecsFor<T> where T : class
{
protected User TestUser;
protected User CreatorUser;
protected Issue TestIssue;
protected Project TestProject;
protected override void Given()
{
CreateUsers();
public static class given
{
public abstract class the_default_state : SpecsForWithData<AddIssueController>
{
}
}
public class InvoiceProcessorSpecs
{
public class when_processing_an_invoice_with_helpers : SpecsFor<InvoiceProcessor>
{
...
[Test]
public void then_it_publishes_an_event()
{
GetMockFor<IPublisher>()
@MattHoneycutt
MattHoneycutt / DemoWebAppConfig.cs
Created November 27, 2011 18:43
SpecsFor.Mvc examples
[SetUpFixture]
public class DemoWebAppConfig : SpecsForMvcConfig
{
public DemoWebAppConfig()
{
UseIISExpressWith(Project("SpecsFor.Mvc.Demo"));
BuildRoutesUsing(r => MvcApplication.RegisterRoutes(r));
UseBrowser(BrowserDriver.InternetExplorer);
//TODO: Open questions to be answered: