Beispiel #1
0
        public void ensureChangingToEmptyDesignationThrowsException()
        {
            CommercialCatalogue commercialCatalogue = new CommercialCatalogue("reference", "designation");

            Action changeDesignation = () => commercialCatalogue.changeDesignation("");

            Assert.Throws <ArgumentException>(changeDesignation);
        }
Beispiel #2
0
        public void ensureChangingToValidDesignationChangesDesignation()
        {
            CommercialCatalogue commercialCatalogue = new CommercialCatalogue("reference", "designation");

            string newDesignation = "a different designation";

            commercialCatalogue.changeDesignation(newDesignation);

            Assert.Equal(newDesignation, commercialCatalogue.designation);
        }
Beispiel #3
0
        public void ensureChangingToValidDesignationDoesNotThrowException()
        {
            CommercialCatalogue commercialCatalogue = new CommercialCatalogue("reference", "designation");

            Action changeDesignation = () => commercialCatalogue.changeDesignation("a different designation");

            Exception exception = Record.Exception(changeDesignation);

            Assert.Null(exception);
        }
Beispiel #4
0
        public void ensureChangingToEmptyDesignationDoesNotChangeDesignation()
        {
            string designation = "designation";

            CommercialCatalogue commercialCatalogue = new CommercialCatalogue("reference", designation);

            try
            {
                commercialCatalogue.changeDesignation("");
            }
            catch (Exception) { }

            Assert.Equal(designation, commercialCatalogue.designation);
        }
Beispiel #5
0
        /// <summary>
        /// Updates an instance of CommercialCatalogue.
        /// </summary>
        /// <param name="updateCommercialCatalogueModelView">UpdateCommercialCatalogueModelView with the CommerciaCatalogue's identifier and data being updated.</param>
        /// <returns>An instance of GetCommercialCatalogueModelView representing the updated CommercialCatalogue.</returns>
        /// <exception cref="ResourceNotFoundException">Thrown when no CommercialCatalogue is found with a given identifier.</exception>
        /// <exception cref="System.ArgumentException">
        /// Thrown no update is made to the CommercialCatalogue or when the CommercialCatalogue could not be saved with the updated data.
        /// </exception>
        public GetCommercialCatalogueModelView updateCommercialCatalogue(UpdateCommercialCatalogueModelView updateCommercialCatalogueModelView)
        {
            CommercialCatalogueRepository catalogueRepository = PersistenceContext.repositories().createCommercialCatalogueRepository();

            CommercialCatalogue commercialCatalogue = catalogueRepository.find(updateCommercialCatalogueModelView.commercialCatalogueId);

            if (commercialCatalogue == null)
            {
                throw new ResourceNotFoundException(string.Format(CATALOGUE_NOT_FOUND_BY_ID, updateCommercialCatalogueModelView.commercialCatalogueId));
            }

            bool performedUpdates = false;

            if (updateCommercialCatalogueModelView.reference != null)
            {
                commercialCatalogue.changeReference(updateCommercialCatalogueModelView.reference);
                performedUpdates = true;
            }

            if (updateCommercialCatalogueModelView.designation != null)
            {
                commercialCatalogue.changeDesignation(updateCommercialCatalogueModelView.designation);
                performedUpdates = true;
            }

            //if no update was performed
            if (!performedUpdates)
            {
                throw new ArgumentException(NO_UPDATES_PERFORMED);
            }

            commercialCatalogue = catalogueRepository.update(commercialCatalogue);

            if (commercialCatalogue == null)
            {
                throw new ArgumentException(UNABLE_TO_SAVE_CATALOGUE);
            }

            return(CommercialCatalogueModelViewService.fromEntity(commercialCatalogue));
        }