d2ir: wip

This commit is contained in:
Anmol Sethi 2023-01-11 13:20:05 -08:00
parent 83ef53dc40
commit fd241e4425
No known key found for this signature in database
GPG key ID: 25BC68888A99A8BA
2 changed files with 8 additions and 13 deletions

View file

@ -149,7 +149,7 @@ func assertField(t testing.TB, n d2ir.Node, nfields, nedges int, primary interfa
assert.Equal(t, nfields, m.FieldCount())
assert.Equal(t, nedges, m.EdgeCount())
if !p.Equal(makeScalar(primary)) {
if !makeScalar(p).Equal(makeScalar(primary)) {
t.Fatalf("expected primary %#v but %#v", primary, p)
}
@ -180,7 +180,7 @@ func assertEdge(t testing.TB, n d2ir.Node, nfields int, primary interface{}, eid
}
assert.Equal(t, nfields, e.Map.FieldCount())
if !e.Primary.Equal(makeScalar(primary)) {
if !makeScalar(e.Primary).Equal(makeScalar(primary)) {
t.Fatalf("expected primary %#v but %#v", primary, e.Primary)
}
@ -190,6 +190,12 @@ func assertEdge(t testing.TB, n d2ir.Node, nfields int, primary interface{}, eid
func makeScalar(v interface{}) *d2ir.Scalar {
s := &d2ir.Scalar{}
switch v := v.(type) {
case *d2ir.Scalar:
if v == nil {
s.Value = &d2ast.Null{}
return s
}
return v
case bool:
s.Value = &d2ast.Boolean{
Value: v,

View file

@ -80,17 +80,6 @@ func (s *Scalar) Copy(newp Parent) Node {
}
func (s *Scalar) Equal(s2 *Scalar) bool {
if s == nil {
if s2 == nil {
return true
}
_, ok := s2.Value.(*d2ast.Null)
return ok
}
if s2 == nil {
_, ok := s.Value.(*d2ast.Null)
return ok
}
return s.Value.ScalarString() == s2.Value.ScalarString() && s.Value.Type() == s2.Value.Type()
}