Esempio n. 1
0
    public override void SetConstraints()
    {
        base.SetConstraints();

        if (parentPC == null)
        {
            parentPC = parent.GetComponent <PortfolioController>();
        }
        Vector2 targetSize = parentPC.panelSize;

        scaleVector = new Vector2(targetSize.x / rt.sizeDelta.x, targetSize.y / rt.sizeDelta.y);
        background.rectTransform.localPosition = new Vector2(0f, 0f);

        // Set size of both window and background image
        background.rectTransform.sizeDelta = targetSize;
        rt.sizeDelta = targetSize;

        foreach (GameObject element in content)
        {
            LayoutController elementLC = element.GetComponent <LayoutController>();
            if (elementLC != null)
            {
                elementLC.RepositionElements();
            }
        }
    }
        public async Task GetPortfolioInfo_ReturnsNotNull()
        {
            int portfolioId = 1;

            var portfolioRepositoryMock = new Mock <IPortfolioRepository>();

            portfolioRepositoryMock
            .Setup(x => x.GetAsync(It.Is <int>(id => id == portfolioId)))
            .Returns(Task.FromResult(new Portfolio()
            {
                Id = portfolioId, Name = "John Doe"
            }));

            var portfolioController = new PortfolioController(portfolioRepositoryMock.Object);

            var result = await portfolioController.GetPortfolioInfo(portfolioId) as OkObjectResult;

            Assert.NotNull(result);

            var resultPortfolio = result.Value as Portfolio;

            Assert.NotNull(resultPortfolio);

            Assert.AreEqual(portfolioId, resultPortfolio.Id);
        }
Esempio n. 3
0
        public async Task DeleteConfirmedTestAsync()
        {
            var existingPortfolioId = Guid.NewGuid();
            var portfolio           = new Portfolio
            {
                CreatedDate = DateTime.Now.AddDays(-23),
                Name        = "Test To Update",
                OwnerId     = "1",
                Id          = existingPortfolioId
            };

            _portfolioServiceMock.Setup(x => x.GetPortfolioById(existingPortfolioId)).ReturnsAsync(portfolio);
            _portfolioServiceMock.Setup(x => x.DeletePortfolio(portfolio)).ReturnsAsync(true);

            var controller = new PortfolioController(_portfolioServiceMock.Object, _mapper);

            controller.ControllerContext             = new ControllerContext();
            controller.ControllerContext.HttpContext = new DefaultHttpContext {
                User = _user
            };                                                                                  // Mock a logged in user

            var viewResult = await controller.DeleteConfirmed(existingPortfolioId) as RedirectToActionResult;

            Assert.IsNotNull(viewResult);
            // Successfull if it returns to an index page.
            Assert.AreEqual("Index", viewResult.ActionName);
        }
        public void GetPortfolios_WithValidInputs_ReturnsPortfolios()
        {
            PortfolioState portfolio = new PortfolioState
            {
                AccountCount = 2,
                AsOfDate     = DateTime.Now,
                Number       = "1",
                Name         = "Henry!",
                TotalBalance = 100.0M
            };
            List <PortfolioState> list = new List <PortfolioState> {
                portfolio
            };

            Mock <IDataProcessor> mock = new Mock <IDataProcessor>();

            mock.Setup(m => m.GetPortfolios()).Returns(list as object);

            PortfolioController controller = new PortfolioController(mock.Object);
            object result     = controller.GetPortfolios();
            object portfolios = null;

            if (result is OkObjectResult)
            {
                portfolios = ((OkObjectResult)result).Value;
            }

            Assert.AreEqual(portfolios, list as object);
        }
        public void GetPortfolioController_Success()
        {
            var config = new ConfigurationBuilder().AddJsonFile("appsettings.json").Build();

            var mandateServiceMock = new Mock <IMandateService>();
            var loggerMock         = new Mock <ILogger <PortfolioController> >();
            ILogger <PortfolioController> logger = loggerMock.Object;

            this.controller = new PortfolioController(mandateServiceMock.Object, logger, config);

            var    position       = this.CreateMockPosition();
            var    portfolio      = this.CreateMockPortfolio();
            var    fundOfMandates = this.FundOfMandates();
            string fileName       = Path.GetFullPath(@"TestData/FundsOfMandatesData.xml");

            // arrange
            mandateServiceMock.Setup(p => p.GetPortfolio()).Returns(portfolio);
            mandateServiceMock.Setup(p => p.GetFundOfMandatesFromXML(fileName)).Returns(fundOfMandates);
            mandateServiceMock.Setup(p => p.CalculateMandates(position, fundOfMandates)).Returns(position);

            // act
            //var result = this.controller.GetPortfolio(this.CreateMockPositionVM());
            var result = this.controller.GetPortfolio();

            // assert
            //Assert.IsNull(result);
            result.Should().BeNull("Ok", null);
        }
 public void Setup()
 {
     _portfolioServiceMock = new Mock <IPortfolioService>();
     _portfolioController  = new PortfolioController(_portfolioServiceMock.Object);
     _listOfTrades         = new List <Trade>
     {
         new Trade
         {
             Action        = "Sell",
             ContractPrice = 3.53m,
             Id            = 1,
             PortfolioId   = 2,
             NoOfShares    = 300,
             Symbol        = "REL"
         },
         new Trade
         {
             Action        = "Sell",
             ContractPrice = 2.53m,
             Id            = 2,
             PortfolioId   = 1,
             NoOfShares    = 300,
             Symbol        = "REL"
         },
         new Trade
         {
             Action        = "Sell",
             ContractPrice = 3.23m,
             Id            = 3,
             PortfolioId   = 4,
             NoOfShares    = 600,
             Symbol        = "CBL"
         }
     };
 }
Esempio n. 7
0
 public PortfolioControllerTest()
 {
     this.unitOfWork = new FakeUnitOfWork();
     this.service    = new PortfolioService(unitOfWork);
     this.controller = new PortfolioController(service);
     InitializeMappings();
 }
        public void CreateUpdatePortfolioReturnView()
        {
            portfolioService.Setup(c => c.CreateOrUpdatePortfolio(It.IsAny <PortfolioDTO>(), It.IsAny <string>()))
            .Returns((PortfolioDTO i, string id) => 1);
            mock = new Mock <PortfolioController>(portfolioService.Object)
            {
                CallBase = true
            };
            mock.SetupGet(p => p.Mapper).Returns(AutoMapperWebConfiguration.GetConfiguration().CreateMapper());
            portfolioController = mock.Object;
            var controllerContext = new Mock <ControllerContext>();
            var principal         = new Mock <IPrincipal>();

            principal.Setup(p => p.IsInRole("Administrator")).Returns(true);
            principal.SetupGet(x => x.Identity.Name).Returns("userName");
            controllerContext.SetupGet(x => x.HttpContext.User).Returns(principal.Object);
            portfolioController.ControllerContext = controllerContext.Object;

            var result = portfolioController.Save(new PortfolioModel {
                Id = 1, Name = "Update Name"
            }) as RedirectToRouteResult;

            Assert.IsNotNull(result);
            Assert.AreEqual("Index", result.RouteValues["action"]);
            Assert.AreEqual(1, portfolioController.TempData["PortfolioId"]);
        }
        public PortfolioControllerTests()
        {
            var logger = Mock.Of <ILogger <PortfolioController> >();

            portfolioService    = new DummyPortfolioService();
            portfolioController = new PortfolioController(portfolioService, logger);
        }
        public void CreatePortfolio_Return_GeneralPartialView()
        {
            portfolioController = new PortfolioController(portfolioService.Object);

            PartialViewResult result = portfolioController.CreatePortfolio();

            Assert.IsNotNull(result);
            Assert.AreEqual("_General", result.ViewName);
        }
        public void Init()
        {
            AutoMapperConfig.Configure();

            _yahooFinanceService         = new YahooFinanceService();
            _financialCalculationService = new FinancialCalculationService();
            _googleFinanceService        = new GoogleFinanceService(new WebRequestService());
            _portfolioController         = new PortfolioController(_yahooFinanceService, _googleFinanceService, _financialCalculationService);
        }
        public void DeletePortfolio_ReturnJson()
        {
            portfolioService.Setup(c => c.DeletePortfolio(It.IsAny <int?>()))
            .Callback <int?>(i => ListPortfolios.RemoveAll(c => c.Id == i.Value));
            portfolioController = new PortfolioController(portfolioService.Object);

            var result = portfolioController.Delete(1);

            portfolioService.Verify(m => m.DeletePortfolio(1));
            Assert.IsTrue(ListPortfolios.Count() == 1);
        }
        public void GetPortfolio_ShouldRetrunExceptionIFPathIsNotDefined()
        {
            //Arrange
            configurationMock.Setup(x => x.GetSection(It.IsAny <string>())).Throws(new Exception("Path not found"));
            var PortfolioController = new PortfolioController(portfolioServicesMock.Object, configurationMock.Object);

            //Act
            Func <IActionResult> expectedPortfolioVM = () => PortfolioController.GetPortfolio();

            //Assert
            expectedPortfolioVM.Should().Throw <Exception>("something went wrong, please try after sometime").WithMessage("something went wrong, please try after sometime")
            .And.Should().NotBeAssignableTo(typeof(IActionResult));
        }
        public void GetPortfolio_ShouldReturnOk()
        {
            //Arrange

            var PortfolioController = new PortfolioController(portfolioServicesMock.Object, configurationMock.Object);

            //Act
            var expectedPortfolioVM = PortfolioController.GetPortfolio();

            //Assert
            expectedPortfolioVM.Should().NotBeNull();
            expectedPortfolioVM.Should().BeOfType <OkObjectResult>();
        }
        public void GetPortfolios_EncountersException_ReturnsBadRequest()
        {
            Mock <IDataProcessor> mock = new Mock <IDataProcessor>();

            mock.Setup(m => m.GetPortfolios()).Throws(new Exception("I'm Henry the Eighth, I am. Henry the Eighth, I am, I am"));

            PortfolioController controller = new PortfolioController(mock.Object);

            object result = controller.GetPortfolios();
            int    code   = ParseBadRequestForErrorCode(result);

            Assert.AreEqual(code, (int)ErrorCodes.CouchbaseProcessing);
        }
        public void StackExchangeActionRendersMyQuestions()
        {
            var cache = new Cache();

            caches.Setup(x => x.Get()).Returns(cache);
            var returnModel = new Paged <Answer>();

            answers.Setup(x => x.Page(cache, 0, 10)).Returns(returnModel);
            controller = new PortfolioController(caches.Object, answers.Object);

            var stackExchange = controller.StackExchange();
            var model         = (Paged <Answer>)stackExchange.Model;

            Assert.Equal(returnModel, model);
        }
Esempio n. 17
0
        public PortfolioControllerTest()
        {
            var portfolios = new List <Portfolio>
            {
                new Portfolio {
                    Id = 1, Name = "Dominika", Trade = new List <Trade>()
                },
                new Portfolio {
                    Id = 2, Name = "Mustafa", Trade = new List <Trade>()
                }
            };

            _portfolioRepositoryMock.Setup(p => p.GetAll()).Returns(portfolios.AsQueryable());
            _portfolioController = new PortfolioController(_shareRepositoryMock.Object, _tradeRepositoryMock.Object, _portfolioRepositoryMock.Object);
        }
        public PortfolioControllerTests()
        {
            _ctrl = new PortfolioController(_repoMock.Object);
            var mockResultSet = (new List <Portfolio>()
            {
                new Portfolio()
                {
                    Id = 1,
                    Name = "A",
                    Trade = new List <Trade>()
                }
            }).AsQueryable();

            _repoMock.Setup(x => x.Query()).Returns(mockResultSet);
            _repoMock.Setup(x => x.GetAll()).Returns(mockResultSet);
        }
        public void ShouldThrowArgumentExceptionIfPortfolioReturnedIsNull()
        {
            portfolioProcessor            = Substitute.For <IPortfolioProcessor>();
            config                        = Substitute.For <IConfiguration>();
            loggerFactory                 = Substitute.For <ILoggerFactory>();
            config["FundsOfMandatesFile"] = "FundOfMandatesDataV1.xml";
            loggerFactory.ClearReceivedCalls();
            PortfolioVM portfolio = null;

            portfolioProcessor.GetUpdatedPortfolio(Arg.Any <string>()).Returns(portfolio);

            PortfolioController controller = new PortfolioController(portfolioProcessor, config, loggerFactory);
            Func <PositionVM[]> func       = () => controller.Get();

            func.Should().Throw <ArgumentException>("Because GetPortfolio returns null here and client code mus throw an Argument Exception").WithMessage("Necessary Portfolio is not available to display");
        }
Esempio n. 20
0
        public async Task DetailsTest()
        {
            // Arrange
            _portfolioServiceMock.Setup(x => x.GetPortfolioById(_portfolio1Id)).ReturnsAsync(_portfolio1);
            var controller = new PortfolioController(_portfolioServiceMock.Object, _mapper);

            // Act
            var viewResult = await controller.Details(_portfolio1Id) as ViewResult;

            // Assert
            Assert.IsInstanceOfType(viewResult.Model, typeof(PortfolioDetailsDto));
            var model = viewResult.Model as PortfolioDetailsDto;

            Assert.AreEqual("Test 1", model.Name);
            Assert.AreEqual(model.Properties.Count, model.NumberOfProperties);
        }
Esempio n. 21
0
        public void Pagination()
        {
            // Организация
            Mock <IPortfolioProjects> mock = new Mock <IPortfolioProjects>();

            mock.Setup(proj => proj.PortfolioProj).Returns(new Portfolio[] {
                new Portfolio {
                    PortfolioID = 1, ProjectName = "name1"
                },
                new Portfolio {
                    PortfolioID = 2, ProjectName = "name2"
                },
                new Portfolio {
                    PortfolioID = 3, ProjectName = "name3"
                },
                new Portfolio {
                    PortfolioID = 4, ProjectName = "name4"
                },
                new Portfolio {
                    PortfolioID = 5, ProjectName = "name5"
                },
                new Portfolio {
                    PortfolioID = 6, ProjectName = "name6"
                },
                new Portfolio {
                    PortfolioID = 7, ProjectName = "name7"
                },
                new Portfolio {
                    PortfolioID = 8, ProjectName = "name8"
                },
                new Portfolio {
                    PortfolioID = 9, ProjectName = "name9"
                }
            });
            PortfolioController portfolioController = new PortfolioController(mock.Object);

            portfolioController.PageSize = 3;

            // Действие
            IEnumerable <Portfolio> getResult = portfolioController.Projects("2").ViewData.Model as IEnumerable <Portfolio>;

            // Утвеждение
            Portfolio[] portfolioArray = getResult.ToArray();
            Assert.True(portfolioArray.Length == 3);
            Assert.Equal("name4", portfolioArray[0].ProjectName);
            Assert.Equal("name5", portfolioArray[1].ProjectName);
        }
Esempio n. 22
0
        public void GetPerformanceStartDateOnly()
        {
            var mockRepository = new MockRepository(MockBehavior.Strict);

            var response = new PortfolioPerformanceResponse();

            var service = mockRepository.Create <IPortfolioPerformanceService>();

            service.Setup(x => x.GetPerformance(new DateRange(new Date(2000, 01, 01), new Date(2000, 12, 31)))).Returns(ServiceResult <PortfolioPerformanceResponse> .Ok(response)).Verifiable();

            var controller = new PortfolioController();
            var result     = controller.GetPerformance(service.Object, new DateTime(2000, 01, 01), null);

            result.Result.Should().BeOkObjectResult().Value.Should().Be(response);

            mockRepository.VerifyAll();
        }
Esempio n. 23
0
        public void GetPerformanceNoDates()
        {
            var mockRepository = new MockRepository(MockBehavior.Strict);

            var response = new PortfolioPerformanceResponse();

            var service = mockRepository.Create <IPortfolioPerformanceService>();

            service.Setup(x => x.GetPerformance(new DateRange(Date.Today.AddYears(-1).AddDays(1), Date.Today))).Returns(ServiceResult <PortfolioPerformanceResponse> .Ok(response)).Verifiable();

            var controller = new PortfolioController();
            var result     = controller.GetPerformance(service.Object, null, null);

            result.Result.Should().BeOkObjectResult().Value.Should().Be(response);

            mockRepository.VerifyAll();
        }
Esempio n. 24
0
        public void GetCorporateActions()
        {
            var mockRepository = new MockRepository(MockBehavior.Strict);

            var response = new CorporateActionsResponse();

            var service = mockRepository.Create <IPortfolioCorporateActionsService>();

            service.Setup(x => x.GetCorporateActions()).Returns(ServiceResult <CorporateActionsResponse> .Ok(response)).Verifiable();

            var controller = new PortfolioController();
            var result     = controller.GetCorporateActions(service.Object);

            result.Result.Should().BeOkObjectResult().Value.Should().Be(response);

            mockRepository.VerifyAll();
        }
Esempio n. 25
0
        public void GetSummaryForDate()
        {
            var mockRepository = new MockRepository(MockBehavior.Strict);

            var response = new PortfolioSummaryResponse();

            var service = mockRepository.Create <IPortfolioSummaryService>();

            service.Setup(x => x.GetSummary(new Date(2000, 01, 01))).Returns(ServiceResult <PortfolioSummaryResponse> .Ok(response)).Verifiable();

            var controller = new PortfolioController();
            var result     = controller.GetSummary(service.Object, new DateTime(2000, 01, 01));

            result.Result.Should().BeOkObjectResult().Value.Should().Be(response);

            mockRepository.VerifyAll();
        }
Esempio n. 26
0
        public void GetCashAccountBothDates()
        {
            var mockRepository = new MockRepository(MockBehavior.Strict);

            var response = new CashAccountTransactionsResponse();

            var service = mockRepository.Create <ICashAccountService>();

            service.Setup(x => x.GetTransactions(new DateRange(new Date(2000, 01, 01), new Date(2000, 12, 31)))).Returns(ServiceResult <CashAccountTransactionsResponse> .Ok(response)).Verifiable();

            var controller = new PortfolioController();
            var result     = controller.GetCashAccount(service.Object, new DateTime(2000, 01, 01), new DateTime(2000, 12, 31));

            result.Result.Should().BeOkObjectResult().Value.Should().Be(response);

            mockRepository.VerifyAll();
        }
Esempio n. 27
0
        public void GetDetailedCapitalGainsNoDate()
        {
            var mockRepository = new MockRepository(MockBehavior.Strict);

            var response = new DetailedUnrealisedGainsResponse();

            var service = mockRepository.Create <IPortfolioCapitalGainsService>();

            service.Setup(x => x.GetDetailedCapitalGains(Date.Today)).Returns(ServiceResult <DetailedUnrealisedGainsResponse> .Ok(response)).Verifiable();

            var controller = new PortfolioController();
            var result     = controller.GetDetailedCapitalGains(service.Object, null);

            result.Result.Should().BeOkObjectResult().Value.Should().Be(response);

            mockRepository.VerifyAll();
        }
Esempio n. 28
0
        public void GetValueMonthly()
        {
            var mockRepository = new MockRepository(MockBehavior.Strict);

            var response = new PortfolioValueResponse();

            var service = mockRepository.Create <IPortfolioValueService>();

            service.Setup(x => x.GetValue(It.IsAny <DateRange>(), ValueFrequency.Month)).Returns(ServiceResult <PortfolioValueResponse> .Ok(response)).Verifiable();

            var controller = new PortfolioController();
            var result     = controller.GetValue(service.Object, null, null, ValueFrequency.Month);

            result.Result.Should().BeOkObjectResult().Value.Should().Be(response);

            mockRepository.VerifyAll();
        }
        public void GetPortfolioController_EmptyResponse()
        {
            var config             = new ConfigurationBuilder().AddJsonFile("appsettings.json").Build();
            var mandateServiceMock = new Mock <IMandateService>();
            var loggerMock         = new Mock <ILogger <PortfolioController> >();
            ILogger <PortfolioController> logger = loggerMock.Object;

            this.controller = new PortfolioController(mandateServiceMock.Object, logger, config);

            var portfolio = this.CreateMockPortfolio_EmptyReponse();

            // arrange
            mandateServiceMock.Setup(p => p.GetPortfolio()).Returns(portfolio);

            // act
            var result = this.controller.GetPortfolio();

            result.Should().BeNull("Empty Response", null);
        }
        public void ShouldThrowExceptionIfPortfolioObjectDoesNowHavePositions()
        {
            portfolioProcessor            = Substitute.For <IPortfolioProcessor>();
            config                        = Substitute.For <IConfiguration>();
            loggerFactory                 = Substitute.For <ILoggerFactory>();
            config["FundsOfMandatesFile"] = "FundOfMandatesDataV1.xml";
            loggerFactory.ClearReceivedCalls();
            PortfolioVM portfolio = new PortfolioVM
            {
                Positions = null
            };

            portfolioProcessor.GetUpdatedPortfolio(Arg.Any <string>()).Returns(portfolio);

            PortfolioController controller = new PortfolioController(portfolioProcessor, config, loggerFactory);
            Func <PositionVM[]> func       = () => controller.Get();

            func.Should().Throw <Exception>("Because GetPortfolio returns no Positions in Portfolio and client code must throw an exception").WithMessage("No Valid Positions found under portfolio.");
        }