|
4 | 4 | package files
|
5 | 5 |
|
6 | 6 | import (
|
| 7 | + "html/template" |
7 | 8 | "testing"
|
8 | 9 |
|
9 | 10 | "code.gitea.io/gitea/models/unittest"
|
| 11 | + "code.gitea.io/gitea/modules/fileicon" |
10 | 12 | "code.gitea.io/gitea/modules/git"
|
11 | 13 | api "code.gitea.io/gitea/modules/structs"
|
12 | 14 | "code.gitea.io/gitea/services/contexttest"
|
@@ -62,40 +64,51 @@ func TestGetTreeViewNodes(t *testing.T) {
|
62 | 64 | contexttest.LoadGitRepo(t, ctx)
|
63 | 65 | defer ctx.Repo.GitRepo.Close()
|
64 | 66 |
|
65 |
| - treeNodes, err := GetTreeViewNodes(ctx, ctx.Repo.Commit, "", "") |
| 67 | + renderedIconPool := fileicon.NewRenderedIconPool() |
| 68 | + mockIconForFile := func(id string) template.HTML { |
| 69 | + return template.HTML(`<svg class="svg git-entry-icon octicon-file" width="16" height="16" aria-hidden="true"><use xlink:href="#` + id + `"></use></svg>`) |
| 70 | + } |
| 71 | + mockIconForFolder := func(id string) template.HTML { |
| 72 | + return template.HTML(`<svg class="svg git-entry-icon octicon-file-directory-fill" width="16" height="16" aria-hidden="true"><use xlink:href="#` + id + `"></use></svg>`) |
| 73 | + } |
| 74 | + treeNodes, err := GetTreeViewNodes(ctx, renderedIconPool, ctx.Repo.Commit, "", "") |
66 | 75 | assert.NoError(t, err)
|
67 | 76 | assert.Equal(t, []*TreeViewNode{
|
68 | 77 | {
|
69 | 78 | EntryName: "docs",
|
70 | 79 | EntryMode: "tree",
|
71 | 80 | FullPath: "docs",
|
| 81 | + EntryIcon: mockIconForFolder(`svg-mfi-folder-docs`), |
72 | 82 | },
|
73 | 83 | }, treeNodes)
|
74 | 84 |
|
75 |
| - treeNodes, err = GetTreeViewNodes(ctx, ctx.Repo.Commit, "", "docs/README.md") |
| 85 | + treeNodes, err = GetTreeViewNodes(ctx, renderedIconPool, ctx.Repo.Commit, "", "docs/README.md") |
76 | 86 | assert.NoError(t, err)
|
77 | 87 | assert.Equal(t, []*TreeViewNode{
|
78 | 88 | {
|
79 | 89 | EntryName: "docs",
|
80 | 90 | EntryMode: "tree",
|
81 | 91 | FullPath: "docs",
|
| 92 | + EntryIcon: mockIconForFolder(`svg-mfi-folder-docs`), |
82 | 93 | Children: []*TreeViewNode{
|
83 | 94 | {
|
84 | 95 | EntryName: "README.md",
|
85 | 96 | EntryMode: "blob",
|
86 | 97 | FullPath: "docs/README.md",
|
| 98 | + EntryIcon: mockIconForFile(`svg-mfi-readme`), |
87 | 99 | },
|
88 | 100 | },
|
89 | 101 | },
|
90 | 102 | }, treeNodes)
|
91 | 103 |
|
92 |
| - treeNodes, err = GetTreeViewNodes(ctx, ctx.Repo.Commit, "docs", "README.md") |
| 104 | + treeNodes, err = GetTreeViewNodes(ctx, renderedIconPool, ctx.Repo.Commit, "docs", "README.md") |
93 | 105 | assert.NoError(t, err)
|
94 | 106 | assert.Equal(t, []*TreeViewNode{
|
95 | 107 | {
|
96 | 108 | EntryName: "README.md",
|
97 | 109 | EntryMode: "blob",
|
98 | 110 | FullPath: "docs/README.md",
|
| 111 | + EntryIcon: mockIconForFile(`svg-mfi-readme`), |
99 | 112 | },
|
100 | 113 | }, treeNodes)
|
101 | 114 | }
|
0 commit comments