public void UnionTest()
 {
     Utilities.DataTypes.DateSpan Span1 = new Utilities.DataTypes.DateSpan(new DateTime(1999, 1, 1), new DateTime(2003, 1, 1));
     Utilities.DataTypes.DateSpan Span2 = new Utilities.DataTypes.DateSpan(new DateTime(2002, 1, 1), new DateTime(2009, 1, 1));
     Utilities.DataTypes.DateSpan Span3 = Span1 + Span2;
     Assert.Equal(new DateTime(1999, 1, 1), Span3.Start);
     Assert.Equal(new DateTime(2009, 1, 1), Span3.End);
 }
 public void IntersectionTest()
 {
     Utilities.DataTypes.DateSpan Span1 = new Utilities.DataTypes.DateSpan(new DateTime(1999, 1, 1), new DateTime(2003, 1, 1));
     Utilities.DataTypes.DateSpan Span2 = new Utilities.DataTypes.DateSpan(new DateTime(2002, 1, 1), new DateTime(2009, 1, 1));
     Utilities.DataTypes.DateSpan Span3 = Span1.Intersection(Span2);
     Assert.Equal(new DateTime(2002, 1, 1), Span3.Start);
     Assert.Equal(new DateTime(2003, 1, 1), Span3.End);
 }
        public void CompareTest()
        {
            Utilities.DataTypes.DateSpan Span1 = new Utilities.DataTypes.DateSpan(new DateTime(1999, 1, 1), new DateTime(2009, 1, 1));
            Utilities.DataTypes.DateSpan Span2 = new Utilities.DataTypes.DateSpan(new DateTime(1999, 1, 1), new DateTime(2009, 1, 1));
            Utilities.DataTypes.DateSpan Span3 = new Utilities.DataTypes.DateSpan(new DateTime(1999, 1, 2), new DateTime(2009, 1, 1));

            Assert.True(Span1 == Span2);
            Assert.False(Span1 == Span3);
        }
        public void CompareTest()
        {
            Utilities.DataTypes.DateSpan Span1=new Utilities.DataTypes.DateSpan(new DateTime(1999, 1, 1), new DateTime(2009, 1, 1));
            Utilities.DataTypes.DateSpan Span2=new Utilities.DataTypes.DateSpan(new DateTime(1999, 1, 1), new DateTime(2009, 1, 1));
            Utilities.DataTypes.DateSpan Span3=new Utilities.DataTypes.DateSpan(new DateTime(1999, 1, 2), new DateTime(2009, 1, 1));

            Assert.True(Span1 == Span2);
            Assert.False(Span1 == Span3);
        }
 public void DifferenceTest()
 {
     Utilities.DataTypes.DateSpan Span1 = new Utilities.DataTypes.DateSpan(new DateTime(1999, 1, 1), new DateTime(2003, 1, 1));
     Assert.Equal(4, Span1.Years);
     Assert.Equal(0, Span1.Months);
     Assert.Equal(0, Span1.Days);
     Assert.Equal(0, Span1.Hours);
     Assert.Equal(0, Span1.Minutes);
     Assert.Equal(0, Span1.Seconds);
     Assert.Equal(0, Span1.MilliSeconds);
     Utilities.DataTypes.DateSpan Span2 = new Utilities.DataTypes.DateSpan(new DateTime(1999, 1, 1, 2, 3, 4), new DateTime(2003, 11, 15, 6, 45, 32));
     Assert.Equal(4, Span2.Years);
     Assert.Equal(10, Span2.Months);
     Assert.Equal(14, Span2.Days);
     Assert.Equal(4, Span2.Hours);
     Assert.Equal(42, Span2.Minutes);
     Assert.Equal(28, Span2.Seconds);
     Assert.Equal(0, Span2.MilliSeconds);
 }
 public void DifferenceTest()
 {
     Utilities.DataTypes.DateSpan Span1 = new Utilities.DataTypes.DateSpan(new DateTime(1999, 1, 1), new DateTime(2003, 1, 1));
     Assert.Equal(4, Span1.Years);
     Assert.Equal(0, Span1.Months);
     Assert.Equal(0, Span1.Days);
     Assert.Equal(0, Span1.Hours);
     Assert.Equal(0, Span1.Minutes);
     Assert.Equal(0, Span1.Seconds);
     Assert.Equal(0, Span1.MilliSeconds);
     Utilities.DataTypes.DateSpan Span2 = new Utilities.DataTypes.DateSpan(new DateTime(1999, 1, 1, 2, 3, 4), new DateTime(2003, 11, 15, 6, 45, 32));
     Assert.Equal(4, Span2.Years);
     Assert.Equal(10, Span2.Months);
     Assert.Equal(14, Span2.Days);
     Assert.Equal(4, Span2.Hours);
     Assert.Equal(42, Span2.Minutes);
     Assert.Equal(28, Span2.Seconds);
     Assert.Equal(0, Span2.MilliSeconds);
 }
 /// <summary>
 /// Determines if two DateSpans overlap
 /// </summary>
 /// <param name="Span">The span to compare to</param>
 /// <returns>True if they overlap, false otherwise</returns>
 public bool Overlap(DateSpan Span)
 {
     return ((Start >= Span.Start && Start < Span.End) || (End <= Span.End && End > Span.Start) || (Start <= Span.Start && End >= Span.End));
 }
 /// <summary>
 /// Returns the intersecting time span between the two values
 /// </summary>
 /// <param name="Span">Span to use</param>
 /// <returns>The intersection of the two time spans</returns>
 public DateSpan Intersection(DateSpan Span)
 {
     if (Span.IsNull())
         return null;
     if (!Overlap(Span))
         return null;
     DateTime Start = Span.Start > this.Start ? Span.Start : this.Start;
     DateTime End = Span.End < this.End ? Span.End : this.End;
     return new DateSpan(Start, End);
 }
 public void OverlapTest()
 {
     Utilities.DataTypes.DateSpan Span1 = new Utilities.DataTypes.DateSpan(new DateTime(1999, 1, 1), new DateTime(2003, 1, 1));
     Utilities.DataTypes.DateSpan Span2 = new Utilities.DataTypes.DateSpan(new DateTime(2002, 1, 1), new DateTime(2009, 1, 1));
     Assert.True(Span1.Overlap(Span2));
 }
 public void OverlapTest()
 {
     Utilities.DataTypes.DateSpan Span1 = new Utilities.DataTypes.DateSpan(new DateTime(1999, 1, 1), new DateTime(2003, 1, 1));
     Utilities.DataTypes.DateSpan Span2 = new Utilities.DataTypes.DateSpan(new DateTime(2002, 1, 1), new DateTime(2009, 1, 1));
     Assert.True(Span1.Overlap(Span2));
 }
Esempio n. 11
0
 /// <summary>
 /// Determines if two DateSpans overlap
 /// </summary>
 /// <param name="Span">The span to compare to</param>
 /// <returns>True if they overlap, false otherwise</returns>
 public bool Overlap(DateSpan Span)
 {
     return((Start >= Span.Start && Start < Span.End) || (End <= Span.End && End > Span.Start) || (Start <= Span.Start && End >= Span.End));
 }
 /// <summary>
 /// Determines if two DateSpans overlap
 /// </summary>
 /// <param name="Span">The span to compare to</param>
 /// <returns>True if they overlap, false otherwise</returns>
 public bool Overlap(DateSpan Span)
 {
     Contract.Requires<ArgumentNullException>(Span != null, "Span");
     return ((Start >= Span.Start && Start < Span.End) || (End <= Span.End && End > Span.Start) || (Start <= Span.Start && End >= Span.End));
 }
        /// <summary>
        /// Determines if two objects are equal
        /// </summary>
        /// <param name="obj">Object to check</param>
        /// <returns>True if they are, false otherwise</returns>
        public override bool Equals(object obj)
        {
            DateSpan Tempobj = obj as DateSpan;

            return(Tempobj != null && Tempobj == this);
        }