MCPcopy
hub / github.com/git-lfs/git-lfs / TestProcessLinesWithUnspecifiedMacros

Function TestProcessLinesWithUnspecifiedMacros

git/gitattr/macro_test.go:74–110  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

72}
73
74func TestProcessLinesWithUnspecifiedMacros(t *testing.T) {
75 lines, _, err := ParseLines(strings.NewReader(strings.Join([]string{
76 "[attr]lfs filter=lfs diff=lfs merge=lfs -text",
77 "*.dat lfs",
78 "*.dat !lfs"}, "\n")))
79
80 assert.Len(t, lines, 3)
81 assert.NoError(t, err)
82
83 assert.Implements(t, (*MacroLine)(nil), lines[0])
84 assert.Implements(t, (*PatternLine)(nil), lines[1])
85 assert.Implements(t, (*PatternLine)(nil), lines[2])
86
87 mp := NewMacroProcessor()
88 patternLines := mp.ProcessLines(lines, true)
89
90 assert.Len(t, patternLines, 2)
91
92 assert.Implements(t, (*PatternLine)(nil), patternLines[0])
93 assert.Implements(t, (*PatternLine)(nil), patternLines[1])
94
95 assert.Equal(t, patternLines[0].Pattern().String(), "*.dat")
96 assert.Len(t, patternLines[0].Attrs(), 5)
97 assert.Equal(t, patternLines[0].Attrs()[0], &Attr{K: "filter", V: "lfs"})
98 assert.Equal(t, patternLines[0].Attrs()[1], &Attr{K: "diff", V: "lfs"})
99 assert.Equal(t, patternLines[0].Attrs()[2], &Attr{K: "merge", V: "lfs"})
100 assert.Equal(t, patternLines[0].Attrs()[3], &Attr{K: "text", V: "false"})
101 assert.Equal(t, patternLines[0].Attrs()[4], &Attr{K: "lfs", V: "true"})
102
103 assert.Equal(t, patternLines[1].Pattern().String(), "*.dat")
104 assert.Len(t, patternLines[1].Attrs(), 5)
105 assert.Equal(t, patternLines[1].Attrs()[0], &Attr{K: "filter", V: "", Unspecified: true})
106 assert.Equal(t, patternLines[1].Attrs()[1], &Attr{K: "diff", V: "", Unspecified: true})
107 assert.Equal(t, patternLines[1].Attrs()[2], &Attr{K: "merge", V: "", Unspecified: true})
108 assert.Equal(t, patternLines[1].Attrs()[3], &Attr{K: "text", V: "", Unspecified: true})
109 assert.Equal(t, patternLines[1].Attrs()[4], &Attr{K: "lfs", V: "", Unspecified: true})
110}
111
112func TestProcessLinesWithBinaryMacros(t *testing.T) {
113 lines, _, err := ParseLines(strings.NewReader(strings.Join([]string{

Callers

nothing calls this directly

Calls 8

ProcessLinesMethod · 0.95
ParseLinesFunction · 0.85
NewMacroProcessorFunction · 0.85
StringMethod · 0.65
PatternMethod · 0.65
AttrsMethod · 0.65
LenMethod · 0.45
EqualMethod · 0.45

Tested by

no test coverage detected