@@ -19,7 +19,8 @@ import {
1919} from 'rxjs' ;
2020import { ObservableWallet , SignedTx , buildTx } from '@cardano-sdk/wallet' ;
2121import { assertTxIsValid } from '../../../wallet/test/util' ;
22- import { faucetProviderFactory } from '../../src' ;
22+ import { env } from './environment' ;
23+ import { faucetProviderFactory , networkInfoProviderFactory } from '../../src' ;
2324import { logger } from '@cardano-sdk/util-dev' ;
2425import sortBy from 'lodash/sortBy' ;
2526
@@ -121,12 +122,12 @@ export const requestCoins = async ({ coins, wallet }: RequestCoinsProps) => {
121122 const [ { address } ] = await firstValueFrom ( wallet . addresses$ ) ;
122123 logger . info ( `Address ${ address . toString ( ) } will be funded with ${ coins } tLovelace.` ) ;
123124
124- const env = envalid . cleanEnv ( process . env , {
125+ const { FAUCET_PROVIDER , FAUCET_PROVIDER_PARAMS } = envalid . cleanEnv ( process . env , {
125126 FAUCET_PROVIDER : envalid . str ( ) ,
126127 FAUCET_PROVIDER_PARAMS : envalid . json ( { default : { } } )
127128 } ) ;
128129
129- const faucetProvider = await faucetProviderFactory . create ( env . FAUCET_PROVIDER , env . FAUCET_PROVIDER_PARAMS , logger ) ;
130+ const faucetProvider = await faucetProviderFactory . create ( FAUCET_PROVIDER , FAUCET_PROVIDER_PARAMS , logger ) ;
130131 await faucetProvider . start ( ) ;
131132 const healthCheck = await faucetProvider . healthCheck ( ) ;
132133 if ( ! healthCheck . ok ) throw new Error ( 'Faucet provider could not be started.' ) ;
@@ -176,3 +177,20 @@ export const waitForEpoch = (wallet: Pick<ObservableWallet, 'currentEpoch$'>, wa
176177 )
177178 ) ;
178179} ;
180+
181+ export const runningAgainstLocalNetwork = async ( ) => {
182+ const networkInfoProvider = await networkInfoProviderFactory . create (
183+ env . NETWORK_INFO_PROVIDER ,
184+ env . NETWORK_INFO_PROVIDER_PARAMS ,
185+ logger
186+ ) ;
187+ const { epochLength, slotLength } = await networkInfoProvider . genesisParameters ( ) ;
188+
189+ const estimatedTestDurationInEpochs = 4 ;
190+ const localNetworkEpochDuration = 1000 * 0.2 ;
191+ const estimatedTestDuration = epochLength * slotLength * estimatedTestDurationInEpochs ;
192+ if ( estimatedTestDuration > localNetworkEpochDuration * estimatedTestDurationInEpochs ) {
193+ return false ;
194+ }
195+ return true ;
196+ } ;
0 commit comments