Example #1
0
        public async Task GetPerformance()
        {
            var mockRepository = new MockRepository(MockBehavior.Strict);

            var portfolioId = Guid.NewGuid();
            var dateRange   = new DateRange(new Date(2001, 02, 03), new Date(2008, 06, 30));
            var response    = new PortfolioPerformanceResponse()
            {
                ChangeInMarketValue = 1000.00m
            };

            var messageHandler = mockRepository.Create <IRestClientMessageHandler>();

            messageHandler.SetupProperty(x => x.Portfolio, portfolioId);
            messageHandler.Setup(x => x.GetAsync <PortfolioPerformanceResponse>(It.Is <string>(x => x == "portfolio/" + portfolioId + "/performance?fromdate=2001-02-03&todate=2008-06-30")))
            .Returns(Task <PortfolioPerformanceResponse> .FromResult(response))
            .Verifiable();

            var resource = new PortfolioResource(messageHandler.Object);

            var result = await resource.GetPerformance(dateRange);

            result.Should().Be(response);

            mockRepository.Verify();
        }
Example #2
0
        public async Task GetSummary()
        {
            var mockRepository = new MockRepository(MockBehavior.Strict);

            var portfolioId = Guid.NewGuid();
            var date        = new Date(2001, 02, 03);
            var response    = new PortfolioSummaryResponse()
            {
                PortfolioValue = 9000.00m
            };

            var messageHandler = mockRepository.Create <IRestClientMessageHandler>();

            messageHandler.SetupProperty(x => x.Portfolio, portfolioId);
            messageHandler.Setup(x => x.GetAsync <PortfolioSummaryResponse>(It.Is <string>(x => x == "portfolio/" + portfolioId + "/summary?date=2001-02-03")))
            .Returns(Task <List <PortfolioSummaryResponse> > .FromResult(response))
            .Verifiable();

            var resource = new PortfolioResource(messageHandler.Object);

            var result = await resource.GetSummary(date);

            result.Should().Be(response);

            mockRepository.Verify();
        }
Example #3
0
        public async Task GetProperties()
        {
            var mockRepository = new MockRepository(MockBehavior.Strict);

            var portfolioId = Guid.NewGuid();
            var response    = new PortfolioPropertiesResponse()
            {
                Id = portfolioId
            };

            var messageHandler = mockRepository.Create <IRestClientMessageHandler>();

            messageHandler.SetupProperty(x => x.Portfolio, portfolioId);
            messageHandler.Setup(x => x.GetAsync <PortfolioPropertiesResponse>(It.Is <string>(x => x == "portfolio/" + portfolioId + "/properties")))
            .Returns(Task <PortfolioPropertiesResponse> .FromResult(response))
            .Verifiable();

            var resource = new PortfolioResource(messageHandler.Object);

            var result = await resource.GetProperties();

            result.Should().Be(response);

            mockRepository.Verify();
        }
Example #4
0
        public async Task GetDetailedCapitalGains()
        {
            var mockRepository = new MockRepository(MockBehavior.Strict);

            var portfolioId = Guid.NewGuid();
            var date        = new Date(2001, 02, 03);
            var response    = new DetailedUnrealisedGainsResponse();

            var messageHandler = mockRepository.Create <IRestClientMessageHandler>();

            messageHandler.SetupProperty(x => x.Portfolio, portfolioId);
            messageHandler.Setup(x => x.GetAsync <DetailedUnrealisedGainsResponse>(It.Is <string>(x => x == "portfolio/" + portfolioId + "/detailedcapitalgains?date=2001-02-03")))
            .Returns(Task <DetailedUnrealisedGainsResponse> .FromResult(response))
            .Verifiable();

            var resource = new PortfolioResource(messageHandler.Object);

            var result = await resource.GetDetailedCapitalGains(date);

            result.Should().Be(response);

            mockRepository.Verify();
        }
Example #5
0
        public async Task GetValue(ValueFrequency frequency, string queryString)
        {
            var mockRepository = new MockRepository(MockBehavior.Strict);

            var portfolioId = Guid.NewGuid();
            var dateRange   = new DateRange(new Date(2001, 02, 03), new Date(2008, 06, 30));
            var response    = new PortfolioValueResponse();

            var messageHandler = mockRepository.Create <IRestClientMessageHandler>();

            messageHandler.SetupProperty(x => x.Portfolio, portfolioId);
            messageHandler.Setup(x => x.GetAsync <PortfolioValueResponse>(It.Is <string>(x => x == "portfolio/" + portfolioId + "/value?fromdate=2001-02-03&todate=2008-06-30&frequency=" + queryString)))
            .Returns(Task <PortfolioValueResponse> .FromResult(response))
            .Verifiable();

            var resource = new PortfolioResource(messageHandler.Object);

            var result = await resource.GetValue(dateRange, frequency);

            result.Should().Be(response);

            mockRepository.Verify();
        }