Skip to content

Commit 85531fc

Browse files
committed
chore: adding assertions on addtional spans
1 parent f3f8bac commit 85531fc

File tree

1 file changed

+34
-11
lines changed

1 file changed

+34
-11
lines changed

test/e2e/evm_spamoor_smoke_test.go

Lines changed: 34 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ func TestSpamoorSmoke(t *testing.T) {
3939
env := setupCommonEVMEnv(t, sut, dcli, netID,
4040
WithRethOpts(func(b *reth.NodeBuilder) {
4141
b.WithEnv(
42-
"OTEL_EXPORTER_OTLP_TRACES_ENDPOINT="+jg.IngestHTTPEndpoint()+"/v1/traces",
42+
"OTEL_EXPORTER_OTLP_TRACES_ENDPOINT="+jg.Internal.IngestHTTPEndpoint()+"/v1/traces",
4343
"OTEL_EXPORTER_OTLP_TRACES_PROTOCOL=http",
4444
"RUST_LOG=info",
4545
"OTEL_SDK_DISABLED=false",
@@ -48,10 +48,8 @@ func TestSpamoorSmoke(t *testing.T) {
4848
)
4949
sequencerHome := filepath.Join(t.TempDir(), "sequencer")
5050

51-
// ev-node runs on the host, so use Jaeger's host-mapped OTLP/HTTP port (external address).
52-
jinfo, err := jg.GetNetworkInfo(ctx)
53-
require.NoError(t, err, "failed to get jaeger network info")
54-
otlpHTTP := fmt.Sprintf("http://127.0.0.1:%s", jinfo.External.Ports.HTTP)
51+
// ev-node runs on the host, so use Jaeger's external OTLP/HTTP endpoint.
52+
otlpHTTP := jg.External.IngestHTTPEndpoint()
5553

5654
// Start sequencer with tracing to Jaeger collector.
5755
setupSequencerNode(t, sut, sequencerHome, env.SequencerJWT, env.GenesisHash, env.Endpoints,
@@ -162,13 +160,13 @@ func TestSpamoorSmoke(t *testing.T) {
162160
traceCtx, cancel := context.WithTimeout(ctx, 3*time.Minute)
163161
defer cancel()
164162
ok, err := jg.External.WaitForTraces(traceCtx, "ev-node-smoke", 1, 2*time.Second)
165-
require.NoError(t, err, "error while waiting for Jaeger traces; UI: %s", jg.QueryHostURL())
166-
require.True(t, ok, "expected at least one trace in Jaeger; UI: %s", jg.QueryHostURL())
163+
require.NoError(t, err, "error while waiting for Jaeger traces; UI: %s", jg.External.QueryURL())
164+
require.True(t, ok, "expected at least one trace in Jaeger; UI: %s", jg.External.QueryURL())
167165

168166
// Also wait for traces from ev-reth and print a small sample.
169167
ok, err = jg.External.WaitForTraces(traceCtx, "ev-reth", 1, 2*time.Second)
170-
require.NoError(t, err, "error while waiting for ev-reth traces; UI: %s", jg.External.URL())
171-
require.True(t, ok, "expected at least one trace from ev-reth; UI: %s", jg.External.URL())
168+
require.NoError(t, err, "error while waiting for ev-reth traces; UI: %s", jg.External.QueryURL())
169+
require.True(t, ok, "expected at least one trace from ev-reth; UI: %s", jg.External.QueryURL())
172170

173171
// fetch traces and print reports for both services.
174172
// use a large limit to fetch all traces from the test run.
@@ -185,9 +183,21 @@ func TestSpamoorSmoke(t *testing.T) {
185183
// assert expected ev-node span names are present.
186184
// these spans reliably appear during block production with transactions flowing.
187185
expectedSpans := []string{
188-
"Engine.ForkchoiceUpdated",
189-
"Executor.SetFinal",
186+
"BlockExecutor.ProduceBlock",
187+
"BlockExecutor.ApplyBlock",
188+
"BlockExecutor.CreateBlock",
189+
"BlockExecutor.ValidateBlock",
190+
"BlockExecutor.RetrieveBatch",
190191
"Executor.ExecuteTxs",
192+
"Executor.SetFinal",
193+
"Engine.ForkchoiceUpdated",
194+
"Engine.NewPayload",
195+
"Engine.GetPayload",
196+
"Eth.GetBlockByNumber",
197+
"Sequencer.GetNextBatch",
198+
"DASubmitter.SubmitHeaders",
199+
"DASubmitter.SubmitData",
200+
"DA.Submit",
191201
}
192202
opNames := make(map[string]struct{}, len(evNodeSpans))
193203
for _, s := range evNodeSpans {
@@ -197,6 +207,19 @@ func TestSpamoorSmoke(t *testing.T) {
197207
require.Contains(t, opNames, name, "expected span %q not found in ev-node-smoke traces", name)
198208
}
199209

210+
// assert expected ev-reth span names are present.
211+
expectedRethSpans := []string{
212+
"Storage trie",
213+
"cache_for",
214+
}
215+
rethOpNames := make(map[string]struct{}, len(evRethSpans))
216+
for _, s := range evRethSpans {
217+
rethOpNames[s.operationName] = struct{}{}
218+
}
219+
for _, name := range expectedRethSpans {
220+
require.Contains(t, rethOpNames, name, "expected span %q not found in ev-reth traces", name)
221+
}
222+
200223
require.Greater(t, sent, float64(0), "at least one transaction should have been sent")
201224
require.Zero(t, fail, "no transactions should have failed")
202225
}

0 commit comments

Comments
 (0)