testdeep.T

Constructing *testdeep.T

import (
  "testing"
  "github.com/maxatome/go-testdeep"
)

func TestMyFunc(tt *testing.T) {
  t := testdeep.NewT(tt)
  t.Cmp(MyFunc(), 12)
}

Configuring *testdeep.T

func TestMyFunc(tt *testing.T) {
  t := testdeep.NewT(tt).UseEqual().RootName("RECORD")
  ...
}

Main methods of *testdeep.T

import (
  "testing"
  "github.com/maxatome/go-testdeep"
)

func TestMyFunc(tt *testing.T) {
  t := testdeep.NewT(tt).UseEqual()

  // Compares MyFunc() result against a fixed value
  t.Cmp(MyFunc(), 128, "MyFunc() result is 128")

  // Compares MyFunc() result using the Between Testdeep operator
  t.Cmp(MyFunc(), testdeep.Between(100, 199),
    "MyFunc() result is between 100 and 199")
}

CmpDeeply() method is now replaced by Cmp(), but it is still available for backward compatibility purpose.

Shortcut methods of *testdeep.T

import (
  "testing"
  "github.com/maxatome/go-testdeep"
)

func TestMyFunc(tt *testing.T) {
  t := testdeep.NewT(tt).UseEqual()
  t.Between(MyFunc(), 100, 199, testdeep.BoundsInIn,
    "MyFunc() result is between 100 and 199")
}

For each of these methods, it is always a shortcut on T.Cmp() and the correponding Testdeep operator:

T.HasPrefix(got, expected, …) ⇒ T.Cmp(t, got, HasPrefix(expected), …)
  ^-------^                                   ^-------^
      +-------------------------------------------+

Excluding Lax operator for which the shortcut method stays CmpLax.

Each shortcut method is described in the corresponding operator page. See operators list.