Пример #1
0
        public TObjectBase CreateCloneFor(TObjectBase objectToClone)
        {
            var entityType = _objectTypeResolver.TypeFor(objectToClone);

            _view.Caption         = Captions.ParameterIdentification.Clone;
            _view.NameDescription = Captions.CloneObjectBase(entityType, objectToClone.Name);
            _view.Icon            = ApplicationIcons.Clone;
            _renameObjectBaseDTO  = _renameObjectBaseDTOFactory.CreateFor(objectToClone);
            _renameObjectBaseDTO.AllowSameNameAsOriginalInDifferentCase = false;
            _renameObjectBaseDTO.Description = objectToClone.Description;
            _view.BindTo(_renameObjectBaseDTO);
            _view.Display();

            if (_view.Canceled)
            {
                return(null);
            }

            var clonedObject = Clone(objectToClone);

            clonedObject.Name        = _renameObjectBaseDTO.Name;
            clonedObject.Description = _renameObjectBaseDTO.Description;

            return(clonedObject);
        }
Пример #2
0
        public RenameObjectDTO CreateFor(IWithName objectBase)
        {
            //Entity might be a building block in disguise!
            var buildingBlock = objectBase as IPKSimBuildingBlock;

            if (buildingBlock != null)
            {
                return(createFor(buildingBlock));
            }

            var parameterAnalyzable = objectBase as IParameterAnalysable;

            if (parameterAnalyzable != null)
            {
                return(createFor(parameterAnalyzable));
            }

            var dto = new RenameObjectDTO(objectBase.Name);

            var entity = objectBase as IEntity;

            if (entity?.ParentContainer == null)
            {
                return(dto);
            }

            dto.ContainerType = _objectTypeResolver.TypeFor(entity.ParentContainer);
            dto.AddUsedNames(entity.ParentContainer.AllChildrenNames());

            return(dto);
        }
Пример #3
0
        private RenameObjectDTO createRenameInProjectDTO(IWithName withName, IEnumerable <IWithName> existingObjects)
        {
            var dto = new RenameObjectDTO(withName.Name)
            {
                ContainerType = PKSimConstants.ObjectTypes.Project
            };

            dto.AddUsedNames(existingObjects.AllNames());
            return(dto);
        }
 protected override void Context()
 {
     _view                   = A.Fake <IObjectBaseView>();
     _objectToRename         = A.Fake <IWithName>();
     _renameObjectDTOFactory = A.Fake <IRenameObjectDTOFactory>();
     _entityType             = "type";
     _entityName             = "tutu";
     _objectToRename.Name    = _entityName;
     _renameObjectDTO        = new RenameObjectDTO(_entityName);
     _objectTypeResolver     = A.Fake <IObjectTypeResolver>();
     A.CallTo(() => _objectTypeResolver.TypeFor(_objectToRename)).Returns(_entityType);
     A.CallTo(() => _renameObjectDTOFactory.CreateFor(_objectToRename)).Returns(_renameObjectDTO);
     sut = new RenameObjectPresenter(_view, _objectTypeResolver, _renameObjectDTOFactory);
 }
        protected override void Context()
        {
            _applicationController = A.Fake <IApplicationController>();
            _executionContext      = A.Fake <IExecutionContext>();
            _entity = A.Fake <IEntity>();
            _renameObjectFactory = A.Fake <IRenameObjectDTOFactory>();
            _renamePresenter     = A.Fake <IRenameObjectPresenter>();
            A.CallTo(() => _applicationController.Start <IRenameObjectPresenter>()).Returns(_renamePresenter);
            sut = new EntityTask(_applicationController, _executionContext, _renameObjectFactory);

            _renameDTO = new RenameObjectDTO(_entity.Name);
            _renameDTO.AddUsedNames(new[] { "A", "B" });
            A.CallTo(() => _renameObjectFactory.CreateFor(_entity)).Returns(_renameDTO);
            A.CallTo(() => _executionContext.TypeFor <IObjectBase>(_entity)).Returns(ENT_TYPE);
        }
Пример #6
0
        public RenameObjectDTO CreateFor(IWithName objectBase)
        {
            var dto = new RenameObjectDTO(objectBase.Name);

            var entity = objectBase as IEntity;

            if (entity == null || entity.ParentContainer == null)
            {
                return(dto);
            }

            dto.ContainerType = _objectTypeResolver.TypeFor(entity.ParentContainer);
            dto.AddUsedNames(entity.ParentContainer.AllChildrenNames());

            return(dto);
        }
Пример #7
0
 protected override void Context()
 {
     _entityType         = "tralala";
     _entityName         = "tutu";
     _objectTypeResolver = A.Fake <IObjectTypeResolver>();
     _buildingBlock      = A.Fake <IPKSimBuildingBlock>();
     A.CallTo(() => _buildingBlock.Rules).Returns(A.Fake <IBusinessRuleSet>());
     _buildingBlock.Name = _entityName;
     _view = A.Fake <IObjectBaseView>();
     A.CallTo(() => _objectTypeResolver.TypeFor(_buildingBlock)).Returns(_entityType);
     _buildingBlockDTO = new RenameObjectDTO(_entityName);
     _cloneObject      = A.Fake <IPKSimBuildingBlock>();
     _cloner           = A.Fake <ICloner>();
     A.CallTo(() => _cloner.Clone(_buildingBlock)).Returns(_cloneObject);
     _renameObjectBaseDTOFactory = A.Fake <IRenameObjectDTOFactory>();
     A.CallTo(() => _renameObjectBaseDTOFactory.CreateFor(_buildingBlock)).Returns(_buildingBlockDTO);
     sut = new CloneBuildingBlockPresenter(_view, _objectTypeResolver, _renameObjectBaseDTOFactory, _cloner);
 }
 protected override void Because()
 {
     _dto = sut.CreateFor(_entityToRename);
 }