public void AddSynchronizationStartPoint()
        {
            var owner = new Mock <IOwnScheduleDefinitions>();

            IEnumerable <IScheduleVariable> variables = null;
            var scheduleBuilder = new Mock <IBuildFixedSchedules>();
            {
                scheduleBuilder.Setup(s => s.AddSynchronizationStart(It.IsAny <IEnumerable <IScheduleVariable> >()))
                .Callback <IEnumerable <IScheduleVariable> >(s => variables = s)
                .Returns <IEnumerable <IScheduleVariable> >(s => new SynchronizationStartVertex(0, s));
            }

            var builder = new ScheduleDefinitionBuilder(owner.Object, scheduleBuilder.Object);

            var synchronizationVariables = new List <IScheduleVariable> {
                new Mock <IScheduleVariable>().Object
            };
            var vertex = builder.AddSynchronizationStart(synchronizationVariables);

            Assert.IsNotNull(vertex);
            Assert.That(variables, Is.EquivalentTo(synchronizationVariables));
        }
        public void AddSynchronizationStartPoint()
        {
            var owner = new Mock<IOwnScheduleDefinitions>();

            IEnumerable<IScheduleVariable> variables = null;
            var scheduleBuilder = new Mock<IBuildFixedSchedules>();
            {
                scheduleBuilder.Setup(s => s.AddSynchronizationStart(It.IsAny<IEnumerable<IScheduleVariable>>()))
                    .Callback<IEnumerable<IScheduleVariable>>(s => variables = s)
                    .Returns<IEnumerable<IScheduleVariable>>(s => new SynchronizationStartVertex(0, s));
            }

            var builder = new ScheduleDefinitionBuilder(owner.Object, scheduleBuilder.Object);

            var synchronizationVariables = new List<IScheduleVariable> { new Mock<IScheduleVariable>().Object };
            var vertex = builder.AddSynchronizationStart(synchronizationVariables);

            Assert.IsNotNull(vertex);
            Assert.That(variables, Is.EquivalentTo(synchronizationVariables));
        }