Beispiel #1
0
        public void ShouldRetunForbidWhenRejectOnEditIsNotMadeByAdmin()
        {
            //Arrange
            var catalogId    = 1;
            var adminUserId  = 2;
            var catalogForDb = new Catalog(_catalogRepositoryMock.Object, _cardEventHandlerMock.Object);

            catalogForDb.Id = catalogId;
            var input = new CardDto
            {
                UserId      = 1,
                CardId      = 1,
                CardVersion = 2
            };
            var pendingCards = new List <PendingCard> {
                new PendingCard(input.CardId, input.CardVersion)
            };

            _mapperMock.Setup(v => v.Map <IList <PendingCard> >(It.IsAny <IEnumerable <CardDto> >())).Returns(pendingCards);
            _catalogRepositoryMock.Setup(v => v.GetCatalog(catalogId)).Returns(catalogForDb);
            _catalogRepositoryMock.Setup(v => v.GetPendingCards(It.Is <IList <PendingCard> >(c => c.First().Id == pendingCards.First().Id), catalogId)).Returns(pendingCards);
            _catalogRepositoryMock.Setup(v => v.GetAllAdminIds(catalogId)).Returns(new List <int> {
                adminUserId
            });

            var catalogController = new CatalogsController(_catalogRepositoryMock.Object, _cardEventHandlerMock.Object, _mapperMock.Object, _loggerMock.Object);

            //Act
            var response = catalogController.RejectEditedCard(new List <CardDto> {
                input
            }, catalogId);

            //Assert
            Assert.IsNotNull((response.Result as ForbidResult));
        }
Beispiel #2
0
        public void Show_ReturnsCorrectView_True()
        {
            CatalogsController controller = new CatalogsController();
            ActionResult       showView   = controller.Show(1);

            Assert.IsInstanceOfType(showView, typeof(ViewResult));
        }
Beispiel #3
0
        public void ShouldReturnNotFoundWhenRejectOnEditIsCalledForInvalidCatalog()
        {
            //Arrange
            var catalogId    = 1;
            var catalogForDb = new Catalog(_catalogRepositoryMock.Object, _cardEventHandlerMock.Object);

            catalogForDb.Id = catalogId;
            var input = new CardDto
            {
                UserId      = 1,
                CardId      = 1,
                CardVersion = 2
            };
            var pendingCards = new List <PendingCard> {
                new PendingCard(input.CardId, input.CardVersion)
            };

            _mapperMock.Setup(v => v.Map <IList <PendingCard> >(It.IsAny <IEnumerable <CardDto> >())).Returns(pendingCards);
            _catalogRepositoryMock.Setup(v => v.GetCatalog(catalogId)).Returns(catalogForDb);

            var catalogController = new CatalogsController(_catalogRepositoryMock.Object, _cardEventHandlerMock.Object, _mapperMock.Object, _loggerMock.Object);

            //Act
            var response = catalogController.RejectEditedCard(new List <CardDto> {
                input
            }, 2);


            //Assert
            Assert.AreEqual((int)HttpStatusCode.NotFound, (response.Result as NotFoundResult).StatusCode);
        }
Beispiel #4
0
        public void Delete_ReturnsCorrectView_True()
        {
            CatalogsController controller = new CatalogsController();
            ActionResult       showView   = controller.Delete(1);

            Assert.IsInstanceOfType(showView, typeof(RedirectToActionResult));
        }
Beispiel #5
0
        public void Index_HasCorrectModelType_CatalogList()
        {
            //Arrange
            CatalogsController controller = new CatalogsController();
            ViewResult         indexView  = controller.Index() as ViewResult;

            //Act
            var result = indexView.ViewData.Model;

            //Assert
            Assert.IsInstanceOfType(result, typeof(List <Catalog>));
        }
Beispiel #6
0
        public void ShouldReturnNotFoundOnInvalidCatalogToGetPendingCards()
        {
            //Arrange
            var catalogForDb = new Catalog(_catalogRepositoryMock.Object, _cardEventHandlerMock.Object);

            catalogForDb.Id = 1;
            _catalogRepositoryMock.Setup(v => v.GetCatalog(catalogForDb.Id)).Returns(catalogForDb);
            var catalogController = new CatalogsController(_catalogRepositoryMock.Object, _cardEventHandlerMock.Object, _mapperMock.Object, _loggerMock.Object);

            //Act
            var response = catalogController.GetApprovalPendingCards(2);

            //Assert
            Assert.AreEqual((int)HttpStatusCode.NotFound, (response.Result as NotFoundResult).StatusCode);
        }
Beispiel #7
0
        public void ShouldGetAllUnApprovedCardsWithSuccess()
        {
            //Arrange
            var catalogForDb = new Catalog(_catalogRepositoryMock.Object, _cardEventHandlerMock.Object);

            catalogForDb.Id = 1;
            _catalogRepositoryMock.Setup(v => v.GetCatalog(catalogForDb.Id)).Returns(catalogForDb);
            var catalogController = new CatalogsController(_catalogRepositoryMock.Object, _cardEventHandlerMock.Object, _mapperMock.Object, _loggerMock.Object);

            //Act
            var response = catalogController.GetApprovalPendingCards(catalogForDb.Id);

            //Assert
            Assert.AreEqual((int)HttpStatusCode.OK, (response.Result as OkObjectResult).StatusCode);
        }
Beispiel #8
0
        public async Task Details_ReturnsExpectedCatalog()
        {
            // Arrange
            serviceMoq.Setup(x => x.FindAsync(100)).ReturnsAsync(GetCatalog);
            CatalogsController controller = new CatalogsController(serviceMoq.Object);

            // Act
            var result = await controller.Details(100);

            var viewResult = result as ViewResult;
            var model      = viewResult.Model as Catalog;

            // Assert
            Assert.NotNull(viewResult);
            Assert.NotNull(model);
            Assert.Equal(100, model.Id);
        }
Beispiel #9
0
        public async Task Index_ReturnsExpectedCatalogs()
        {
            // Arrange
            serviceMoq.Setup(x => x.GetCatalogsAsync()).ReturnsAsync(GetTestCatalogs);
            CatalogsController controller = new CatalogsController(serviceMoq.Object);
            var moqCatalogsCount          = GetTestCatalogs().Count;

            // Act
            var result = await controller.Index();

            var viewResult = result as ViewResult;
            var model      = viewResult.Model as List <Catalog>;

            // Assert
            Assert.NotNull(viewResult);
            Assert.NotNull(model);
            Assert.Equal(model.Count, moqCatalogsCount);
        }
Beispiel #10
0
        public virtual void TestGetTenantID_Successfully()
        {
            var controller = new CatalogsController();

            Mocker.MockControllerContext(controller, LOCAL_SERVER);

            var host = controller.Request.Url.Host;

            Console.WriteLine(host);
            var result = controller.GetTenantID();

            Console.WriteLine(result);

            //string url = System.Web.HttpContext.Current.Request.Url.Host; // expecting format nitda.procureease.ng
            string[] hostUrlParts = host.Split('.');// extract sub domain from URL
            string   subDomain    = hostUrlParts[0];

            Console.WriteLine(subDomain);

            Assert.IsNotNull(result);
        }
Beispiel #11
0
        public void ShouldCreateCatalogWithCreatedStatus()
        {
            //Arrange
            var input = new CatalogCreationDto();

            input.CatalogName = "Catalog1";
            input.UserId      = 1;
            var catalogForDb = new Catalog(_catalogRepositoryMock.Object, _cardEventHandlerMock.Object);

            catalogForDb.Id = 1;
            _catalogRepositoryMock.Setup(v => v.AddCatalog(It.Is <Catalog>(v => v.Name == input.CatalogName))).Returns(catalogForDb);

            var catalogController = new CatalogsController(_catalogRepositoryMock.Object, _cardEventHandlerMock.Object, _mapperMock.Object, _loggerMock.Object);


            //Act
            var response = catalogController.CreateCatalog(input);

            //Assert
            Assert.AreEqual((int)HttpStatusCode.Created, (response.Result  as CreatedAtRouteResult).StatusCode);
        }
Beispiel #12
0
        public override object GetData(int actionType)
        {
            //return base.GetData(actionType);
            ResponseObj = new TransObj();
            StringBuilder sql;
            ExcelLoader   exLoader;
            string        path;
            int           cat, i = 0;

            try
            {
                switch ((ActionType)actionType)
                {
                case ActionType.GetCatalog:
                    #region GetCatalog
                    GeneralController catController = new CatalogsController();
                    //cat = int.Parse(RequestObj.TransParms.Where(p => p.Key == "cat").FirstOrDefault().Value);
                    catController.RequestObj = this.RequestObj;
                    return(catController.GetData((int)CatalogsController.ActionType.GetCatalog));

                    #endregion
                case ActionType.GetWorksheets:
                    #region GetWorksheets
                    path     = JsonConvert.DeserializeObject <string>(RequestObj.TransParms.Where(p => p.Key == "fName").FirstOrDefault().Value);
                    exLoader = new ExcelLoader();
                    return(exLoader.LoadWorkSheets(path));

                    #endregion
                case ActionType.ImportDespachos:
                    #region ImportDespachos
                    path = JsonConvert.DeserializeObject <string>(RequestObj.TransParms.Where(p => p.Key == "fName").FirstOrDefault().Value);
                    string workSheet = JsonConvert.DeserializeObject <string>(RequestObj.TransParms.Where(p => p.Key == "workSheet").FirstOrDefault().Value);
                    exLoader      = new ExcelLoader();
                    DtDespachosIn = exLoader.LoadFile(path, workSheet);
                    return(true);

                    #endregion
                case ActionType.LoadRemitente:
                    #region LoadRemitente
                    var clts = Entities.Database.SqlQuery <GeneralCat>(SQL_GET_CLIENTES).ToList();
                    clts.Insert(0, new GeneralCat {
                        catId = -1, catVal = "Seleccione..."
                    });

                    return(clts);

                    #endregion
                case ActionType.LoadCitiesFullName:
                    #region LoadCitiesFullName
                    CitiesFullNames = Entities.Database.SqlQuery <GeneralCat>(SQL_CIUDADES).ToList();
                    #endregion
                    break;

                case ActionType.LoadProveedores:
                    #region LoadProveedores
                    Proveedores = Entities.Database.SqlQuery <GeneralCat>(string.Format(SQL_PROVEEDORES, ClienteID)).ToList();
                    #endregion
                    break;

                case ActionType.IsInDespacho:
                    #region IsInDespacho
                    ConsecCliente = Entities.Database.SqlQuery <string>(SQL_IS_IN_DESPACHO, ClienteID).ToList();
                    #endregion
                    break;

                case ActionType.InsertDespachos:
                    #region InsertDespachos
                    //int cId = JsonConvert.DeserializeObject<int>(RequestObj.TransParms.Where(p => p.Key == "cId").FirstOrDefault().Value);
                    DataRow r = null;
                    sql = new StringBuilder();
                    string s = "", conCliente = "";
                    try
                    {
                        for (i = 0; i < DtDespachosOut.Rows.Count; i++)
                        {
                            r = DtDespachosOut.Rows[i];
                            if (r[COL_CONSECUTIVO_CLIENTE].ToString().Trim().Length == 0)
                            {
                                continue;
                            }
                            conCliente = r[COL_CONSECUTIVO_CLIENTE].ToString();
                            var e = Entities.LGC_DESPACHO.
                                    Where(d => d.CONSECUTIVO_CLIENTE == conCliente)
                                    .FirstOrDefault();
                            if (e != null)
                            {
                                sql.Clear(); throw new GeneralControllerException(string.Format("El registro en la fila {0} ya existe.(Consec:{1})", i + 1, conCliente));
                            }
                            s = string.Format(SQL_IN_DESPACHO,
                                              ClienteID,
                                              EntUtils.GetStrFromDtRow(r, GV_COL_CONSECUTIVO),
                                              EntUtils.GetStrFromDtRow(r, GV_COL_CONSECUTVO_AVMK),
                                              EntUtils.GetStrFromDtRow(r, GV_COL_CONSECUTIVO_CLIENTE),
                                              EntUtils.GetDTFromDtRow(r, GV_COL_FECHA_ENVIO_ARCHIVO, false).Value.ToString("dd/MM/yyyy"),
                                              "",
                                              "",
                                              EntUtils.GetDTFromDtRow(r, GV_COL_FECHA_DE_REDENCION, false).Value.ToString("dd/MM/yyyy"),
                                              EntUtils.GetStrFromDtRow(r, GV_COL_CEDULA),
                                              EntUtils.GetStrFromDtRow(r, GV_COL_CLIENTE),
                                              EntUtils.GetStrFromDtRow(r, GV_COL_ENTREGAR_A),
                                              EntUtils.GetStrFromDtRow(r, GV_COL_DIRECCION),
                                              EntUtils.GetStrFromDtRow(r, GV_COL_CIUDAD),
                                              EntUtils.GetIntFromDtRow(r, GV_COL_DEPARTAMENTO),
                                              EntUtils.GetStrFromDtRow(r, GV_COL_TELEFONO),
                                              EntUtils.GetStrFromDtRow(r, GV_COL_CELULAR),
                                              EntUtils.GetStrFromDtRow(r, GV_COL_CORREO_ELECTRONICO),
                                              EntUtils.GetStrFromDtRow(r, GV_COL_CODIGO_PREMIO),
                                              EntUtils.GetStrFromDtRow(r, GV_COL_PREMIO),
                                              EntUtils.GetStrFromDtRow(r, GV_COL_ESPECIFICACIONES),
                                              EntUtils.GetIntFromDtRow(r, GV_COL_PROVEEDOR),
                                              EntUtils.GetIntFromDtRow(r, GV_COL_CANTIDAD),
                                              EntUtils.GetIntFromDtRow(r, GV_COL_VALOR),
                                              ClienteID);
                            sql.Append(s);
                        }
                        DataBaseUtils dbUtils = new DataBaseUtils();
                        return(dbUtils.RunScriptFromStngBldr(sql, Entities));
                    }
                    catch (Exception ex)
                    {
                        string rData = "";
                        if (r != null)
                        {
                            rData = string.Join("|", r.ItemArray);
                        }
                        throw new Exception(string.Format("Error en fila {0}. [{1}] ", i + 1, rData) + ex.Message);
                    }

                    #endregion
                default:
                    break;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(ResponseObj);
        }