Skip to content

Commit 50825e4

Browse files
committed
reinstantiate sealer test.
1 parent 7ba14f7 commit 50825e4

File tree

1 file changed

+78
-0
lines changed

1 file changed

+78
-0
lines changed

extern/sector-storage/ffiwrapper/sealer_test.go

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ import (
3232
"github.com/filecoin-project/specs-storage/storage"
3333

3434
ffi "github.com/filecoin-project/filecoin-ffi"
35+
"github.com/filecoin-project/filecoin-ffi/cgo"
3536

3637
"github.com/filecoin-project/lotus/chain/actors/policy"
3738
"github.com/filecoin-project/lotus/extern/sector-storage/ffiwrapper/basicfs"
@@ -868,6 +869,83 @@ func TestAddPiece512MPadded(t *testing.T) {
868869
require.Equal(t, "baga6ea4seaqonenxyku4o7hr5xkzbqsceipf6xgli3on54beqbk6k246sbooobq", c.PieceCID.String())
869870
}
870871

872+
func setupLogger(t *testing.T) *bytes.Buffer {
873+
_ = os.Setenv("RUST_LOG", "info")
874+
875+
var bb bytes.Buffer
876+
r, w, err := os.Pipe()
877+
if err != nil {
878+
t.Fatal(err)
879+
}
880+
881+
go func() {
882+
_, _ = io.Copy(&bb, r)
883+
runtime.KeepAlive(w)
884+
}()
885+
886+
err = cgo.InitLogFd(int32(w.Fd()))
887+
require.NoError(t, err)
888+
889+
return &bb
890+
}
891+
892+
func TestMulticoreSDR(t *testing.T) {
893+
if os.Getenv("TEST_RUSTPROOFS_LOGS") != "1" {
894+
t.Skip("skipping test without TEST_RUSTPROOFS_LOGS=1")
895+
}
896+
897+
rustLogger := setupLogger(t)
898+
899+
getGrothParamFileAndVerifyingKeys(sectorSize)
900+
901+
dir, err := ioutil.TempDir("", "sbtest")
902+
if err != nil {
903+
t.Fatal(err)
904+
}
905+
906+
miner := abi.ActorID(123)
907+
908+
sp := &basicfs.Provider{
909+
Root: dir,
910+
}
911+
sb, err := New(sp)
912+
if err != nil {
913+
t.Fatalf("%+v", err)
914+
}
915+
916+
t.Cleanup(func() {
917+
if t.Failed() {
918+
fmt.Printf("not removing %s\n", dir)
919+
return
920+
}
921+
if err := os.RemoveAll(dir); err != nil {
922+
t.Error(err)
923+
}
924+
})
925+
926+
si := storage.SectorRef{
927+
ID: abi.SectorID{Miner: miner, Number: 1},
928+
ProofType: sealProofType,
929+
}
930+
931+
s := seal{ref: si}
932+
933+
// check multicore
934+
_ = os.Setenv("FIL_PROOFS_USE_MULTICORE_SDR", "1")
935+
rustLogger.Reset()
936+
s.precommit(t, sb, si, func() {})
937+
938+
ok := false
939+
for _, s := range strings.Split(rustLogger.String(), "\n") {
940+
if strings.Contains(s, "create_label::multi") {
941+
ok = true
942+
break
943+
}
944+
}
945+
946+
require.True(t, ok)
947+
}
948+
871949
func TestPoStChallengeAssumptions(t *testing.T) {
872950
var r [32]byte
873951
rand.Read(r[:])

0 commit comments

Comments
 (0)