public void TestRegisterCustomer_StandardBehaviour() { var customer = new TestCustomer(); SoThat(MyValues.WeIncreaseCustomerBase) .As(new WebUser()) .Given(customer.Named("initial customer").Has("completed").Registration) .When(customer.Has("confirmed").Registration) .Then(customer.Named("as returning customer").Login); }
public void IWantToRegisterANewUserC() { //Demonstrates inline naming and renaming through test var user = new WebUser(); var newCustomer = new TestCustomer("*****@*****.**"); SoThat(MyBusinessValue.WeIncreaseTheCustomerBase) .As(user.Named("The user")) .Given(newCustomer.Named("customer for the first time").Has("completed").Registration) .When(newCustomer.Named("via email customer").Has("confirmed").Registration) .Then(newCustomer.Named("returning customer").Login); }
public void TestRegisterCustomer_NestedReusableBehaviours() { var customer1 = new TestCustomer(); var customer2 = new TestCustomer(); SoThat(MyValues.WeIncreaseCustomerBase) .As(new WebUser()) .GivenWe(x => RegisterAndConfirmCustomerRegistration(x, customer1.Named("customer 1"))) .AndWe(x => RegisterAndConfirmCustomerRegistration(x, customer2.Named("customer 2"))); }
public void IWantToRegisterANewUserB() { //Demonstrates more descriptive naming of personas and entities var user = new WebUser().Named("a web user"); //naming by hand var newCustomer = new TestCustomer("*****@*****.**"); newCustomer.Named(() => newCustomer); //naming from variable name SoThat(MyBusinessValue.WeIncreaseTheCustomerBase) .As(user) .Given(newCustomer.Has("completed").Registration) .When(newCustomer.Has("confirmed").Registration) .Then(newCustomer.Login); }