csf_test.go 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. package csf
  2. import (
  3. "testing"
  4. "github.com/allanpk716/ChineseSubFinder/pkg"
  5. "github.com/allanpk716/ChineseSubFinder/pkg/cache_center"
  6. "github.com/allanpk716/ChineseSubFinder/pkg/log_helper"
  7. "github.com/allanpk716/ChineseSubFinder/pkg/logic/file_downloader"
  8. "github.com/allanpk716/ChineseSubFinder/pkg/logic/series_helper"
  9. "github.com/allanpk716/ChineseSubFinder/pkg/random_auth_key"
  10. "github.com/allanpk716/ChineseSubFinder/pkg/settings"
  11. )
  12. func TestSupplier_GetSubListFromFile4Movie(t *testing.T) {
  13. //rootDir := unit_test_helper.GetTestDataResourceRootPath([]string{"sub_spplier"}, 5, true)
  14. //movie1 := filepath.Join(rootDir, "zimuku", "movies", "The Devil All the Time (2020)", "The Devil All the Time (2020) WEBDL-1080p.mkv")
  15. movie1 := "X:\\电影\\The Unbearable Weight of Massive Talent (2022)\\The Unbearable Weight of Massive Talent (2022) WEBRip-1080p.mkv"
  16. defInstance()
  17. got, err := csfInstance.GetSubListFromFile4Movie(movie1)
  18. if err != nil {
  19. t.Fatal(err)
  20. }
  21. for i, info := range got {
  22. println(i, info.FromWhere, info.Ext, info.Language.String(), len(info.Data), info.Name)
  23. }
  24. }
  25. func TestSupplier_GetSubListFromFile4Series(t *testing.T) {
  26. // 可以指定几集去调试
  27. epsMap := make(map[int][]int, 0)
  28. //epsMap[4] = []int{1}
  29. epsMap[1] = []int{1}
  30. //epsMap[1] = []int{1, 2, 3}
  31. //rootDir := unit_test_helper.GetTestDataResourceRootPath([]string{"sub_spplier"}, 5, true)
  32. //ser := filepath.Join(rootDir, "zimuku", "series", "黄石 (2018)")
  33. ser := "X:\\连续剧\\Tokyo Vice"
  34. // 读取本地的视频和字幕信息
  35. seriesInfo, err := series_helper.ReadSeriesInfoFromDir(log_helper.GetLogger4Tester(),
  36. ser,
  37. 90,
  38. false,
  39. false,
  40. epsMap)
  41. if err != nil {
  42. t.Fatal(err)
  43. }
  44. defInstance()
  45. got, err := csfInstance.GetSubListFromFile4Series(seriesInfo)
  46. if err != nil {
  47. t.Fatal(err)
  48. }
  49. for i, info := range got {
  50. println(i, info.FromWhere, info.Ext, info.Language.String(), len(info.Data), info.Name)
  51. }
  52. }
  53. var csfInstance *Supplier
  54. func defInstance() {
  55. pkg.ReadCustomAuthFile(log_helper.GetLogger4Tester())
  56. authKey := random_auth_key.AuthKey{
  57. BaseKey: pkg.BaseKey(),
  58. AESKey16: pkg.AESKey16(),
  59. AESIv16: pkg.AESIv16(),
  60. }
  61. nowSettings := settings.GetSettings()
  62. nowSettings.ExperimentalFunction.ShareSubSettings.ShareSubEnabled = true
  63. csfInstance = NewSupplier(file_downloader.NewFileDownloader(
  64. cache_center.NewCacheCenter("test", nowSettings, log_helper.GetLogger4Tester()), authKey))
  65. }