@@ -20,11 +20,11 @@ import { startAnvil } from '@aztec/ethereum/test';
20
20
import { asyncMap } from '@aztec/foundation/async-map' ;
21
21
import { createLogger } from '@aztec/foundation/log' ;
22
22
import { resolver , reviver } from '@aztec/foundation/serialize' ;
23
+ import { TestDateProvider } from '@aztec/foundation/timer' ;
23
24
import { type ProverNode } from '@aztec/prover-node' ;
24
25
import { type PXEService , createPXEService , getPXEServiceConfig } from '@aztec/pxe' ;
25
26
import { createAndStartTelemetryClient , getConfigEnvVars as getTelemetryConfig } from '@aztec/telemetry-client/start' ;
26
27
27
- import { type InstalledClock , install } from '@sinonjs/fake-timers' ;
28
28
import { type Anvil } from '@viem/anvil' ;
29
29
import { existsSync , mkdirSync , readFileSync , writeFileSync } from 'fs' ;
30
30
import { copySync , removeSync } from 'fs-extra/esm' ;
@@ -50,7 +50,7 @@ export type SubsystemsContext = {
50
50
proverNode ?: ProverNode ;
51
51
watcher : AnvilTestWatcher ;
52
52
cheatCodes : CheatCodes ;
53
- timer : InstalledClock ;
53
+ dateProvider : TestDateProvider ;
54
54
} ;
55
55
56
56
type SnapshotEntry = {
@@ -250,7 +250,6 @@ async function teardown(context: SubsystemsContext | undefined) {
250
250
await context . acvmConfig ?. cleanup ( ) ;
251
251
await context . anvil . stop ( ) ;
252
252
await context . watcher . stop ( ) ;
253
- context . timer ?. uninstall ( ) ;
254
253
} catch ( err ) {
255
254
getLogger ( ) . error ( 'Error during teardown' , err ) ;
256
255
}
@@ -272,9 +271,6 @@ async function setupFromFresh(
272
271
) : Promise < SubsystemsContext > {
273
272
logger . verbose ( `Initializing state...` ) ;
274
273
275
- // Use sinonjs fake timers
276
- const timer = install ( { shouldAdvanceTime : true , advanceTimeDelta : 20 , toFake : [ 'Date' ] } ) ;
277
-
278
274
// Fetch the AztecNode config.
279
275
// TODO: For some reason this is currently the union of a bunch of subsystems. That needs fixing.
280
276
const aztecNodeConfig : AztecNodeConfig & SetupOptions = { ...getConfigEnvVars ( ) , ...opts } ;
@@ -358,7 +354,8 @@ async function setupFromFresh(
358
354
const telemetry = await getEndToEndTestTelemetryClient ( opts . metricsPort ) ;
359
355
360
356
logger . verbose ( 'Creating and synching an aztec node...' ) ;
361
- const aztecNode = await AztecNodeService . createAndSync ( aztecNodeConfig , { telemetry } ) ;
357
+ const dateProvider = new TestDateProvider ( ) ;
358
+ const aztecNode = await AztecNodeService . createAndSync ( aztecNodeConfig , { telemetry, dateProvider } ) ;
362
359
363
360
let proverNode : ProverNode | undefined = undefined ;
364
361
if ( opts . startProverNode ) {
@@ -392,7 +389,7 @@ async function setupFromFresh(
392
389
proverNode,
393
390
watcher,
394
391
cheatCodes,
395
- timer ,
392
+ dateProvider ,
396
393
} ;
397
394
}
398
395
@@ -402,9 +399,6 @@ async function setupFromFresh(
402
399
async function setupFromState ( statePath : string , logger : Logger ) : Promise < SubsystemsContext > {
403
400
logger . verbose ( `Initializing with saved state at ${ statePath } ...` ) ;
404
401
405
- // TODO: make one function
406
- const timer = install ( { shouldAdvanceTime : true , advanceTimeDelta : 20 , toFake : [ 'Date' ] } ) ;
407
-
408
402
// TODO: For some reason this is currently the union of a bunch of subsystems. That needs fixing.
409
403
const aztecNodeConfig : AztecNodeConfig & SetupOptions = JSON . parse (
410
404
readFileSync ( `${ statePath } /aztec_node_config.json` , 'utf-8' ) ,
@@ -445,7 +439,8 @@ async function setupFromState(statePath: string, logger: Logger): Promise<Subsys
445
439
446
440
logger . verbose ( 'Creating aztec node...' ) ;
447
441
const telemetry = await createAndStartTelemetryClient ( getTelemetryConfig ( ) ) ;
448
- const aztecNode = await AztecNodeService . createAndSync ( aztecNodeConfig , { telemetry } ) ;
442
+ const dateProvider = new TestDateProvider ( ) ;
443
+ const aztecNode = await AztecNodeService . createAndSync ( aztecNodeConfig , { telemetry, dateProvider } ) ;
449
444
450
445
let proverNode : ProverNode | undefined = undefined ;
451
446
if ( aztecNodeConfig . startProverNode ) {
@@ -477,7 +472,7 @@ async function setupFromState(statePath: string, logger: Logger): Promise<Subsys
477
472
} ,
478
473
watcher,
479
474
cheatCodes,
480
- timer ,
475
+ dateProvider ,
481
476
} ;
482
477
}
483
478
0 commit comments