Esempio n. 1
0
        public VList(VDocumentLibrary library)
        {
            if (library != null)
            {
                list = new MSPList(library.library);
            }
            else
            {
                list = new MSPList();
            }
            list.FieldsGet      = () => fieldsMocks;
            list.TitleGet       = () => Title;
            list.DescriptionGet = () => Description;
            list.ParentWebGet   = () => ParentWeb.web;
            list.ItemCountGet   = () => _Items.Count;
            list.ItemsGet       = () => itemsMocks;

            list.GetItemsSPQuery       = (q) => itemsMocks;
            list.GetItemsSPQueryString = (q, s) => itemsMocks;
            list.GetItemsSPView        = (view) => itemsMocks;
            list.GetItemsStringArray   = (a) => itemsMocks;

            list.GetItemByIdInt32        = (i) => _Items.FirstOrThrow(p => p.ID == i).item;
            list.GetItemByIdInt32Boolean = (i, b) => _Items.FirstOrThrow(p => p.ID == i).item;

            fieldsMocks.ItemGetGuid   = (g) => _Fields.FirstOrThrow(f => f.ID == g).field;
            fieldsMocks.ItemGetInt32  = (g) => _Fields.ToArray()[g].field;
            fieldsMocks.ItemGetString = (g) => _Fields.FirstOrThrow(f => f.Name == g).field;

            itemsMocks.ItemGetInt32     = (i) => _Items.ToArray()[i].item;
            itemsMocks.ItemGetGuid      = (g) => _Items.FirstOrThrow(p => p.UniqueId == g).item;
            itemsMocks.ListGet          = () => list;
            itemsMocks.GetItemByIdInt32 = (i) => _Items.FirstOrThrow(p => p.ID == i).item;
            itemsMocks.GetEnumerator    = () => _Items.Select(p => (SPListItem)p.item).ToList().GetEnumerator();
        }
        public void MatchingFieldsExistInList_ReturnsTrue_MatchingFieldsInList()
        {
            //Arrange
            var     validator   = new ListItemValidator();
            MSPList spList      = new MSPList();
            var     spFields    = new MSPFieldCollection();
            var     lookupField = new MSPField();

            lookupField.TypeGet = () => SPFieldType.Lookup;
            spList.FieldsGet    = () => spFields;
            spFields.GetFieldByInternalNameString = n => lookupField;
            var dataCollection = new MSPItemEventDataCollection();

            dataCollection.ItemGetString = (s) => "1";
            var returnedItems = new MSPListItemCollection();

            returnedItems.CountGet = () => 1;
            spList.GetItemsSPQuery = q => returnedItems;

            var fields = new List <string>();

            fields.Add("Field1");
            fields.Add("Field2");
            //Act
            bool result = validator.MatchingFieldsExistInList(spList, dataCollection, fields);

            //Assert
            Assert.IsTrue(result);
        }