public void ShouldMapJobRoles()
        {
            var mockSettings                 = new Mock <IAppServiceSettings>();
            var mockLarsDataService          = new Mock <ILarsDataService>();
            var mockElasticsearchDataService = new Mock <IElasticsearchLarsDataService>();

            mockSettings.Setup(x => x.MetadataApiUri).Returns("www.abba.co.uk");

            mockElasticsearchDataService.Setup(m => m.GetListOfFrameworks())
            .Returns(
                new List <FrameworkMetaData>
            {
                new FrameworkMetaData {
                    EffectiveFrom = DateTime.Parse("2015-01-01"), EffectiveTo = null, FworkCode = 500, PwayCode = 1, ProgType = 21
                }
            });

            var metaDataManager = new MetaDataManager(mockLarsDataService.Object, mockElasticsearchDataService.Object, _mockVstsService.Object, mockSettings.Object, null, Mock.Of <ILog>());
            var framework       = metaDataManager.GetAllFrameworks().FirstOrDefault();

            framework.Should().NotBeNull();
            framework.JobRoleItems.Count().Should().Be(2);
            framework.JobRoleItems.FirstOrDefault().Title.Should().Be("Job role 2");
            framework.JobRoleItems.FirstOrDefault().Description.Should().Be("Description 2");
        }
        public void ShouldMapTypicalLength()
        {
            var mockSettings = new Mock <IAppServiceSettings>();

            var mockLarsDataService = new Mock <ILarsDataService>();

            var mockElasticsearchDataService = new Mock <IElasticsearchLarsDataService>();

            mockSettings.Setup(x => x.MetadataApiUri).Returns("www.abba.co.uk");

            mockElasticsearchDataService.Setup(m => m.GetListOfFrameworks())
            .Returns(
                new List <FrameworkMetaData>
            {
                new FrameworkMetaData {
                    EffectiveFrom = DateTime.Parse("2015-01-01"), EffectiveTo = null, FworkCode = 500, PwayCode = 1, ProgType = 21
                }
            });

            mockLarsDataService.Setup(m => m.GetListOfCurrentFrameworks())
            .Returns(
                new List <FrameworkMetaData>
            {
                new FrameworkMetaData {
                    EffectiveFrom = DateTime.Parse("2015-01-01"), EffectiveTo = null, FworkCode = 500, PwayCode = 1, ProgType = 21
                }
            });

            var metaDataManager = new MetaDataManager(mockLarsDataService.Object, mockElasticsearchDataService.Object, _mockVstsService.Object, mockSettings.Object, null, Mock.Of <ILog>());
            var framework       = metaDataManager.GetAllFrameworks().FirstOrDefault();

            framework.Should().NotBeNull();
            framework.TypicalLength.From.Should().Be(12);
            framework.TypicalLength.To.Should().Be(24);
        }
        public void GetAllFrameworks()
        {
            var mockSettings                 = new Mock <IAppServiceSettings>();
            var mockLarsDataService          = new Mock <ILarsDataService>();
            var mockElasticsearchDataService = new Mock <IElasticsearchLarsDataService>();

            mockSettings.Setup(x => x.MetadataApiUri).Returns("www.abba.co.uk");
            mockElasticsearchDataService.Setup(m => m.GetListOfFrameworks())
            .Returns(
                new List <FrameworkMetaData> {
                new FrameworkMetaData {
                    EffectiveFrom = DateTime.Parse("2015-01-01"), EffectiveTo = null, FworkCode = 500, PwayCode = 1, ProgType = 2
                }
            });

            var metaDataManager = new MetaDataManager(mockLarsDataService.Object, mockElasticsearchDataService.Object, _mockVstsService.Object, mockSettings.Object, null, Mock.Of <ILog>());
            var frameworks      = metaDataManager.GetAllFrameworks();

            Assert.AreEqual(1, frameworks.Count());
        }