public void WhenHasTwoExtraDetails_ThenSet(string fileName) { var sut = new MovieFileName(fileName); Assert.That(sut.ExtraDetails.First(), Is.EqualTo("IMAX")); Assert.That(sut.ExtraDetails.Second(), Is.EqualTo("UHD")); }
public virtual void GenerateRenameSubFiles(int index, bool copyToMovieLocation = false) { var subFileInfo = SubFiles[index]; var fileName = MovieFileName.Substring(0, MovieFileName.LastIndexOf(".", StringComparison.Ordinal)); var extension = subFileInfo.Name.Substring( subFileInfo.Name.Substring(subFileInfo.Name.Length - 15).IndexOf(".", StringComparison.Ordinal) + (subFileInfo.Name.Length - 15)); if (copyToMovieLocation) { if (MovieFile.Directory != null) { var path = Path.Combine(MovieFile.Directory.FullName, fileName + extension); RenamedSubFiles.Insert(index, new FileInfo(path)); } else { throw new FileNotFoundException("视频文件不存在", MovieFile.FullName); } } else { if (subFileInfo.Directory != null) { var path = Path.Combine(subFileInfo.Directory.FullName, fileName + extension); RenamedSubFiles.Insert(index, new FileInfo(path)); } else { throw new FileNotFoundException("字幕文件不存在", subFileInfo.FullName); } } }
public void PrintFilmList(IList <MovieFileName> films) { _textBox.Clear(); MovieFileName previous = null; foreach (var film in films) { if (previous == null) { _textBox.PrintLine(Path.GetFileNameWithoutExtension(film.ToString())); } else { if (IsDiffYear(film, previous)) { _textBox.PrintLine(); } if (previous.ToString() != film.ToString()) { _textBox.PrintLine(Path.GetFileNameWithoutExtension(film.ToString())); } } previous = film; } }
public void WhenFileNameIsValid_ThenSetProperties() { const string fileName = "The Dark Knight [2008] (IMAX) (UHD).mkv"; var sut = new MovieFileName(fileName); Assert.That(sut.FileName, Is.EqualTo(fileName)); }
private bool IsDiffYear(MovieFileName film1, MovieFileName film2) { if (film1 == null || film2 == null) { return(false); } return(film1.Year != film2.Year); }
public void WhenCalled_ThenReturnString() { const string fileName = "The Dark Knight [2008] (IMAX) (UHD).mkv"; var sut = new MovieFileName(fileName); var result = sut.ToString(); Assert.That(result, Is.EqualTo(fileName)); }
public void WhenHasNoExtraDetails_ThenSetEmpty(string fileName) { var sut = new MovieFileName(fileName); Assert.That(sut.Title, Is.EqualTo("The Dark Knight")); Assert.That(sut.Year, Is.EqualTo(2008)); Assert.That(sut.ExtraDetails, Is.Empty); Assert.That(sut.FileName, Is.EqualTo(fileName)); Assert.That(sut.FileExtension, Is.EqualTo("mkv")); }
public void WhenHasNoFileNameExtension_ThenSetEmpty() { var sut = new MovieFileName("The Dark Knight [2008] (IMAX) (UHD)"); Assert.That(sut.FileExtension, Is.Empty); }
public void WhenHasFileNameExtension_ThenSet() { var sut = new MovieFileName("The Dark Knight [2008] (IMAX) (UHD).mkv"); Assert.That(sut.FileExtension, Is.EqualTo("mkv")); }
public void WhenIsNullOrEmpty_ThenThrowException(string fileName) { Assert.Throws <ArgumentException>(() => _ = new MovieFileName(fileName)); }
public void WhenHasOneExtraDetail_ThenSet(string fileName) { var sut = new MovieFileName(fileName); Assert.That(sut.ExtraDetails.Single(), Is.EqualTo("IMAX")); }
public void WhenYearIsValid_ThenSetYear(string fileName) { var sut = new MovieFileName(fileName); Assert.That(sut.Year, Is.EqualTo(2008)); }
public void WhenYearIsInvalid_ThenThrowException(string fileName) { Assert.Throws <FormatException>(() => _ = new MovieFileName(fileName)); }
public void WhenTitleIsValid_ThenSetProperties(string fileName) { var sut = new MovieFileName(fileName); Assert.That(sut.Title, Is.EqualTo("The Dark Knight")); }
public void WhenNoTitle_ThenSetEmpty(string fileName) { var sut = new MovieFileName(fileName); Assert.That(sut.Title, Is.Empty); }