Exemplo n.º 1
0
        public void AllTablesViewModel_GetNewSpecialQualities_Null_Parameter_Should_Pass()
        {
            // Arrange

            // Act
            var result = AllTablesViewModel.GetNewSpecialQualities(null);

            // Assert
            Assert.IsNull(result);
        }
Exemplo n.º 2
0
        /// <summary>
        ///
        /// Creates new Locations, Contacts, SpecialQualities, DailyHours.
        ///
        /// </summary>
        ///
        ///
        /// <param name="newLocation"> ViewModel with properties corresponding to the fields for each table </param>
        ///
        ///
        /// <returns>
        ///
        /// False: If newLocation is null or there was an error when attempting to insert
        /// True: It newLocation is successfully inserted into the Database
        ///
        /// </returns>
        public virtual bool Create(AllTablesViewModel newLocation)
        {
            if (newLocation == null) // Non-valid ViewModel Object
            {
                return(false);
            }

            // Ensures we don't end up with any duplicate LocationIds
            while (db.LocationIdNotUnique(newLocation.LocationId))
            {
                newLocation.LocationId = Guid.NewGuid().ToString();
            }



            Locations        location       = AllTablesViewModel.GetNewLocation(newLocation);
            Contacts         contact        = AllTablesViewModel.GetNewContact(newLocation);
            SpecialQualities specialQuality = AllTablesViewModel.GetNewSpecialQualities(newLocation);
            DailyHours       dailyHours     = AllTablesViewModel.GetNewDailyHours(newLocation);



            try
            {
                db.AlterRecordInfo(AlterRecordInfoEnum.Create, location);

                if (contact != null)
                {
                    db.AlterRecordInfo(AlterRecordInfoEnum.Create, contact);
                }


                if (specialQuality != null)
                {
                    db.AlterRecordInfo(AlterRecordInfoEnum.Create, specialQuality);
                }



                if (dailyHours != null)
                {
                    db.AlterRecordInfo(AlterRecordInfoEnum.Create, dailyHours);
                }


                db.SaveChanges();
            }
            catch (Exception)
            {
                return(false);
            }

            return(true);
        }
Exemplo n.º 3
0
        public void AllTablesViewModel_ConvertBooleanEnumToString_Parameter_No_Should_Pass()
        {
            // Arrange
            var mockData  = new LocationsDataMock();
            var location  = mockData.GetAllViewModelList()[0];
            var viewModel = new AllTablesViewModel();

            var viewModelProperties = typeof(AllTablesViewModel).GetProperties();
            var specialQualitiesPropertyNameList = new List <string>();

            foreach (var property in typeof(SpecialQualities).GetProperties())
            {
                if (property.Name.Equals("LocationId") ||
                    property.Name.Equals("AccessNotes") ||
                    property.Name.Equals("InstallationType") ||
                    property.Name.Equals("Location") ||
                    property.Name.Equals("CoinStar") ||
                    property.Name.Equals("TellerServices") ||
                    property.Name.Equals("_24hourExpressBox") ||
                    property.Name.Equals("PartnerCreditUnion") ||
                    property.Name.Equals("MemberConsultant") ||
                    property.Name.Equals("InstantDebitCardReplacement"))
                {
                    continue;
                }

                specialQualitiesPropertyNameList.Add(property.Name);
            }


            foreach (var property in viewModelProperties)
            {
                if (!specialQualitiesPropertyNameList.Contains(property.Name))
                {
                    continue;
                }

                property.SetValue(viewModel, BooleanEnum.N);
            }

            // Act
            var result = AllTablesViewModel.GetNewSpecialQualities(viewModel);

            // Assert
            foreach (var property in typeof(SpecialQualities).GetProperties())
            {
                if (specialQualitiesPropertyNameList.Contains(property.Name))
                {
                    Assert.AreEqual("N", property.GetValue(result));
                }
            }
        }
Exemplo n.º 4
0
        /// <summary>
        ///
        /// Updates the Location Record in the Database
        ///
        /// </summary>
        ///
        ///
        /// <param name="newLocation"> ViewModel Object containing the data for the fields of all the tables provided by the user </param>
        ///
        ///
        /// <returns>
        ///
        /// True: If successfully updates Location record in DB
        /// False: If newLocation is null, of if there was a Database Update error
        ///
        /// </returns>
        public virtual async Task <bool> EditPostAsync(AllTablesViewModel newLocation)
        {
            if (newLocation == null)
            {
                return(false);
            }



            // Get each table's Object
            Locations location = AllTablesViewModel.GetNewLocation(newLocation);

            location.Contact          = AllTablesViewModel.GetNewContact(newLocation);
            location.SpecialQualities = AllTablesViewModel.GetNewSpecialQualities(newLocation);
            location.DailyHours       = AllTablesViewModel.GetNewDailyHours(newLocation);


            bool result = false; // Value to be returned

            try
            {
                Locations response = await db.ReadOneRecordAsync(newLocation.LocationId).ConfigureAwait(true);

                if (response is null)  // Location does not exist
                {
                    return(false);
                }

                db._AddDeleteRow(response.Contact, location.Contact);
                db._AddDeleteRow(response.SpecialQualities, location.SpecialQualities);
                db._AddDeleteRow(response.DailyHours, location.DailyHours);


                response = location;

                result = db.AlterRecordInfo(AlterRecordInfoEnum.Update, response);

                return(result);
            }
            catch (Exception e)
            {
                errorMessage = e;
                return(false);
            }
        }
Exemplo n.º 5
0
        public void AllTablesViewModel_GetNewSpecialQualities_All_Properties_Are_Null_Parameter_Should_Pass()
        {
            // Arrange
            var viewModel = new AllTablesViewModel();

            viewModel.AcceptCash       = null;
            viewModel.AcceptDeposit    = null;
            viewModel.Access           = null;
            viewModel.AccessNotes      = null;
            viewModel.Address          = "362 Oxford Dr.";
            viewModel.Cashless         = null;
            viewModel.City             = "Starkville";
            viewModel.CoopLocationId   = "WA9820-174920573";
            viewModel.Country          = "US";
            viewModel.County           = "King County";
            viewModel.DriveThruOnly    = null;
            viewModel.EnvelopeRequired = null;
            viewModel.Fax                 = "8058451931";
            viewModel.HandicapAccess      = null;
            viewModel.Hours               = "24 HOURS ACCESS";
            viewModel.HoursDtfriClose     = "9";
            viewModel.HoursDtfriOpen      = "9";
            viewModel.HoursDtmonClose     = "9";
            viewModel.HoursDtmonOpen      = "9";
            viewModel.HoursDtsatClose     = "9";
            viewModel.HoursDtsatOpen      = "9";
            viewModel.HoursDtsunClose     = "9";
            viewModel.HoursDtsunOpen      = "9";
            viewModel.HoursDtthuClose     = "9";
            viewModel.HoursDtthuOpen      = "9";
            viewModel.HoursDttueClose     = "9";
            viewModel.HoursDttueOpen      = "9";
            viewModel.HoursDtwedClose     = "9";
            viewModel.HoursDtwedOpen      = "9";
            viewModel.HoursFriClose       = "9";
            viewModel.HoursFriOpen        = "9";
            viewModel.HoursMonClose       = "9";
            viewModel.HoursMonOpen        = "9";
            viewModel.HoursSatClose       = "9";
            viewModel.HoursSatOpen        = "9";
            viewModel.HoursSunClose       = "9";
            viewModel.HoursSunOpen        = "9";
            viewModel.HoursThuClose       = "9";
            viewModel.HoursThuOpen        = "9";
            viewModel.HoursTueClose       = "9";
            viewModel.HoursTueOpen        = "9";
            viewModel.HoursWedClose       = "9";
            viewModel.HoursWedOpen        = "9";
            viewModel.InstallationType    = null;
            viewModel.Latitude            = 13.3108M;
            viewModel.LimitedTransactions = null;
            viewModel.LocationId          = "11170401-4112-43c1-aa4e-f73370e1014a";
            viewModel.locations           = new List <Locations>();
            viewModel.LocationType        = LocationTypeEnum.A;
            viewModel.Longitude           = -132.8851M;
            viewModel.MilitaryIdRequired  = null;
            viewModel.Name                = "BECU";
            viewModel.OnMilitaryBase      = null;
            viewModel.OnPremise           = null;
            viewModel.Phone               = "4896771019";
            viewModel.PostalCode          = "39759";
            viewModel.RestrictedAccess    = null;
            viewModel.RetailOutlet        = "Northgate";
            viewModel.SelfServiceDevice   = null;
            viewModel.SelfServiceOnly     = null;
            viewModel.SoftDelete          = BooleanEnum.Y;
            viewModel.State               = StateEnum.MS;
            viewModel.Surcharge           = null;
            viewModel.TakeCoopData        = BooleanEnum.Y;
            viewModel.WebAddress          = null;

            // Act
            var result = AllTablesViewModel.GetNewSpecialQualities(viewModel);


            // Assert
            Assert.IsNull(result);
        }