Пример #1
0
        public void Attempt_to_AddNew_for_type_without_parameterless_constructor_throws_if_AddingNew_event_is_not_used()
        {
            var obbl = new ObservableBackedBindingList <XText>(new ObservableCollection <XText>());

            const BindingFlags bindingAttr = BindingFlags.CreateInstance | BindingFlags.Public | BindingFlags.Instance;

            Assert.Equal(
                GenerateException(() => Activator.CreateInstance(typeof(XText), bindingAttr, null, null, null)).Message,
                Assert.Throws <MissingMethodException>(() => obbl.AddNew()).Message);
        }
Пример #2
0
        public void Items_canceled_during_AddNew_are_not_added_to_the_ObservableCollection()
        {
            var oc   = new ObservableCollection <ListElement>();
            var obbl = new ObservableBackedBindingList <ListElement>(oc);

            var item = obbl.AddNew();

            obbl.CancelNew(0);

            Assert.False(oc.Contains(item));
        }
Пример #3
0
        public void Attempt_to_AddNew_for_type_without_parameterless_constructor_works_if_AddingNew_event_is_used_to_create_new_object()
        {
            var obbl = new ObservableBackedBindingList <XText>(new ObservableCollection <XText>());
            var item = new XText("Some Value");

            obbl.AddingNew += (s, e) => e.NewObject = item;
            obbl.AddNew();
            obbl.EndNew(0);

            Assert.True(obbl.Contains(item));
        }
Пример #4
0
        public void Items_added_to_the_binding_list_with_AddNew_are_added_to_the_ObservableCollection()
        {
            var oc   = new ObservableCollection <ListElement>();
            var obbl = new ObservableBackedBindingList <ListElement>(oc);

            var item = obbl.AddNew();

            obbl.EndNew(0);

            Assert.True(oc.Contains(item));
        }
    Attempt_to_AddNew_on_set_for_type_without_parameterless_constructor_works_if_AddingNew_event_is_used_to_create_new_object()
    {
        var obbl = new ObservableBackedBindingList <NotXText>(new ObservableHashSet <NotXText>());
        var item = new NotXText("Some Value");

        obbl.AddingNew += (s, e) => e.NewObject = item;
        obbl.AddNew();
        obbl.EndNew(0);

        Assert.Contains(item, obbl);
    }
    public void Attempt_to_AddNew_on_set_for_abstract_type_works_if_AddingNew_event_is_used_to_create_new_object()
    {
        var obbl = new ObservableBackedBindingList <NotXNode>(new ObservableHashSet <NotXNode>());
        var item = new NotXText("Some Value");

        obbl.AddingNew += (s, e) => e.NewObject = item;
        obbl.AddNew();
        obbl.EndNew(0);

        Assert.Contains(item, obbl);
    }
    public void Items_canceled_during_AddNew_are_not_added_to_the_ObservableHashSet()
    {
        var oc   = new ObservableHashSet <ListElement>();
        var obbl = new ObservableBackedBindingList <ListElement>(oc);

        var item = obbl.AddNew();

        obbl.CancelNew(0);

        Assert.DoesNotContain(item, oc);
    }
    public void Items_added_to_the_binding_list_with_AddNew_are_added_to_the_ObservableHashSet()
    {
        var oc   = new ObservableHashSet <ListElement>();
        var obbl = new ObservableBackedBindingList <ListElement>(oc);

        var item = obbl.AddNew();

        obbl.EndNew(0);

        Assert.Contains(item, oc);
    }