private void SetupDatacard(string directory, string name)
        {
            _fileSystemFake.Directories.Add(directory);

            var datacardModel = new DatacardModel(name: name);

            _fileSystemFake.FileText[Path.Combine(_configFake.DatacardsDirectory, directory, "Datacard.json")] = _serializer.Serialize(datacardModel);
        }
Ejemplo n.º 2
0
        public async Task <IHttpActionResult> Upload([FromBody] UploadedDatacard uploadedDatacard)
        {
            var bytes       = Convert.FromBase64String(uploadedDatacard.File);
            var newDatacard = new DatacardModel(name: uploadedDatacard.Name, bytes: bytes);
            var id          = await _datacard.Save(newDatacard);

            return(Ok(id));
        }
Ejemplo n.º 3
0
        public Task <string> Write(DatacardModel datacardModel)
        {
            var id = Guid.NewGuid().ToString();

            EnsureDatacardDirectoryExists(id);
            WriteDatacardZipFile(id, datacardModel.Bytes);
            WriteDatacardJsonFile(id, datacardModel);
            return(Task.FromResult(id));
        }
Ejemplo n.º 4
0
        public async Task UploadShouldNotCreateDatacardsDirectory()
        {
            _fileSystemFake.DoesDirectoryExist = true;
            var bytes       = new byte[] { };
            var newDatacard = new DatacardModel(name: "Four", bytes: bytes);

            await _datacardWriter.Write(newDatacard);

            Assert.IsEmpty(_fileSystemFake.CreatedDirectories);
        }
Ejemplo n.º 5
0
        public async Task UploadShouldCreateDatacardsDirectory()
        {
            _fileSystemFake.DoesDirectoryExist = false;
            var bytes       = new byte[] {};
            var newDatacard = new DatacardModel(name: "Three", bytes: bytes);

            await _datacardWriter.Write(newDatacard);

            Assert.Contains(DataCardsDirectory, _fileSystemFake.CreatedDirectories);
        }
Ejemplo n.º 6
0
        public async Task UploadShouldCreateDirectoryForDatacard()
        {
            _fileSystemFake.DoesDirectoryExist = false;
            var bytes       = new byte[] { };
            var newDatacard = new DatacardModel(name: "Two", bytes: bytes);

            var id = await _datacardWriter.Write(newDatacard);

            Assert.Contains(Path.Combine(DataCardsDirectory, id), _fileSystemFake.CreatedDirectories);
        }
Ejemplo n.º 7
0
        public async Task UploadShouldSaveFileToDatacardsDirectory()
        {
            var bytes       = new byte[] { 34, 23, 7, 6, 8, 23 };
            var newDatacard = new DatacardModel(name: "One", bytes: bytes);

            var result = await _datacardWriter.Write(newDatacard);

            Assert.Contains(Path.Combine(DataCardsDirectory, result, "Datacard.zip"), _fileSystemFake.WrittenFiles);
            Assert.AreEqual(bytes, _fileSystemFake.WrittenBytes);
        }
Ejemplo n.º 8
0
        public async Task ShouldSaveDatacard()
        {
            var bytes       = new byte[] { 34, 23, 7, 6, 8, 23 };
            var newDatacard = new DatacardModel(name: "Ag1", bytes: bytes);

            var result = await _datacard.Save(newDatacard);

            Assert.Contains(Path.Combine(_configFake.DatacardsDirectory, result, "Datacard.zip"), _fileSystemFake.WrittenFiles);
            Assert.AreEqual(bytes, _fileSystemFake.WrittenBytes);
            Assert.Contains(Path.Combine(_configFake.DatacardsDirectory, result, "Datacard.json"), _fileSystemFake.WrittenFiles);
            Assert.AreEqual(JsonConvert.SerializeObject(newDatacard, new JsonSerializerSettings {
                ContractResolver = new CamelCasePropertyNamesContractResolver()
            }), _fileSystemFake.WrittenText);
        }
Ejemplo n.º 9
0
 public Task <string> Save(DatacardModel datacardModel)
 {
     WrittenBytes = datacardModel.Bytes;
     NewId        = Guid.NewGuid().ToString();
     return(Task.FromResult(NewId));
 }
Ejemplo n.º 10
0
 public Task <string> Save(DatacardModel datacardModel)
 {
     return(_storage.Save(datacardModel));
 }
Ejemplo n.º 11
0
 public Task <string> Save(DatacardModel datacardModel)
 {
     return(_writer.Write(datacardModel));
 }
Ejemplo n.º 12
0
        private void WriteDatacardJsonFile(string id, DatacardModel datacardModel)
        {
            var datacardPath = _datacardPath.GetJsonFilePath(id);

            _fileSystem.WriteAllText(datacardPath, _serializer.Serialize(datacardModel));
        }