public void LoadWalletSuccessfullyReturnsWalletModel()
        {
            Bitcoin.Wallet.Wallet wallet = new Bitcoin.Wallet.Wallet
            {
                Name    = "myWallet",
                Network = WalletHelpers.GetNetwork("mainnet")
            };

            var mockWalletWrapper = new Mock <IWalletManager>();

            mockWalletWrapper.Setup(w => w.RecoverWallet(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <DateTime>(), null)).Returns(wallet);
            string dir        = AssureEmptyDir("TestData/ControllersTests/LoadWalletSuccessfullyReturnsWalletModel");
            var    dataFolder = new DataFolder(new NodeSettings {
                DataDir = dir
            });

            var controller = new WalletController(mockWalletWrapper.Object, new Mock <IWalletSyncManager>().Object, It.IsAny <ConnectionManager>(), Network.Main, new Mock <ConcurrentChain>().Object, dataFolder);

            // Act
            var result = controller.Recover(new WalletRecoveryRequest
            {
                Name       = "myWallet",
                FolderPath = "",
                Password   = "",
                Network    = "MainNet",
                Mnemonic   = "mnemonic"
            });

            // Assert
            mockWalletWrapper.VerifyAll();
            var viewResult = Assert.IsType <OkResult>(result);

            Assert.Equal(200, viewResult.StatusCode);
        }
        public void LoadWalletSuccessfullyReturnsWalletModel()
        {
            Wallet.Wallet wallet = new Wallet.Wallet
            {
                Name    = "myWallet",
                Network = WalletHelpers.GetNetwork("mainnet")
            };

            var mockWalletWrapper = new Mock <IWalletManager>();

            mockWalletWrapper.Setup(w => w.RecoverWallet(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), null, It.IsAny <DateTime>())).Returns(wallet);

            var controller = new WalletController(mockWalletWrapper.Object, new Mock <ITracker>().Object);

            // Act
            var result = controller.Recover(new WalletRecoveryRequest
            {
                Name       = "myWallet",
                FolderPath = "",
                Password   = "",
                Network    = "MainNet",
                Mnemonic   = "mnemonic"
            });

            // Assert
            mockWalletWrapper.VerifyAll();
            var viewResult = Assert.IsType <JsonResult>(result);

            Assert.NotNull(viewResult.Value);
            Assert.IsType <WalletModel>(viewResult.Value);

            var model = viewResult.Value as WalletModel;

            Assert.Equal("Main", model.Network);
        }
Exemple #3
0
        public void LoadWalletSuccessfullyReturnsWalletModel()
        {
            WalletModel walletModel = new WalletModel
            {
                FileName  = "myWallet",
                Network   = "MainNet",
                Addresses = new List <string> {
                    "address1", "address2", "address3", "address4", "address5"
                }
            };
            var mockWalletWrapper = new Mock <IWalletWrapper>();

            mockWalletWrapper.Setup(wallet => wallet.Recover(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).Returns(walletModel);

            var controller = new WalletController(mockWalletWrapper.Object);

            // Act
            var result = controller.Recover(new WalletRecoveryRequest
            {
                Name       = "myName",
                FolderPath = "",
                Password   = "",
                Network    = "",
                Mnemonic   = "mnemonic"
            });

            // Assert
            mockWalletWrapper.VerifyAll();
            var viewResult = Assert.IsType <JsonResult>(result);

            Assert.NotNull(viewResult.Value);
            Assert.IsType <WalletModel>(viewResult.Value);

            var model = viewResult.Value as WalletModel;

            Assert.Equal("myWallet", model.FileName);
        }