Skip to content

Instantly share code, notes, and snippets.

@simpleprogrammer-shared
simpleprogrammer-shared / implicit-explicit-conversion-operators-1.cs
Last active July 8, 2016 15:34
Implicit and Explicit Conversion Operators in C# 1
Book book = new Book("Code Complete");
XDocument document = book;
@simpleprogrammer-shared
simpleprogrammer-shared / implicit-explicit-conversion-operators-2.cs
Last active July 8, 2016 15:37
Implicit and Explicit Conversion Operators in C# 2
public class Book
{
private readonly string title;
public Book(string title)
{
this.title = title;
}
public static implicit operator XDocument(Book b)
@simpleprogrammer-shared
simpleprogrammer-shared / implicit-explicit-conversion-operators-3.cs
Created July 8, 2016 14:26
Implicit and Explicit Conversion Operators in C# 3
XDocument document = new XDocument();
Book book = (Book)document;
@simpleprogrammer-shared
simpleprogrammer-shared / implicit-explicit-conversion-operators-4.cs
Last active July 8, 2016 15:33
Implicit and Explicit Conversion Operators in C# 4
public static explicit operator Book(XDocument d)
{
// Code to convert the XML document into a book
return new Book("");
}
@simpleprogrammer-shared
simpleprogrammer-shared / test-automation-framework-architecture-1.cs
Last active July 11, 2016 09:01
Test Automation Framework Architecture 1
var loginInput = driver.FindElement(By.Id("txtUsername"));
loginInput.SendKeys("Joe");
var passwordInput = driver.FindElement(By.Id("txtPassword"));
passwordInput.SendKeys("$ecret");
var loginButton = driver.FindElement(By.Id("btnLogin"));
loginButton.Click();
@simpleprogrammer-shared
simpleprogrammer-shared / test-automation-framework-architecture-2.cs
Created July 11, 2016 09:00
Test Automation Framework Architecture 2
LoginPage.GoTo();
LoginPage.LoginAs("Joe").WithPassword("$ecret").Login();
Add(int a, int b)
Add(decimal a, decimal b)
@simpleprogrammer-shared
simpleprogrammer-shared / there-are-only-two-roles-of-code-1.cs
Last active July 11, 2016 09:10
There Are Only Two Roles of Code 1
public class Calculator
{
private readonly IStorageService storageService;
private List<int> history = new List<int>();
private int sessionNumber = 1;
private bool newSession;
public Calculator(IStorageService storageService)
{
this.storageService = storageService;
public class Calculator_Mockless
{
private readonly StorageService storageService;
private readonly BasicCalculator basicCalculator;
public Calculator_Mockless()
{
this.storageService = new StorageService();
this.basicCalculator = new BasicCalculator();
}
@simpleprogrammer-shared
simpleprogrammer-shared / myth-of-the-super-programmer.cs
Created July 11, 2016 09:16
The Myth of the Super Programmer
var total = 0;
for(int i = n; i <= m; i++)
{
total += f(i)
}