Beispiel #1
0
        public static void ShouldReturnEmptySequenceWhenSameDateIsPassed()
        {
            var date = new DateTime(2013, 10, 11);

            var sequence = DateSource.GetDateSequence(date, date);

            sequence.Should().BeEmpty();
        }
Beispiel #2
0
        public static void ShouldReturnFromDateItemWhenConsecutiveDaysPassed()
        {
            var minDate = new DateTime(2013, 10, 11);
            var maxDate = new DateTime(2013, 10, 12);

            var sequence = DateSource.GetDateSequence(minDate, maxDate);

            sequence.Single().Should().Be(minDate);
        }
Beispiel #3
0
        public static void ShouldReturnACountOfDateDiffDays()
        {
            int expectedCount = 10;
            var minDate       = new DateTime(2013, 10, 11);
            var maxDate       = minDate.AddDays(expectedCount);

            var sequence = DateSource.GetDateSequence(minDate, maxDate);

            sequence.Count().Should().Be(expectedCount);
        }
Beispiel #4
0
        /// <summary>
        /// Builds a task used to load the date dimension.
        /// </summary>
        /// <returns>A task used to load the date dimension.</returns>
        public ITask Build()
        {
            var dateTarget = new SqlBulkRepository <DateValue>(
                "dbo.DimDate",
                this.targetFactory,
                new Dictionary <string, string>()
            {
                { "Key", "DateKey" },
                { "Value", "FullDateAlternateKey" },
                { "DayNumberOfWeek", "DayNumberOfWeek" },
                { "EnglishDayNameOfWeek", "EnglishDayNameOfWeek" },
                { "SpanishDayNameOfWeek", "SpanishDayNameOfWeek" },
                { "FrenchDayNameOfWeek", "FrenchDayNameOfWeek" },
                { "DayNumberOfMonth", "DayNumberOfMonth" },
                { "DayNumberOfYear", "DayNumberOfYear" },
                { "WeekNumberOfYear", "WeekNumberOfYear" },
                { "EnglishMonthName", "EnglishMonthName" },
                { "SpanishMonthName", "SpanishMonthName" },
                { "FrenchMonthName", "FrenchMonthName" },
                { "MonthNumberOfYear", "MonthNumberOfYear" },
                { "CalendarQuarter", "CalendarQuarter" },
                { "CalendarYear", "CalendarYear" },
                { "CalendarSemester", "CalendarSemester" },
                { "FiscalQuarter", "FiscalQuarter" },
                { "FiscalYear", "FiscalYear" },
                { "FiscalSemester", "FiscalSemester" }
            });

            var dateSource = DateSource.GetDateSequence(new DateTime(2005, 01, 01), new DateTime(2010, 12, 31));

            return(new SimpleDataflowTask <DateTime, DateValue>(
                       "Load date dimension",
                       dateSource,
                       s => new DateValue(s),
                       dateTarget));
        }