public void When_binding_a_form_to_an_object_where_the_object_is_null() { var binder = new Binder(); var form = NeededObjectsFactory.CreateForm(); Assert.Throws <ArgumentNullException>(() => binder.Bind(form, (Post)null)); }
public void When_binding_a_form_to_an_object() { var binder = new Binder(); var form = NeededObjectsFactory.CreateForm(); var post = new Post(); binder.Bind(form, post); Assert.That(post.Title, Is.EqualTo(TestVariables.Title)); Assert.That(post.Author, Is.EqualTo(TestVariables.Author)); Assert.That(post.Date, Is.EqualTo(TestVariables.Posted)); Assert.That(post.Body, Is.EqualTo(TestVariables.Body)); }
public void When_binding_a_form_to_an_object_with_custom_control_registrations() { var binder = new Binder(); var form = NeededObjectsFactory.CreateForm(); var strategy = new TestBindaStrategy(); binder.AddRegistration(strategy, form.Title); strategy.GetValue = "Good Title"; binder.AddRegistration(typeof(TextBox), "Text"); form.Title.Text = "Bad Title"; var post = new Post(); binder.Bind(form, post); Assert.That(post.Title, Is.EqualTo(strategy.GetValue)); }
public void When_binding_a_form_to_an_object_with_aliases() { var binder = new Binder(); var aliases = new List <BindaAlias> { new BindaAlias("Location", "PostLocation") }; var form = NeededObjectsFactory.CreateForm(); form.PostLocation.Text = TestVariables.Location; var post = new Post(); binder.Bind(form, post, aliases); Assert.That(post.Title, Is.EqualTo(TestVariables.Title)); Assert.That(post.Author, Is.EqualTo(TestVariables.Author)); Assert.That(post.Date, Is.EqualTo(TestVariables.Posted)); Assert.That(post.Body, Is.EqualTo(TestVariables.Body)); Assert.That(post.Location, Is.EqualTo(TestVariables.Location)); }
public void When_binding_a_form_to_an_object_with_custom_registrations() { var binder = new Binder(); binder.AddRegistration(typeof(FluxCapacitor), "PopularityRanking"); var form = NeededObjectsFactory.CreateForm(); form.PopularityRanking.PopularityRanking = TestVariables.PopularityRanking; var post = new Post(); binder.Bind(form, post); Assert.That(post.Title, Is.EqualTo(TestVariables.Title)); Assert.That(post.Author, Is.EqualTo(TestVariables.Author)); Assert.That(post.Date, Is.EqualTo(TestVariables.Posted)); Assert.That(post.Body, Is.EqualTo(TestVariables.Body)); Assert.That(post.PopularityRanking, Is.EqualTo(TestVariables.PopularityRanking)); }