public void TestSetUp() { accounts.Clear(); var mockStorage = new Mock <IStore>(); mockStorage.Setup(x => x.Put(It.IsAny <Account>())).Callback <Account>(acc => accounts.Add(acc)); mockStorage.Setup(x => x.Get(It.IsAny <string>())).Returns((string accName) => accounts.First(acc => acc.Name == accName)); storage = mockStorage.Object; amountManager = new AmountManager(storage); var A1 = new Account { Name = "Acc1" }; var A2 = new Account { Name = "Acc2" }; var A3 = new Account { Name = "Acc3" }; A1.Add(1000); A2.Add(2000); A3.Add(3000); storage.Put(A1); storage.Put(A2); storage.Put(A3); }
public void SetupDependencies(AmountManager amountManager) { this.amountManager = amountManager; amountManager.OnAmountChanged += UpdateTransactionFeeVisuals; UpdateTransactionFeeVisuals(); }
public void Construct( CurrencyManager currencyManager, UserWalletManager userWalletManager, TradableAssetManager tradableAssetManager, TradableAssetPriceManager tradableAssetPriceManager, EthereumTransactionButtonManager ethereumTransactionButtonManager, EtherBalanceObserver etherBalanceObserver, GasPriceObserver gasPriceObserver, UpdateManager updateManager, DynamicDataCache dynamicDataCache, PeriodicUpdateManager periodicUpdateManager, ContactsManager contactsManager, ButtonClickObserver buttonClickObserver, RestrictedAddressManager restrictedAddressManager) { this.ethereumTransactionButtonManager = ethereumTransactionButtonManager; this.userWalletManager = userWalletManager; this.dynamicDataCache = dynamicDataCache; this.buttonClickObserver = buttonClickObserver; Asset = new AssetManager(tradableAssetManager, etherBalanceObserver, updateManager, assetSymbol, assetBalance, assetImage); Gas = new GasManager(tradableAssetManager, tradableAssetPriceManager, currencyManager, gasPriceObserver, periodicUpdateManager, advancedModeToggle, transactionSpeedSlider, gasLimitField, gasPriceField, transactionFee); Address = new AddressManager(addressField, contactName, contactsManager, restrictedAddressManager); Amount = new AmountManager(currencyManager, tradableAssetPriceManager, maxToggle, maxText, amountField, currencyText, oppositeCurrencyAmountText, currencyButton, assetSymbol.text); Gas.SetupDependencies(Amount); Amount.SetupDependencies(Gas, Asset); simpleModeSelectableFields.Add(addressField.InputFieldBase); simpleModeSelectableFields.Add(amountField.InputFieldBase); advancedModeSelectableFields.AddRange(simpleModeSelectableFields); advancedModeSelectableFields.Add(gasLimitField.InputFieldBase); advancedModeSelectableFields.Add(gasPriceField.InputFieldBase); }
public void Construct( TradableAssetPriceManager tradableAssetPriceManager, CurrencyManager currencyManager, LockPRPSManager lockPRPSManager, LockedPRPSManager lockedPRPSManager, GasPriceObserver gasPriceObserver, EtherBalanceObserver etherBalanceObserver, Hodler hodlerContract, UserWalletManager userWalletManager, ButtonClickObserver buttonClickObserver) { this.lockedPRPSManager = lockedPRPSManager; this.etherBalanceObserver = etherBalanceObserver; this.userWalletManager = userWalletManager; this.hodlerContract = hodlerContract; this.buttonClickObserver = buttonClickObserver; etherBalanceObserver.SubscribeObservable(this); buttonClickObserver.SubscribeObservable(this); Gas = new GasManager(tradableAssetPriceManager, currencyManager, lockPRPSManager, gasPriceObserver, slider, transactionFeeText, this); Amount = new AmountManager(lockPRPSManager, maxToggle, amountInputField, prpsBalanceText, dubiBalanceText, dubiRewardText, tooltipItems[2]); Time = new TimeManager(Amount, threeMonthsButton, sixMonthsButton, twelveMonthsButton, dubiRewardText); if (lockPRPSManager.PRPSBalance == 0) { maxToggle.SetInteractable(false); maxText.color = UIColors.LightGrey; } bool showTooltips = SecurePlayerPrefs.GetBool(PlayerPrefConstants.SETTING_SHOW_TOOLTIPS); foreach (TooltipItem tooltip in tooltipItems) { if (showTooltips) { tooltip.PopupManager = popupManager; } else if (tooltip.infoIcon) { tooltip.gameObject.SetActive(false); } else { tooltip.enabled = false; } } }
/// <summary> /// Initializes the TimeManager by assigning all buttons and other dependencies. /// </summary> /// <param name="amountManager"> The LockPRPSPopup.AmountManager. </param> /// <param name="threeMonthsButton"> The button used to represent a three month purpose lock. </param> /// <param name="sixMonthsButton"> The button used to represent a six month purpose lock. </param> /// <param name="twelveMonthsButton"> The button used to represent a twelve month purpose lock. </param> /// <param name="dubiRewardText"> The text component used for displaying the dubi reward. </param> public TimeManager( AmountManager amountManager, Button threeMonthsButton, Button sixMonthsButton, Button twelveMonthsButton, TMP_Text dubiRewardText) { this.amountManager = amountManager; this.threeMonthsButton = threeMonthsButton; this.sixMonthsButton = sixMonthsButton; this.twelveMonthsButton = twelveMonthsButton; this.dubiRewardText = dubiRewardText; amountManager.OnLockAmountChanged += UpdateDUBIReward; threeMonthsButton.onClick.AddListener(() => ButtonPressed(threeMonthsButton)); sixMonthsButton.onClick.AddListener(() => ButtonPressed(sixMonthsButton)); twelveMonthsButton.onClick.AddListener(() => ButtonPressed(twelveMonthsButton)); }
public Accounts(IStore accountsManager) { this.accountsManager = accountsManager; amountManager = new AmountManager(accountsManager); }