pipeline_test.go 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. package sub_timeline_fixer
  2. import (
  3. "fmt"
  4. "github.com/allanpk716/ChineseSubFinder/internal/logic/sub_parser/ass"
  5. "github.com/allanpk716/ChineseSubFinder/internal/logic/sub_parser/srt"
  6. "github.com/allanpk716/ChineseSubFinder/internal/pkg/sub_parser_hub"
  7. "testing"
  8. )
  9. func TestPipeline_getFramerateRatios2Try(t *testing.T) {
  10. outList := NewPipeline().getFramerateRatios2Try()
  11. for i, value := range outList {
  12. println(i, fmt.Sprintf("%v", value))
  13. }
  14. }
  15. func TestPipeline_FitGSS(t *testing.T) {
  16. subParserHub := sub_parser_hub.NewSubParserHub(ass.NewParser(), srt.NewParser())
  17. type args struct {
  18. baseSubFile string
  19. orgFixSubFile string
  20. srcSubFile string
  21. }
  22. tests := []struct {
  23. name string
  24. args args
  25. want float64
  26. wantErr bool
  27. }{
  28. {name: "BL S01E03", args: args{
  29. baseSubFile: "C:\\Tmp\\BL - S01E03\\英_2.ass",
  30. orgFixSubFile: "C:\\Tmp\\BL - S01E03\\org-fix.ass",
  31. srcSubFile: "C:\\Tmp\\BL - S01E03\\org.ass",
  32. }, want: -4.1, wantErr: false},
  33. {name: "Rick and Morty - S05E10", args: args{
  34. baseSubFile: "C:\\Tmp\\Rick and Morty - S05E10\\英_2.ass",
  35. orgFixSubFile: "C:\\Tmp\\Rick and Morty - S05E10\\org-fix.ass",
  36. srcSubFile: "C:\\Tmp\\Rick and Morty - S05E10\\org.ass",
  37. }, want: -4.1, wantErr: false},
  38. {name: "Foundation - S01E09", args: args{
  39. baseSubFile: "C:\\Tmp\\Foundation - S01E09\\英_2.ass",
  40. orgFixSubFile: "C:\\Tmp\\Foundation - S01E09\\org-fix.ass",
  41. srcSubFile: "C:\\Tmp\\Foundation - S01E09\\org.ass",
  42. }, want: -4.1, wantErr: false},
  43. {name: "mix", args: args{
  44. baseSubFile: "C:\\Tmp\\Rick and Morty - S05E10\\英_2.ass",
  45. srcSubFile: "C:\\Tmp\\BL - S01E03\\org.ass",
  46. }, want: -4.1, wantErr: false},
  47. }
  48. for _, tt := range tests {
  49. t.Run(tt.name, func(t *testing.T) {
  50. bFind, infoBase, err := subParserHub.DetermineFileTypeFromFile(tt.args.baseSubFile)
  51. if err != nil {
  52. t.Fatal(err)
  53. }
  54. if bFind == false {
  55. t.Fatal("sub not match")
  56. }
  57. bFind, infoSrc, err := subParserHub.DetermineFileTypeFromFile(tt.args.srcSubFile)
  58. if err != nil {
  59. t.Fatal(err)
  60. }
  61. if bFind == false {
  62. t.Fatal("sub not match")
  63. }
  64. //bFind, orgFix, err := subParserHub.DetermineFileTypeFromFile(tt.args.orgFixSubFile)
  65. //if err != nil {
  66. // t.Fatal(err)
  67. //}
  68. //if bFind == false {
  69. // t.Fatal("sub not match")
  70. //}
  71. // ---------------------------------------------------------------------------------------
  72. err = NewPipeline().FitGSS(infoBase, infoSrc)
  73. if (err != nil) != tt.wantErr {
  74. t.Errorf("GetOffsetTimeV3() error = %v, wantErr %v", err, tt.wantErr)
  75. return
  76. }
  77. })
  78. }
  79. }