@@ -93,6 +93,10 @@ func TestCheckBlockAssembly(t *testing.T) {
9393 t .Run ("success" , func (t * testing.T ) {
9494 server , _ , _ , _ := setup (t )
9595
96+ // Start the block assembler so the subtree processor goroutine is running
97+ err := server .blockAssembler .Start (t .Context ())
98+ require .NoError (t , err )
99+
96100 resp , err := server .CheckBlockAssembly (t .Context (), & blockassembly_api.EmptyMessage {})
97101 require .NoError (t , err )
98102
@@ -106,7 +110,7 @@ func TestCheckBlockAssembly(t *testing.T) {
106110
107111 mockSubtreeProcessor := & subtreeprocessor.MockSubtreeProcessor {}
108112 mockSubtreeProcessor .On ("CheckSubtreeProcessor" ).Return (errors .NewProcessingError ("test error" ))
109- mockSubtreeProcessor .On ("Close" ).Return () // Expect Close () to be called during cleanup
113+ mockSubtreeProcessor .On ("Stop" , mock . Anything ).Return () // Expect Stop () to be called during cleanup
110114
111115 server .blockAssembler .subtreeProcessor = mockSubtreeProcessor
112116
@@ -589,6 +593,10 @@ func TestGetBlockAssemblyStateCoverage(t *testing.T) {
589593 server , _ , _ , _ := setup (t )
590594 ctx := t .Context ()
591595
596+ // Start the block assembler so the subtree processor goroutine is running
597+ err := server .blockAssembler .Start (ctx )
598+ require .NoError (t , err )
599+
592600 t .Run ("get block assembly state" , func (t * testing.T ) {
593601 resp , err := server .GetBlockAssemblyState (ctx , & blockassembly_api.EmptyMessage {})
594602 if err == nil {
@@ -609,6 +617,10 @@ func TestGetBlockAssemblyTxsCoverage(t *testing.T) {
609617 server , _ , _ , _ := setup (t )
610618 ctx := t .Context ()
611619
620+ // Start the block assembler so the subtree processor goroutine is running
621+ err := server .blockAssembler .Start (ctx )
622+ require .NoError (t , err )
623+
612624 t .Run ("get block assembly transactions" , func (t * testing.T ) {
613625 resp , err := server .GetBlockAssemblyTxs (ctx , & blockassembly_api.EmptyMessage {})
614626 if err == nil {
@@ -1082,7 +1094,7 @@ func TestAddTxIntensive(t *testing.T) {
10821094
10831095 t .Run ("AddTx increments transaction counter" , func (t * testing.T ) {
10841096 server , _ := setupServer (t )
1085- err := server .blockAssembler .Start (context . Background ())
1097+ err := server .blockAssembler .Start (t . Context ())
10861098 require .NoError (t , err )
10871099
10881100 initialCount := server .TxCount ()
@@ -1114,7 +1126,7 @@ func TestAddTxIntensive(t *testing.T) {
11141126
11151127 t .Run ("AddTx with various fee and size values" , func (t * testing.T ) {
11161128 server , _ := setupServer (t )
1117- err := server .blockAssembler .Start (context . Background ())
1129+ err := server .blockAssembler .Start (t . Context ())
11181130 require .NoError (t , err )
11191131
11201132 testCases := []struct {
@@ -1165,7 +1177,7 @@ func TestRemoveTxIntensive(t *testing.T) {
11651177
11661178 t .Run ("RemoveTx with valid transaction" , func (t * testing.T ) {
11671179 server , _ := setupServer (t )
1168- err := server .blockAssembler .Start (context . Background ())
1180+ err := server .blockAssembler .Start (t . Context ())
11691181 require .NoError (t , err )
11701182
11711183 // First add a transaction
@@ -1234,7 +1246,7 @@ func TestAddTxBatchIntensive(t *testing.T) {
12341246
12351247 t .Run ("AddTxBatch with large batch" , func (t * testing.T ) {
12361248 server , _ := setupServer (t )
1237- err := server .blockAssembler .Start (context . Background ())
1249+ err := server .blockAssembler .Start (t . Context ())
12381250 require .NoError (t , err )
12391251
12401252 // Create a large batch
@@ -1312,7 +1324,7 @@ func TestGetMiningCandidateIntensive(t *testing.T) {
13121324
13131325 t .Run ("GetMiningCandidate with includeSubtreeHashes" , func (t * testing.T ) {
13141326 server , _ := setupServer (t )
1315- err := server .blockAssembler .Start (context . Background ())
1327+ err := server .blockAssembler .Start (t . Context ())
13161328 require .NoError (t , err )
13171329
13181330 // Add some transactions to create subtrees
@@ -1339,7 +1351,7 @@ func TestGetMiningCandidateIntensive(t *testing.T) {
13391351
13401352 t .Run ("GetMiningCandidate creates job in cache" , func (t * testing.T ) {
13411353 server , _ := setupServer (t )
1342- err := server .blockAssembler .Start (context . Background ())
1354+ err := server .blockAssembler .Start (t . Context ())
13431355 require .NoError (t , err )
13441356
13451357 req := & blockassembly_api.GetMiningCandidateRequest {}
@@ -1593,7 +1605,7 @@ func TestRunBackgroundProcessors(t *testing.T) {
15931605func TestConcurrentOperations (t * testing.T ) {
15941606 t .Run ("concurrent AddTx operations" , func (t * testing.T ) {
15951607 server , _ := setupServer (t )
1596- err := server .blockAssembler .Start (context . Background ())
1608+ err := server .blockAssembler .Start (t . Context ())
15971609 require .NoError (t , err )
15981610
15991611 const numGoroutines = 10
@@ -1679,7 +1691,7 @@ func TestEdgeCasesAndErrorPaths(t *testing.T) {
16791691 assert .GreaterOrEqual (t , count , 0 )
16801692
16811693 // After starting
1682- err := server .blockAssembler .Start (context . Background ())
1694+ err := server .blockAssembler .Start (t . Context ())
16831695 require .NoError (t , err )
16841696
16851697 count = server .SubtreeCount ()
@@ -1821,7 +1833,7 @@ func TestGetCurrentDifficultyErrors(t *testing.T) {
18211833func TestRemoveTxEdgeCases (t * testing.T ) {
18221834 t .Run ("removeTx coverage boost" , func (t * testing.T ) {
18231835 server , _ := setupServer (t )
1824- err := server .blockAssembler .Start (context . Background ())
1836+ err := server .blockAssembler .Start (t . Context ())
18251837 require .NoError (t , err )
18261838
18271839 // Add a transaction first
@@ -2034,7 +2046,7 @@ func TestStoreRetryErrorPaths(t *testing.T) {
20342046func TestGenerateBlockErrors (t * testing.T ) {
20352047 t .Run ("generateBlock coverage boost" , func (t * testing.T ) {
20362048 server , _ := setupServer (t )
2037- err := server .blockAssembler .Start (context . Background ())
2049+ err := server .blockAssembler .Start (t . Context ())
20382050 require .NoError (t , err )
20392051
20402052 // Call generateBlock to increase coverage - it will likely fail but that's expected
@@ -2089,7 +2101,7 @@ func TestSubmitMiningSolutionEdgeCases(t *testing.T) {
20892101
20902102 t .Run ("submitMiningSolution with invalid coinbase" , func (t * testing.T ) {
20912103 server , _ := setupServer (t )
2092- err := server .blockAssembler .Start (context . Background ())
2104+ err := server .blockAssembler .Start (t . Context ())
20932105 require .NoError (t , err )
20942106
20952107 // Get a mining candidate first to create a job
@@ -2117,7 +2129,7 @@ func TestSubmitMiningSolutionEdgeCases(t *testing.T) {
21172129
21182130 t .Run ("submitMiningSolution with mining already on same block" , func (t * testing.T ) {
21192131 server , _ := setupServer (t )
2120- err := server .blockAssembler .Start (context . Background ())
2132+ err := server .blockAssembler .Start (t . Context ())
21212133 require .NoError (t , err )
21222134
21232135 // Get a mining candidate
@@ -2252,7 +2264,7 @@ func TestMoreCoveragePaths(t *testing.T) {
22522264
22532265 t .Run ("GetMiningCandidate send notification in background" , func (t * testing.T ) {
22542266 server , _ := setupServer (t )
2255- err := server .blockAssembler .Start (context . Background ())
2267+ err := server .blockAssembler .Start (t . Context ())
22562268 require .NoError (t , err )
22572269
22582270 req := & blockassembly_api.GetMiningCandidateRequest {}
0 commit comments