private SPItemEventProperties CreateMockSpItemEventProperties(string title, string code, DateTime enrollmentDate, DateTime startDate, DateTime endDate, float courseCost)
        {
            //Create any mock objects we'll need here
            SPItemEventProperties spItemEventProperties = RecorderManager.CreateMockedObject <SPItemEventProperties>();
            SPWeb web = RecorderManager.CreateMockedObject <SPWeb>();
            SPItemEventDataCollection afterProperties = RecorderManager.CreateMockedObject <SPItemEventDataCollection>();

            //record our main expectations
            using (RecordExpectations recorder = RecorderManager.StartRecording())
            {
                object obj = spItemEventProperties.AfterProperties;
                recorder.Return(afterProperties).RepeatAlways();

                afterProperties["Title"] = string.Empty;
                afterProperties["TrainingCourseCode"] = string.Empty;

                spItemEventProperties.OpenWeb();
                recorder.Return(web);

                obj = spItemEventProperties.ListItem[new Guid(Fields.TrainingCourseCode)];
                recorder.Return("12345678").RepeatAlways();
            }

            //Record our expectations for our AfterProperties collection
            MockHelper.RecordSPItemEventDataCollection(afterProperties, "Title", title);
            MockHelper.RecordSPItemEventDataCollection(afterProperties, "TrainingCourseCode", code);
            MockHelper.RecordSPItemEventDataCollection(afterProperties, "TrainingCourseEnrollmentDate", enrollmentDate);
            MockHelper.RecordSPItemEventDataCollection(afterProperties, "TrainingCourseStartDate", startDate);
            MockHelper.RecordSPItemEventDataCollection(afterProperties, "TrainingCourseEndDate", endDate);
            MockHelper.RecordSPItemEventDataCollection(afterProperties, "TrainingCourseCost", courseCost);

            return(spItemEventProperties);
        }
예제 #2
0
        public void GetCalendarDate_FromCache()
        {
            CalendarDate cDate = new CalendarDate();
            cDate.Date = DateTime.Now;
            cDate.WorkRate = TimeSpan.FromHours(6);

            using (RecordExpectations recorder = new RecordExpectations())
            {
                Cache.Contains(null);
                recorder.Return(true);

                Cache.InsertDate(null);
                recorder.Return(DateTime.Now);

                Cache.GetObject(null);
                recorder.Return(cDate);

                Cache.Add(null, null);
            }

            ICalendarDate icDate = UlterSystems.PortalLib.BusinessObjects.Calendar.GetCalendarDate(DateTime.Now);
            Assert.AreSame(cDate, icDate);
            Assert.AreEqual(DateTime.Today, icDate.Date);
            Assert.AreEqual(TimeSpan.FromHours(6), icDate.WorkRate);
            Assert.IsFalse(icDate.IsHoliday);
        }
        private SPWeb GetMockSPWeb(bool userFound)
        {
            var web  = RecorderManager.CreateMockedObject <SPWeb>();
            var user = RecorderManager.CreateMockedObject <SPUser>();

            if (!userFound)
            {
                user = null;
            }

            using (RecordExpectations recorder = RecorderManager.StartRecording())
            {
                SPUser spUser = web.SiteUsers.GetByID(12345);
                recorder.Return(user);
            }

            if (user != null)
            {
                using (RecordExpectations recorder = RecorderManager.StartRecording())
                {
                    string userName = user.Name;
                    recorder.Return("MockUserName").RepeatAlways();
                    string userEmail = user.LoginName;
                    recorder.Return("*****@*****.**").RepeatAlways();
                }
            }
            return(web);
        }
예제 #4
0
 /// <summary>
 /// RecordSPItemEventDataCollection mocks the Get behavior of the
 /// SPItemEventDataCollection collection.
 /// </summary>
 /// <param name="properties">A mocked instance of an SPItemEventDataCollection object</param>
 /// <param name="fieldName">the name of the SPField that will be used as the indexer</param>
 /// <param name="value">the mocked value to return</param>
 public static void RecordSPItemEventDataCollection(SPItemEventDataCollection properties, string fieldName, object value)
 {
     using (RecordExpectations recorder = RecorderManager.StartRecording())
     {
         object val = properties[fieldName];
         recorder.Return(value).RepeatAlways().WhenArgumentsMatch();
     }
 }
예제 #5
0
        public void GetCalendarDate_NotFromCache()
        {
            using (RecordExpectations recorder = new RecordExpectations())
            {
                Cache.Contains(null);
                recorder.Return(false);

                DBManager.GetCalendarDate(DateTime.Today);
                recorder.Return(null);

                Cache.Add(null, null);
            }

            ICalendarDate icDate = UlterSystems.PortalLib.BusinessObjects.Calendar.GetCalendarDate(new DateTime(2007, 9, 12));
            Assert.AreEqual(new DateTime(2007, 9, 12), icDate.Date);
            Assert.AreEqual(TimeSpan.FromHours(8), icDate.WorkRate);
            Assert.IsFalse(icDate.IsHoliday);
        }
예제 #6
0
 /// <summary>
 /// The RecordFieldInternalName method will mock the Get of the InternalName property
 /// of an SPField
 /// </summary>
 /// <param name="list">a mocked SPList object</param>
 /// <param name="id">the unique identifier of the SPField</param>
 /// <param name="internalName">the mocked InternalName</param>
 internal static void RecordFieldInternalName(SPList list, Guid id, string internalName)
 {
     using (RecordExpectations recorder = RecorderManager.StartRecording())
     {
         SPField field = list.Fields[id];
         recorder.CheckArguments();
         string fieldName = field.InternalName;
         recorder.Return(internalName).RepeatAlways();
     }
 }
예제 #7
0
        public void GetWorkRate()
        {
            CalendarDate cDate = new CalendarDate();
            cDate.WorkRate = TimeSpan.FromHours(3);

            using (RecordExpectations recorder = new RecordExpectations())
            {
                UlterSystems.PortalLib.BusinessObjects.Calendar.GetCalendarDate(DateTime.Now);
                recorder.Return(cDate);
            }

            Assert.AreEqual(TimeSpan.FromHours(3), UlterSystems.PortalLib.BusinessObjects.Calendar.GetWorkRate(DateTime.Now));
        }
예제 #8
0
        public void IsHoliday_True()
        {
            CalendarDate cDate = new CalendarDate();
            cDate.WorkRate = TimeSpan.Zero;

            using (RecordExpectations recorder = new RecordExpectations())
            {
                UlterSystems.PortalLib.BusinessObjects.Calendar.GetCalendarDate(DateTime.Now);
                recorder.Return(cDate);
            }

            Assert.IsTrue(UlterSystems.PortalLib.BusinessObjects.Calendar.IsHoliday(DateTime.Now));
        }