예제 #1
0
 public static void Main()
 {
     Time time1 = new Time(12, 34);
         Time time2 = new Time(23, 41);
         Time time3 = new Time(13, 52);
         Console.WriteLine(time1 + " " + time2 + " " + time3);
         Console.Read();
 }
예제 #2
0
 public static void Main()
 {
     Time t1 = new Time(12,0);
     Time t2 = t1;
     t1.minutes = 100;
     Console.WriteLine("t1={0} and t2={1}" , t1, t2);
     Console.Read();
 }
예제 #3
0
        public void TestEqualsNotEqualTimes()
        {
            int hours = 4;
            int minutes = 20;
            Time firstTime = new Time(hours, minutes);
            Time secondTime = new Time(hours, minutes + 5);

            bool expected = false;
            bool actual = firstTime.Equals(secondTime);

            Assert.AreEqual(expected, actual,
                            "There was a problem in comparing times.");
        }
예제 #4
0
        public void TestEqualObjectNull()
        {
            int hours = 4;
            int minutes = 20;
            Time firstTime = new Time(hours, minutes);
            object obj = null;

            bool expected = false;
            bool actual = firstTime.Equals(obj);

            Assert.AreEqual(expected, actual,
                            "There was a problem in comparing times.");
        }
예제 #5
0
        public void TestEqualsObjectEqualTimes()
        {
            int hours = 4; 
            int minutes = 12; 
            Time firstTime = new Time(hours, minutes);
            object obj = new Time(hours, minutes); 

            bool expected = true; 
            bool actual = firstTime.Equals(obj);

            Assert.AreEqual<bool>(expected, actual,
                            "There was a problem in comparing times.");       
        }
예제 #6
0
        public static void Main(string[] args)
        {
            Time time = new Time(2, 40);
             Console.WriteLine(time);

             Time t1 = new Time(9, 30);
             Console.WriteLine(t1 + new Time(1, 35));
             Console.WriteLine(t1 - new Time(1, 35));

             Time t2 = 120; // Two hours
             int m1 = (int)t1;
             Time t3 = t1 + 45;

             Console.WriteLine("t1={0} and t2={1} and m1={2} and t3={3}", t1, t2, m1, t3);
        }
예제 #7
0
        public void TestIncrementNormalValuesPrefixIncrement()
        {
            Time givenTime = new Time(13, 40);        
            
            Time expected = new Time(13, 41);
            Time actual = ++givenTime;

            Assert.AreEqual<Time>(expected, actual,
                                  "There was a problem in increment of time!");
        }
예제 #8
0
        public void TestSubtractionWith0Mintes()
        {
            Time givenTime = new Time(13, 40);
            int givenMinutes = 0;

            Time expected = new Time(13, 40);
            Time actual = (givenTime - givenMinutes);

            Assert.AreEqual<Time>(expected, actual,
                                  "There was a problem in subtraction of times!");
        }
예제 #9
0
        public void TestSubtractionWhen0Hour10MinutesMinus20Minutes()
        {
            Time givenTime = new Time(0, 10);
            int givenMinutes = 20;

            Time expected = new Time(23, 50);
            Time actual = (givenTime - givenMinutes);

            Assert.AreEqual<Time>(expected, actual,
                                  "There was a problem in Subtraction of times!");
        }
예제 #10
0
        public void TestSubtractionDecreaseHours()
        {
            Time givenTime = new Time(13, 40);
            int givenMinutes = 50;

            Time expected = new Time(12, 50);
            Time actual = (givenTime - givenMinutes);

            Assert.AreEqual<Time>(expected, actual,
                                  "There was a problem in Subtraction of times!");
        }
예제 #11
0
        public void TestSubtractionNormalValues()
        {
            Time givenTime = new Time(13, 10);
            int givenMinutes = 5;

            Time expected = new Time(13, 5);
            Time actual = (givenTime - givenMinutes);

            Assert.AreEqual<Time>(expected, actual,
                                  "There was a problem in Subtraction of times!");
        }
예제 #12
0
 public void TestTimeConstructorWithNegativHour()
 {
     int hours = -5;
     int minutes = 20;
     Time firstTime = new Time(hours, minutes);
 }
예제 #13
0
        public void TestDecrementWith59Minutes()
        {
            Time givenTime = new Time(14, 00);

            Time expected = new Time(13, 59);
            Time actual = --givenTime;

            Assert.AreEqual<Time>(expected, actual,
                                  "There was a problem in Decrement of time!");
        }
예제 #14
0
        public void TestAdditionIncreaseHour()
        {
            Time givenTime = new Time(13, 40);
            int givenMinutes = 30;

            Time expected = new Time(14, 10);
            Time actual = (givenTime + givenMinutes);

            Assert.AreEqual<Time>(expected, actual,
                                  "There was a problem in addition of times!");
        }
예제 #15
0
        public void TestToString()
        {
            int hours = 4;
            int minutes = 12;
            Time firstTime = new Time(hours, minutes);

            string expected = String.Format("{0:00}:{1:00}", hours, minutes); 
            string actual = firstTime.ToString();

            Assert.AreEqual<string>(expected, actual,
                                    "There was a problem in" +
                                    " creating a correct string of time object!");
        }
예제 #16
0
 public void TestGetHashCodeDifferentObjects()
 {
     int previousTimeHashCode = 0;
     int sameHashcodesCount = 0;
     for (int i = 0; i < 24; i++)
     {
         for (int j = 0; j < 60; j++)
         {
             Time currentTime = new Time(i, j);
             int currentTimeHashCode = currentTime.GetHashCode();
             if (previousTimeHashCode == currentTimeHashCode)
             {
                 sameHashcodesCount++;
             }
             previousTimeHashCode = currentTimeHashCode;
         }
     }
     if (sameHashcodesCount > 5)
     {
         Assert.Fail("Too much hashcodes are same!");
     }
 }
예제 #17
0
        public void TestGetHashCodeEqualObjects()
        {
            int hours = 4;
            int minutes = 12;
            Time firstTime = new Time(hours, minutes);
            object secondTime = new Time(hours, minutes);

            int firstTimeHashCode = firstTime.GetHashCode();
            int secondTimeHashCode = secondTime.GetHashCode();

            Assert.AreEqual<int>(firstTimeHashCode, secondTimeHashCode,
                                 "There was a problem calculating the hashcode of times.");
        }
예제 #18
0
 public void TestTimeConstructorWithNegativAmountMinutes()
 {
     int hours = 3;
     int minutes = -69;
     Time firstTime = new Time(hours, minutes);
 }
예제 #19
0
 public void TestTimeConstructorWithTooBigAmountMinutes()
 {
     int hours = 3;
     int minutes = 69;
     Time firstTime = new Time(hours, minutes);
 }
예제 #20
0
        public void TestDecrementNormalValuesSufixIncrement()
        {
            Time givenTime = new Time(13, 40);

            Time expected = new Time(13, 40);
            Time actual = givenTime--;

            Assert.AreEqual<Time>(expected, actual,
                                  "There was a problem in Decrement of time!");
        }
예제 #21
0
        public void TestAdditionWhen23Hour59MinutesPlus10Minutes()
        {
            Time givenTime = new Time(23, 59);
            int givenMinutes = 10;

            Time expected = new Time(0, 9);
            Time actual = (givenTime + givenMinutes);

            Assert.AreEqual<Time>(expected, actual,
                                  "There was a problem in addition of times!");
        }
예제 #22
0
        public void TestAdditionWithMoreThan60Minutes()
        {
            Time givenTime = new Time(13, 40);
            int givenMinutes = 120;

            Time expected = new Time(15, 40);
            Time actual = (givenTime + givenMinutes);

            Assert.AreEqual<Time>(expected, actual,
                                  "There was a problem in addition of times!");
        }
예제 #23
0
 public void TestTimeConstructorWithTooBigHour()
 {
     int hours = 25;
     int minutes = 20;
     Time firstTime = new Time(hours, minutes);
 }
예제 #24
0
        public void TestTimeConstructorAreMinutesCorrect()
        {
            int hours = 4;
            int minutes = 20;
            Time firstTime = new Time(hours, minutes);

            int expected = minutes;
            int actual = firstTime.Minutes;

            Assert.AreEqual<int>(actual, expected,
                                 "There was a problem in initialazing the minutes.");
        }
예제 #25
0
        public void TestAdditionWithNegativAmountOfMinutes()
        {
            Time givenTime = new Time(13, 40);
            int givenMinutes = -10;

            Time expected = new Time(13, 30);
            Time actual = (givenTime + givenMinutes);

            Assert.AreEqual<Time>(expected, actual,
                                  "There was a problem in addition of times!");
        }