public void _04_ListView_Columns_ShouldHaveCorrectBindings()
        {
            var columns = AssertAndGetListViewColumns();

            var nameColumn  = columns.First();
            var nameBinding = nameColumn.DisplayMemberBinding as Binding;
            var invalidNameBindingMessage = "The cells in de 'Name' column are not correctly bound to the name of the games.";

            Assert.That(nameBinding, Is.Not.Null, invalidNameBindingMessage);
            Assert.That(nameBinding.Path.Path, Is.EqualTo("Name"), invalidNameBindingMessage);
            Assert.That(nameBinding.Mode, Is.AnyOf(BindingMode.Default, BindingMode.OneWay), invalidNameBindingMessage);

            var descriptionColumn = columns.ElementAt(1);
            var mustUseTemplateForDescriptionMessage = "The cells in de 'Description' should use a custom template that contains a 'TextBlock' that has 'TextWrapping' set to 'Wrap'.";

            Assert.That(descriptionColumn.CellTemplate, Is.Not.Null, mustUseTemplateForDescriptionMessage);
            var textBlock = descriptionColumn.CellTemplate.LoadContent() as TextBlock;

            Assert.That(textBlock, Is.Not.Null, mustUseTemplateForDescriptionMessage);
            Assert.That(textBlock.TextWrapping, Is.EqualTo(TextWrapping.Wrap), mustUseTemplateForDescriptionMessage);
            BindingUtil.AssertBinding(textBlock, TextBlock.TextProperty, "Description", BindingMode.OneWay);

            Assert.That(descriptionColumn.DisplayMemberBinding, Is.Null,
                        "Don't use 'DisplayMemberBinding' when a 'CellTemplate' is defined.");
        }
        public void _05_GameForm_ShouldHaveCorrectBindings()
        {
            AssertHasFormControls();

            BindingUtil.AssertBinding(_nameTextBox, TextBox.TextProperty, "Name", BindingMode.TwoWay);
            BindingUtil.AssertBinding(_descriptionTextBox, TextBox.TextProperty, "Description", BindingMode.TwoWay);
        }
예제 #3
0
        public void _3_ShouldHaveCorrectBindingsForTheTextBoxes()
        {
            AssertHasFiveTextBoxes();

            BindingUtil.AssertBinding(_gameIdTextBox, TextBox.TextProperty, "GameId", BindingMode.OneWay);
            BindingUtil.AssertBinding(_nameTextBox, TextBox.TextProperty, "Name", BindingMode.OneWay);
            BindingUtil.AssertBinding(_typeTextBox, TextBox.TextProperty, "Type", BindingMode.OneWay);
            BindingUtil.AssertBinding(_releaseDateTextBox, TextBox.TextProperty, "ReleaseDate", BindingMode.OneWay);
            BindingUtil.AssertBinding(_descriptionTextBox, TextBox.TextProperty, "Description", BindingMode.OneWay);
        }
        public void _04_ShouldHaveCorrectBindingsForTheTextBoxesAndTheCheckBox()
        {
            AssertHasSixTextBoxesACheckBoxAndTwoButtons();

            BindingUtil.AssertBinding(_gameIdTextBox, TextBox.TextProperty, "GameId", BindingMode.TwoWay);
            BindingUtil.AssertBinding(_nameTextBox, TextBox.TextProperty, "Name", BindingMode.TwoWay);
            BindingUtil.AssertBinding(_typeTextBox, TextBox.TextProperty, "Type", BindingMode.TwoWay);
            BindingUtil.AssertBinding(_releaseDateTextBox, TextBox.TextProperty, "ReleaseDate", BindingMode.TwoWay);
            BindingUtil.AssertBinding(_descriptionTextBox, TextBox.TextProperty, "Description", BindingMode.TwoWay);
            BindingUtil.AssertBinding(_ageCheckBox, ToggleButton.IsCheckedProperty, "IsUnder18", BindingMode.TwoWay);
        }