...

Source file src/edge-infra.dev/test/f2/examples/embed/sharingdata/embed_test.go

Documentation: edge-infra.dev/test/f2/examples/embed/sharingdata

     1  package embed
     2  
     3  import (
     4  	"context"
     5  	"os"
     6  	"testing"
     7  
     8  	"gotest.tools/v3/assert"
     9  
    10  	"edge-infra.dev/test/f2"
    11  	"edge-infra.dev/test/f2/examples/embed/sharingdata/shared"
    12  )
    13  
    14  // This test shows you can share embeded testdata between two packages
    15  // instead of creating a var to load testdata it will be imported like any other go package
    16  
    17  var f f2.Framework
    18  
    19  func TestMain(m *testing.M) {
    20  	f = f2.New(context.Background())
    21  	os.Exit(f.Run(m))
    22  }
    23  
    24  func TestEmbed(t *testing.T) {
    25  	fin := f2.NewFeature("base shared embed feature").
    26  		Test("test shared embed", func(ctx f2.Context, t *testing.T) f2.Context {
    27  			// the data can then be accessed using the import name
    28  			td := shared.TestData
    29  
    30  			data, err := td.ReadFile("testdata/a.txt")
    31  			assert.NilError(t, err)
    32  			assert.Equal(t, string(data), "abc123")
    33  
    34  			data, err = td.ReadFile("testdata/b.txt")
    35  			assert.NilError(t, err)
    36  			assert.Equal(t, string(data), "deadb33f")
    37  
    38  			return ctx
    39  		}).Feature()
    40  
    41  	f.Test(t, fin)
    42  }
    43  

View as plain text