From 1d0a5820b0a8e96a2f15234bd902f2e9892aa002 Mon Sep 17 00:00:00 2001 From: vgonkivs Date: Mon, 16 Dec 2024 12:49:51 +0200 Subject: [PATCH] adapt changes --- share/shwap/row.go | 8 ++++++-- share/shwap/row_test.go | 20 ++++++++++++++------ 2 files changed, 20 insertions(+), 8 deletions(-) diff --git a/share/shwap/row.go b/share/shwap/row.go index 1ae5732da9..87faff4875 100644 --- a/share/shwap/row.go +++ b/share/shwap/row.go @@ -178,7 +178,7 @@ func (r Row) MarshalJSON() ([]byte, error) { Shares []libshare.Share `json:"shares"` Side string `json:"side"` }{ - Shares: r.halfShares, + Shares: r.shares, Side: r.side.String(), } return json.Marshal(&jsonRow) @@ -194,7 +194,7 @@ func (r *Row) UnmarshalJSON(data []byte) error { if err != nil { return err } - r.halfShares = jsonRow.Shares + r.shares = jsonRow.Shares r.side = toRowSide(jsonRow.Side) return nil } @@ -221,6 +221,8 @@ func (s RowSide) String() string { return "LEFT" case Right: return "RIGHT" + case Both: + return "BOTH" default: panic("invalid row side") } @@ -232,6 +234,8 @@ func toRowSide(s string) RowSide { return Left case "RIGHT": return Right + case "BOTH": + return Both default: panic("invalid row side") } diff --git a/share/shwap/row_test.go b/share/shwap/row_test.go index 407b06a33c..87ab6226e1 100644 --- a/share/shwap/row_test.go +++ b/share/shwap/row_test.go @@ -21,6 +21,11 @@ func TestRowShares(t *testing.T) { row, err := RowFromEDS(eds, rowIdx, side) require.NoError(t, err) require.Equal(t, side, row.side) + + extended, err := row.Shares() + require.NoError(t, err) + require.Len(t, extended, odsSize*2) + require.Equal(t, Both, row.side) } } } @@ -30,21 +35,24 @@ func TestRowMarshal(t *testing.T) { eds := edstest.RandEDS(t, odsSize) for rowIdx := 0; rowIdx < odsSize*2; rowIdx++ { for _, side := range []RowSide{Left, Right} { - shrs := eds.Row(uint(rowIdx)) - shares, err := libshare.FromBytes(shrs) + row, err := RowFromEDS(eds, rowIdx, side) require.NoError(t, err) - - row := RowFromShares(shares, side) rowData, err := json.Marshal(row) require.NoError(t, err) decodedRow := &Row{} err = json.Unmarshal(rowData, decodedRow) require.NoError(t, err) - extended, err := row.Shares() - require.NoError(t, err) + require.Equal(t, side, decodedRow.side) + extended, err := decodedRow.Shares() + require.NoError(t, err) + + shares, err := row.Shares() + require.NoError(t, err) + require.Equal(t, shares, extended) + require.Equal(t, row.side, decodedRow.side) } } }