Skip to content

Instantly share code, notes, and snippets.

@natritmeyer
natritmeyer / tag_based_logic.rb
Created December 12, 2011 18:20
A cucumber formatter to allow doing stuff when a tag is first come across
#cucumber -f TestManagement::TagLogic -o /dev/null
module TestManagement
class TagLogic
#leave this alone...
def initialize(step_mother, io, options)
@old_tags = []
end
#leave this alone too...
@natritmeyer
natritmeyer / purge.rb
Created November 1, 2011 12:07
HTTP Purge, for use with Varnish
require 'rest-client'
class Net::HTTP::Purge < Net::HTTPRequest
METHOD = 'PURGE'
REQUEST_HAS_BODY = false
RESPONSE_HAS_BODY = true
end
module RestClient
def self.purge(url, headers={}, &block)
@natritmeyer
natritmeyer / Counter_03.cs
Created August 27, 2011 13:38
BDD example with WPF, cucumber, ironruby and bewildr; Part 4
public void reset()
{
currentCount = 0;
}
@natritmeyer
natritmeyer / Counter_02.cs
Created August 27, 2011 12:37
BDD example with WPF, cucumber, ironruby and bewildr; Part 3
namespace Counter
{
public class Counter
{
private int currentCount;
public Counter()
{
currentCount = 0;
}
@natritmeyer
natritmeyer / Counter_01.cs
Created August 27, 2011 11:22
BDD example with WPF, cucumber, ironruby and bewildr; Part 2
namespace Counter
{
public class Counter
{
private int currentCount;
public Counter()
{
currentCount = 0;
}
@natritmeyer
natritmeyer / Rakefile_01.rb
Created August 24, 2011 19:06
BDD example with WPF, cucumber, ironruby and bewildr; Part 1
require 'rubygems'
require 'rspec/core/rake_task'
require 'cucumber/rake/task'
include Rake::DSL
desc "Acceptance Tests"
RSpec::Core::RakeTask.new do |t|
t.pattern = "spec/**/*_spec.rb"
end
@natritmeyer
natritmeyer / monkeypatch.rb
Created June 5, 2011 17:17
RSpec monkeypatch to expose scenario outcome in after block with Example#passed? and Example#failed? methods
class RSpec::Core::Example
def passed?
@exception.nil?
end
def failed?
!passed?
end
end
@natritmeyer
natritmeyer / Program.cs
Created May 11, 2011 18:10
A tiny c# app that operates the Open File dialog using White. Useful if you're testing a WPF app with bewildr (http://www.bewildr.info) but the app you're testing uses the old Win32 dialog boxes. The compiled exe takes one arg; the value you want typed in
/*
Create a console app, add references to the various white libraries and use the following as a template for operating the Open Dialog window
Get the white binaries from here: http://white.codeplex.com/
*/
using System.Collections.Generic;
using System.Linq;
using System.Windows.Automation;
using White.Core;
using White.Core.UIItems;
@natritmeyer
natritmeyer / progress_with_names.rb
Created April 20, 2011 17:19
An rspec formatter that prints each test name and result to the console on a new line - hudson likes it
require "rspec/core/formatters/base_text_formatter"
class ProgressWithNames < RSpec::Core::Formatters::BaseTextFormatter
def example_passed(example)
super(example)
output.print green(". #{example.full_description}\n")
end
def example_pending(example)
super(example)
@natritmeyer
natritmeyer / unused.rb
Created April 5, 2011 20:00
Cucumber formatter for printing unused steps
# Copyright (c) 2010, Nathaniel Ritmeyer. All rights reserved.
#
# http://www.natontesting.com
#
# Save this in a file called 'unused.rb' in your 'features/support' directory. Then, to list
# all the unused steps in your project, run the following command:
#
# cucumber -d -f Cucumber::Formatter::Unused
#
# or...