MCPcopy
hub / github.com/google/mangle / TestMerge

Function TestMerge

packages/packages_test.go:34–146  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

32}
33
34func TestMerge(t *testing.T) {
35 tests := []struct {
36 desc string
37 input Package
38 other Package
39 want Package
40 }{
41 {
42 desc: "units are merged",
43 input: Package{
44 Name: "",
45 units: []parse.SourceUnit{
46 {
47 Decls: []ast.Decl{
48 makeDecl(t, ast.NewAtom("some_decl"), nil, nil, nil),
49 },
50 Clauses: []ast.Clause{
51 ast.NewClause(ast.NewAtom("some_clause"), nil),
52 },
53 },
54 {
55 Decls: []ast.Decl{
56 makeDecl(t, ast.NewAtom("some_decl_in_another_unit"), nil, nil, nil),
57 },
58 },
59 },
60 },
61 other: Package{
62 Name: "",
63 units: []parse.SourceUnit{
64 {
65 Decls: []ast.Decl{
66 makeDecl(t, ast.NewAtom("some_decl"), nil, nil, nil),
67 },
68 Clauses: []ast.Clause{
69 ast.NewClause(ast.NewAtom("some_clause"), nil),
70 },
71 },
72 {
73 Decls: []ast.Decl{
74 makeDecl(t, ast.NewAtom("some_decl_in_another_unit"), nil, nil, nil),
75 },
76 },
77 },
78 },
79 want: Package{
80 Name: "",
81 units: []parse.SourceUnit{
82 {
83 Decls: []ast.Decl{
84 makeDecl(t, ast.NewAtom("some_decl"), nil, nil, nil),
85 },
86 Clauses: []ast.Clause{
87 ast.NewClause(ast.NewAtom("some_clause"), nil),
88 },
89 },
90 {
91 Decls: []ast.Decl{

Callers

nothing calls this directly

Calls 4

NewAtomFunction · 0.92
NewClauseFunction · 0.92
makeDeclFunction · 0.70
MergeMethod · 0.65

Tested by

no test coverage detected