1. /**
    2. @author CuiZhouwei
    3. @date 2022/7/29
    4. **/
    5. package library
    6. import (
    7. "testing"
    8. )
    9. func TestOps(t *testing.T) {
    10. mm := NewMusicManager()
    11. if mm == nil {
    12. t.Error("NewMusicManager failed")
    13. }
    14. if mm.Len() != 0{
    15. t.Error("NewMusicManager falied,not empty.")
    16. }
    17. m0 := &Music{
    18. Id: "1",
    19. Name: "Take me to you heart",
    20. Artist: "Mike",
    21. Source: "http://qbox.me/2450123",
    22. Type: "MP3",
    23. }
    24. m1 := &Music{
    25. Id: "1",
    26. Name: "Take me to you heart",
    27. Artist: "Mike",
    28. Source: "http://qbox.me/2450123",
    29. Type: "MP3",
    30. }
    31. mm.Add(m0)
    32. mm.Add(m1)
    33. if mm.Len() != 2{
    34. t.Error("MusicManager.Add() failed.")
    35. }
    36. _,m := mm.Find(m0.Name)
    37. if m== nil{
    38. t.Error("MusicManager.Find().")
    39. }
    40. if m.Id != m0.Id||m.Artist != m0.Artist ||
    41. m.Type != m0.Type || m.Name != m0.Name ||m.Source != m0.Source{
    42. t.Error("MusicManager.Find() failed.Found item mismatch.")
    43. }
    44. m ,err:= mm.Get(0)
    45. if m== nil {
    46. t.Error("MusicManger.Get() failed.",err)
    47. }
    48. m = mm.Remove(0)
    49. if m == nil || mm.Len() != 1 {
    50. t.Error("musicmanager.Remove failed.",err)
    51. }
    52. m = mm.RemoveByName(m0.Name)
    53. if m == nil || mm.Len() != 0 {
    54. t.Error("musicmanager.Remove failed.",err)
    55. }
    56. }