public void FileNameFormat() { var expected = Guid.NewGuid().ToString(); var data = new ImageQueued() { FileNameFormat = expected }; Assert.AreEqual(expected, data.FileNameFormat); }
public void OriginalExtension() { var expected = Guid.NewGuid().ToString(); var data = new ImageQueued() { OriginalExtension = expected }; Assert.AreEqual(expected, data.OriginalExtension); }
public void Identifier() { var expected = Guid.NewGuid(); var data = new ImageQueued() { Identifier = expected }; Assert.AreEqual(expected, data.Identifier); }
public async Task Process() { var dir = Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase); var f = dir.Substring(6, dir.Length - 6) + @"\icon.png"; var bytes = File.ReadAllBytes(f); var data = new ImageQueued() { Identifier = Guid.NewGuid(), FileNameFormat = "good_{0}_file", OriginalExtension = string.Empty, }; var versions = new Dictionary <string, IImageVersion>(); var version = new ImageVersion() { Width = 100, Height = 100, Format = new JpegFormat { Quality = 70 }, }; versions.Add("temp", version); var fileName = string.Format(data.FileNameFormat, "temp"); var original = string.Format(data.FileNameFormat, Naming.Original); var imaging = Substitute.For <IImaging>(); imaging.Resize(bytes, version).Returns(bytes); var naming = Substitute.For <INaming>(); naming.OriginalFileName(data).Returns(original); naming.FileName(data, "temp", version.Format.DefaultExtension).Returns(fileName); var streamer = Substitute.For <IStreamer>(); streamer.Bytes(original).Returns(Task.FromResult(bytes)); var store = Substitute.For <IDataStore>(); store.Streamer.Returns(streamer); store.Save(fileName, bytes, "temp", version.Format.MimeType, data.Identifier, false, null, (byte)version.Format.Quality); var ip = new Processor(store, versions, imaging, naming); var result = await ip.Process(data); Assert.IsTrue(result); imaging.Received().Resize(bytes, version); naming.Received().OriginalFileName(data); naming.Received().FileName(data, "temp", version.Format.DefaultExtension); streamer.Received().Bytes(original); var s = store.Streamer.Received(); store.Received().Save(fileName, bytes, "temp", version.Format.MimeType, data.Identifier, false, null, (byte)version.Format.Quality); }
public async Task Process() { var dir = Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase); var f = dir.Substring(6, dir.Length - 6) + @"\icon.png"; var bytes = File.ReadAllBytes(f); var versions = this.Versions(); var version = versions.Values.First(); var queued = new ImageQueued { Identifier = Guid.NewGuid(), OriginalExtension = Naming.DefaultExtension, }; queued.FileNameFormat = queued.Identifier.ToString() + "_{0}.{1}"; await this.container.Save(string.Format("{0}_original.jpeg", queued.Identifier), bytes); var store = new DataStore(connectionString); var processor = new Processor(new DataStore(connectionString), versions); await processor.Process(queued); var data = await this.container.Get(string.Format("{0}_test.gif", queued.Identifier)); Assert.IsNotNull(data); var entities = await this.table.QueryByRow <ImageEntity>("test"); var entity = entities.FirstOrDefault(); Assert.IsNotNull(entity); Assert.AreEqual(version.Format.MimeType, entity.MimeType); Assert.AreEqual(string.Format(Naming.PathFormat, this.container.Name, entity.FileName), entity.RelativePath); }
/// <summary> /// File Name for Image Queued /// </summary> /// <param name="data">Image Queued</param> /// <param name="key">Version Key</param> /// <param name="extension">Extension</param> /// <returns>File Name</returns> public virtual string FileName(ImageQueued data, string key, string extension) { return(string.Format(data.FileNameFormat, key, extension).ToLowerInvariant()); }
/// <summary> /// Original File Name /// </summary> /// <param name="data">Image Queued</param> /// <returns>Original File Name</returns> public virtual string OriginalFileName(ImageQueued data) { return(string.Format(data.FileNameFormat, Original, data.OriginalExtension).ToLowerInvariant()); }