public async void GetSkinnyItems_SkinnyModelsReturned(FileSystemConnection connection,
                                                              DataProviderFile file,
                                                              ItemIdEntity[] itemIdEntities,
                                                              ItemModel itemModel,
                                                              Language language,
                                                              Version version)
        {
            //Arrange
            var sut = Substitute.ForPartsOf <FileSystemItemDataProviderWrapper>();

            var dataProviderFiles = new List <DataProviderFile>()
            {
                new DataProviderFile(itemIdEntities.FirstOrDefault().Key, "json", "/test.json")
            };

            sut.GetAllFilesWrapper(connection).Returns(dataProviderFiles);

            var skinnyModel = new SkinnyItemModel();

            sut.GetSkinnyModelWrapper(dataProviderFiles.FirstOrDefault(), itemIdEntities.FirstOrDefault()).Returns(skinnyModel);

            //Act
            var items = await sut.GetSkinnyItems(connection, itemIdEntities);

            //Assert
            Assert.Equal(skinnyModel, items.FirstOrDefault());
        }
        public async void Get_ItemModels_ReturnsModels(FileSystemConnection connection,
                                                       ItemIdEntity[] itemIdEntities,
                                                       Guid[] ids,
                                                       DataProviderFile dataProviderFile,
                                                       ItemModel itemModel)
        {
            var sut = Substitute.ForPartsOf <FileSystemItemDataProviderWrapper>();

            var skinnyItemModel = new SkinnyItemModel()
            {
                ItemId = ids[0], File = dataProviderFile
            };
            var skinnyItemModels = new List <SkinnyItemModel>()
            {
                skinnyItemModel
            };

            sut.GetSkinnyItems(connection, Arg.Any <IReadOnlyCollection <ItemIdEntity> >()).Returns(skinnyItemModels);

            sut.GetModelWrapper(dataProviderFile).Returns(itemModel);

            //Act
            var items = await sut.GetItemModels(connection, itemIdEntities);

            //Assert
            Assert.Equal(skinnyItemModel, items.FirstOrDefault().Item1);
            Assert.Equal(itemModel, items.FirstOrDefault().Item2);
        }
示例#3
0
        protected virtual async Task <ItemModel> GetModel(DataProviderFile dataProviderFile)
        {
            var file = new FileInfo(dataProviderFile.Path);

            using (var stream = file.OpenRead())
                using (var reader = new StreamReader(stream))
                {
                    var content = await reader.ReadToEndAsync().ConfigureAwait(false);

                    return(JsonConvert.DeserializeObject <ItemModel>(content));
                }
        }
示例#4
0
        protected virtual async Task <SkinnyItemModel> GetSkinnyModel(DataProviderFile dataProviderFile, ItemIdEntity itemIdEntity)
        {
            var file = new FileInfo(dataProviderFile.Path);

            using (var stream = file.OpenRead())
                using (var reader = new StreamReader(stream))
                {
                    var content = await reader.ReadToEndAsync().ConfigureAwait(false);

                    var model = JsonConvert.DeserializeObject <SkinnyItemModel>(content);
                    model.File     = dataProviderFile;
                    model.ParentId = itemIdEntity.ParentId;
                    model.ItemId   = itemIdEntity.Id;
                    return(model);
                }
        }
 protected override Task <ItemModel> GetModel(DataProviderFile dataProviderFile)
 {
     return(GetModelWrapper(dataProviderFile));
 }
 public virtual Task <ItemModel> GetModelWrapper(DataProviderFile dataProviderFile)
 {
     return(null);
 }
 protected override Task <SkinnyItemModel> GetSkinnyModel(DataProviderFile file, ItemIdEntity itemIdEntity)
 {
     return(GetSkinnyModelWrapper(file, itemIdEntity));
 }
 public virtual Task <SkinnyItemModel> GetSkinnyModelWrapper(DataProviderFile file, ItemIdEntity itemIdEntity)
 {
     return(null);
 }