github.com/kotovmak/go-admin@v1.1.1/modules/menu/menu_test.go (about) 1 package menu 2 3 import ( 4 "testing" 5 6 "github.com/magiconair/properties/assert" 7 ) 8 9 func TestMenu_AddMaxOrder(t *testing.T) { 10 menus := Menu{ 11 MaxOrder: 0, 12 } 13 menus.AddMaxOrder() 14 assert.Equal(t, menus.MaxOrder, int64(1)) 15 } 16 17 func TestMenu_SetMaxOrder(t *testing.T) { 18 menus := Menu{ 19 MaxOrder: 0, 20 } 21 menus.SetMaxOrder(2) 22 assert.Equal(t, menus.MaxOrder, int64(2)) 23 } 24 25 func TestMenu_SetActiveClass(t *testing.T) { 26 menus := Menu{ 27 List: []Item{ 28 { 29 Name: "item1", 30 ID: "1", 31 Url: "/item1", 32 Icon: "icon", 33 }, { 34 Name: "item2", 35 ID: "2", 36 Url: "/item2", 37 Icon: "icon", 38 }, { 39 Name: "item3", 40 ID: "3", 41 Url: "/item3", 42 Icon: "icon", 43 }, { 44 Name: "item4", 45 ID: "4", 46 Url: "/item4", 47 Icon: "icon", 48 ChildrenList: []Item{ 49 { 50 Name: "item5", 51 ID: "5", 52 Url: "/item5", 53 Icon: "icon", 54 }, { 55 Name: "item6", 56 ID: "6", 57 Url: "/item6", 58 Icon: "icon", 59 }, 60 }, 61 }, 62 }, 63 Options: []map[string]string{}, 64 MaxOrder: 0, 65 } 66 67 menus.SetActiveClass("/item3") 68 69 assert.Equal(t, menus.List[0].Active, "") 70 assert.Equal(t, menus.List[1].Active, "") 71 assert.Equal(t, menus.List[2].Active, "active") 72 assert.Equal(t, menus.List[3].Active, "") 73 74 menus.SetActiveClass("/item5") 75 76 assert.Equal(t, menus.List[0].Active, "") 77 assert.Equal(t, menus.List[1].Active, "") 78 assert.Equal(t, menus.List[2].Active, "") 79 assert.Equal(t, menus.List[3].Active, "active") 80 assert.Equal(t, menus.List[3].ChildrenList[0].Active, "active") 81 assert.Equal(t, menus.List[3].ChildrenList[1].Active, "") 82 }