Phase 5: promote EventTraveller.Event to ValidatedEvent; remove temporary adapter
This commit is contained in:
@@ -19,7 +19,7 @@ type WriteOptions struct {
|
|||||||
type EventTraveller struct {
|
type EventTraveller struct {
|
||||||
ID string
|
ID string
|
||||||
JSON []byte
|
JSON []byte
|
||||||
Event roots.Event
|
Event roots.ValidatedEvent
|
||||||
Subgraph *EventSubgraph
|
Subgraph *EventSubgraph
|
||||||
Error error
|
Error error
|
||||||
}
|
}
|
||||||
@@ -95,23 +95,23 @@ func createEventTravellers(jsons [][]byte) []EventTraveller {
|
|||||||
|
|
||||||
func parseEventJSON(in []EventTraveller) (parsed []EventTraveller, excluded []EventTraveller) {
|
func parseEventJSON(in []EventTraveller) (parsed []EventTraveller, excluded []EventTraveller) {
|
||||||
for _, traveller := range in {
|
for _, traveller := range in {
|
||||||
var event roots.Event
|
var raw roots.Event
|
||||||
err := json.Unmarshal(traveller.JSON, &event)
|
err := json.Unmarshal(traveller.JSON, &raw)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
traveller.Error = fmt.Errorf("rejected: %w: %w", ErrMalformedJSON, err)
|
traveller.Error = fmt.Errorf("rejected: %w: %w", ErrMalformedJSON, err)
|
||||||
excluded = append(excluded, traveller)
|
excluded = append(excluded, traveller)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
err = roots.Validate(event)
|
validated, err := roots.NewValidatedEvent(raw)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
traveller.Error = fmt.Errorf("rejected: %w: %w", ErrInvalidEvent, err)
|
traveller.Error = fmt.Errorf("rejected: %w: %w", ErrInvalidEvent, err)
|
||||||
excluded = append(excluded, traveller)
|
excluded = append(excluded, traveller)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
traveller.ID = event.ID
|
traveller.ID = validated.ID()
|
||||||
traveller.Event = event
|
traveller.Event = validated
|
||||||
parsed = append(parsed, traveller)
|
parsed = append(parsed, traveller)
|
||||||
}
|
}
|
||||||
return parsed, excluded
|
return parsed, excluded
|
||||||
@@ -146,9 +146,7 @@ func enforcePolicyRules(in []EventTraveller, boltdb *bolt.DB, batchSize int) (qu
|
|||||||
|
|
||||||
func convertEventsToSubgraphs(in []EventTraveller, expanders ExpanderPipeline) []EventTraveller {
|
func convertEventsToSubgraphs(in []EventTraveller, expanders ExpanderPipeline) []EventTraveller {
|
||||||
for i, traveller := range in {
|
for i, traveller := range in {
|
||||||
// TODO: temporary adapter — removed in Phase 5
|
in[i].Subgraph = EventToSubgraph(traveller.Event, expanders)
|
||||||
validated, _ := roots.NewValidatedEvent(traveller.Event)
|
|
||||||
in[i].Subgraph = EventToSubgraph(validated, expanders)
|
|
||||||
}
|
}
|
||||||
return in
|
return in
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-2
@@ -133,7 +133,7 @@ func TestParseEventJSON(t *testing.T) {
|
|||||||
|
|
||||||
for _, reject := range rejected {
|
for _, reject := range rejected {
|
||||||
assert.NotNil(t, reject.Error)
|
assert.NotNil(t, reject.Error)
|
||||||
assert.Empty(t, reject.Event.ID)
|
assert.Empty(t, reject.Event.ID())
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@@ -224,7 +224,7 @@ func TestConvertEventsToSubgraphs(t *testing.T) {
|
|||||||
}{
|
}{
|
||||||
{
|
{
|
||||||
name: "event with no tags",
|
name: "event with no tags",
|
||||||
traveller: EventTraveller{Event: fx.ValidatedEvent(t, "bare").Event()},
|
traveller: EventTraveller{Event: fx.ValidatedEvent(t, "bare")},
|
||||||
wantNodeCount: 2, // event + user
|
wantNodeCount: 2, // event + user
|
||||||
wantRelCount: 1, // signed
|
wantRelCount: 1, // signed
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user