dialogue_merger_test.go 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. package sub_helper
  2. import (
  3. "github.com/ChineseSubFinder/ChineseSubFinder/pkg/logic/sub_parser/ass"
  4. "github.com/ChineseSubFinder/ChineseSubFinder/pkg/logic/sub_parser/srt"
  5. "github.com/ChineseSubFinder/ChineseSubFinder/pkg/unit_test_helper"
  6. // "github.com/ChineseSubFinder/ChineseSubFinder/pkg/my_util"
  7. "path/filepath"
  8. "testing"
  9. "github.com/ChineseSubFinder/ChineseSubFinder/pkg/sub_parser_hub"
  10. )
  11. func Test_isFirstLetterIsEngUpper(t *testing.T) {
  12. type args struct {
  13. instring string
  14. }
  15. tests := []struct {
  16. name string
  17. args args
  18. want bool
  19. }{
  20. {name: "0", args: args{instring: "A"}, want: true},
  21. {name: "1", args: args{instring: "a"}, want: false},
  22. {name: "2", args: args{instring: "哈"}, want: false},
  23. {name: "3", args: args{instring: ""}, want: false},
  24. }
  25. for _, tt := range tests {
  26. t.Run(tt.name, func(t *testing.T) {
  27. if got := isFirstLetterIsEngUpper(tt.args.instring); got != tt.want {
  28. t.Errorf("isFirstLetterIsEngUpper() = %v, want %v", got, tt.want)
  29. }
  30. })
  31. }
  32. }
  33. func Test_isFirstLetterIsEngLower(t *testing.T) {
  34. type args struct {
  35. instring string
  36. }
  37. tests := []struct {
  38. name string
  39. args args
  40. want bool
  41. }{
  42. {name: "0", args: args{instring: "A"}, want: false},
  43. {name: "1", args: args{instring: "a"}, want: true},
  44. {name: "2", args: args{instring: "哈"}, want: false},
  45. {name: "3", args: args{instring: ""}, want: false},
  46. }
  47. for _, tt := range tests {
  48. t.Run(tt.name, func(t *testing.T) {
  49. if got := isFirstLetterIsEngLower(tt.args.instring); got != tt.want {
  50. t.Errorf("isFirstLetterIsEngLower() = %v, want %v", got, tt.want)
  51. }
  52. })
  53. }
  54. }
  55. func TestNewDialogueMerger(t *testing.T) {
  56. testRootDir := unit_test_helper.GetTestDataResourceRootPath([]string{"FixTimeline", "org"}, 4, false)
  57. subParserHub := sub_parser_hub.NewSubParserHub(ass.NewParser(), srt.NewParser())
  58. //bFind, infoBase, err := subParserHub.DetermineFileTypeFromFile(filepath.Join(testRootDir, "2line-The Card Counter (2021) WEBDL-1080p.chinese(inside).ass"))
  59. bFind, infoBase, err := subParserHub.DetermineFileTypeFromFile(filepath.Join(testRootDir, "2line-英_1_0-3-35#150_36#360000.srt"))
  60. if err != nil {
  61. t.Fatal(err)
  62. }
  63. if bFind == false {
  64. t.Fatal("not find")
  65. }
  66. merger := NewDialogueMerger()
  67. for _, ex := range infoBase.DialoguesFilterEx {
  68. merger.Add(ex)
  69. }
  70. newEx := merger.Get()
  71. t.Logf("\n\n newEx: %d", len(newEx))
  72. }