gorgonia.org/gorgonia@v0.9.17/op_test.go (about) 1 package gorgonia 2 3 import "testing" 4 5 func TestStupid(t *testing.T) { 6 g := NewGraph() 7 n := newNode(WithType(Float64), In(g)) 8 op := newElemUnaryOp(negOpType, n) 9 10 t.Logf("%v %d %s", op, op.unaryOpType(), op.ʘUnaryOperator) 11 12 v := NewF64(3.1415) 13 rv, err := op.Do(v) 14 t.Logf("%v, %v", rv, err) 15 } 16 17 func TestOpEquality(t *testing.T) { 18 var op1, op2 Op 19 g := NewGraph() 20 a := NewScalar(g, Float64, WithValue(3.14)) 21 b := NewScalar(g, Float64, WithValue(6.28)) 22 op1 = newElemBinOp(addOpType, a, b) 23 op2 = newElemBinOp(addOpType, a, b) 24 25 if op1.Hashcode() != op2.Hashcode() { 26 t.Error("oops") 27 } 28 29 op1 = maxOp{ 30 along: axes{0, 1}, 31 d: 2, 32 } 33 34 op2 = maxOp{ 35 along: axes{0, 1}, 36 d: 2, 37 } 38 39 if op1.Hashcode() != op2.Hashcode() { 40 t.Error("oops") 41 } 42 43 op2 = sumOp{ 44 along: axes{0, 1}, 45 d: 2, 46 } 47 48 if op1.Hashcode() == op2.Hashcode() { 49 t.Error("oops") 50 } 51 }