/*
         * public ArrayList GetPerformanceParameters()
         * {
         *      String sqlStr = "select pp.id, pp.sport_id, pp.name_id, ppn.name, pp.custom_name, pp.type_id, ppt.name from perf_para pp join perf_para_name ppn on pp.name_id = ppn.id join perf_para_type ppt on pp.type_id = ppt.id";
         *      MySqlCommand cmd = new MySqlCommand(sqlStr, conn);
         *      MySqlDataReader sqlReader = cmd.ExecuteReader();
         *      ArrayList performanceParameters = new ArrayList();
         *      PerformanceParameter pp = null;
         *
         *      while (sqlReader.Read())
         *      {
         *              pp = new PerformanceParameter();
         *              pp.id = sqlReader.GetInt32(0);
         *              pp.sportId = sqlReader.GetInt32(1);
         *
         *              pp.perfParaName = new PerformanceParameterName();
         *              pp.perfParaName.id = sqlReader.GetInt32(2);
         *              pp.perfParaName.name = sqlReader.GetString(3);
         *              pp.customName = sqlReader.GetString(4);
         *
         *              pp.perfParaType = new PerformanceParameterType();
         *              pp.perfParaType.id = sqlReader.GetInt32(5);
         *              pp.perfParaType.name = sqlReader.GetString(6);
         *
         *              performanceParameters.Add(pp);
         *      }
         *
         *      sqlReader.Close();
         *      return performanceParameters;
         * }
         */

        public ArrayList GetPerformanceParameters(long sportsId)
        {
            String               sqlStr                = "select pp.id, pp.sport_id, pp.name_id, ppn.name, pp.custom_name, pp.group_id, ppt.name from perf_para pp join perf_para_name ppn on pp.name_id = ppn.id join (SELECT group_id, GROUP_CONCAT(name separator ', ') as name FROM perf_para_type GROUP BY group_id) as ppt on pp.group_id = ppt.group_id where pp.sport_id = " + sportsId;
            MySqlCommand         cmd                   = new MySqlCommand(sqlStr, conn);
            MySqlDataReader      sqlReader             = cmd.ExecuteReader();
            ArrayList            performanceParameters = new ArrayList();
            PerformanceParameter pp = null;

            while (sqlReader.Read())
            {
                pp         = new PerformanceParameter();
                pp.id      = sqlReader.GetInt32(0);
                pp.sportId = sqlReader.GetInt32(1);

                pp.perfParaName      = new PerformanceParameterName();
                pp.perfParaName.id   = sqlReader.GetInt32(2);
                pp.perfParaName.name = sqlReader.GetString(3);
                pp.customName        = sqlReader.GetString(4);

                pp.perfParaTypeGroup      = new PerformanceParameterTypeGroup();
                pp.perfParaTypeGroup.id   = sqlReader.GetInt32(5);
                pp.perfParaTypeGroup.name = sqlReader.GetString(6);

                performanceParameters.Add(pp);
            }

            sqlReader.Close();
            return(performanceParameters);
        }
        public PerformanceParameter GetPerformanceParameter(long performanceParameterId)
        {
            String               sqlStr    = "select pp.id, pp.sport_id, pp.name_id, ppn.name, pp.custom_name, pp.group_id, GROUP_CONCAT(ppt.name separator ', ') from perf_para pp join perf_para_name ppn on pp.name_id = ppn.id join perf_para_type ppt on pp.group_id = ppt.group_id WHERE pp.id = " + performanceParameterId;
            MySqlCommand         cmd       = new MySqlCommand(sqlStr, conn);
            MySqlDataReader      sqlReader = cmd.ExecuteReader();
            PerformanceParameter pp        = null;

            if (sqlReader.Read())
            {
                pp         = new PerformanceParameter();
                pp.id      = sqlReader.GetInt32(0);
                pp.sportId = sqlReader.GetInt32(1);

                pp.perfParaName      = new PerformanceParameterName();
                pp.perfParaName.id   = sqlReader.GetInt32(2);
                pp.perfParaName.name = sqlReader.GetString(3);
                pp.customName        = sqlReader.GetString(4);

                pp.perfParaTypeGroup      = new PerformanceParameterTypeGroup();
                pp.perfParaTypeGroup.id   = sqlReader.GetInt32(5);
                pp.perfParaTypeGroup.name = sqlReader.GetString(6);
            }

            sqlReader.Close();
            return(pp);
        }
        public void Post_Valid_Test()
        {
            // Arrange
            PerformanceParameter performanceParameterObjAsInput = new PerformanceParameter();

            performanceParameterObjAsInput.sportId                = 1;
            performanceParameterObjAsInput.perfParaName           = new PerformanceParameterName();
            performanceParameterObjAsInput.perfParaName.id        = 1;
            performanceParameterObjAsInput.perfParaName.name      = "Parameter 1";
            performanceParameterObjAsInput.perfParaTypeGroup      = new PerformanceParameterTypeGroup();
            performanceParameterObjAsInput.perfParaTypeGroup.id   = 1;
            performanceParameterObjAsInput.perfParaTypeGroup.name = "Type 1";
            performanceParameterObjAsInput.customName             = "Custom 1";

            var mockRepository = new Mock <IPerformanceParameterRepository>();

            mockRepository.Setup(x => x.InsertPerformanceParameter(performanceParameterObjAsInput))
            .Returns(1);

            var controller = new PerformanceParameterController(mockRepository.Object);

            controller.Request       = new HttpRequestMessage();
            controller.Configuration = new HttpConfiguration();

            // Act
            HttpResponseMessage response = controller.Post(performanceParameterObjAsInput);

            // Assert
            string responseJSONStr = response.Content.ReadAsStringAsync().Result;
            string responseStr     = Helper.Deserialize <string>(responseJSONStr);

            Assert.IsNotNull(response);
            Assert.AreEqual(response.StatusCode, HttpStatusCode.OK);
            Assert.AreEqual(responseStr, "PerformanceParameter added successfully.");
        }
        public void Repository_Insert_Get_All_Delete_PerformanceParameter_Test()
        {
            try
            {
                // Arrange
                PerformanceParameterRepository performanceParameterRepository = new PerformanceParameterRepository();
                PerformanceParameter           performanceParameterToSave     = new PerformanceParameter();
                performanceParameterToSave.sportId              = 1;
                performanceParameterToSave.perfParaName         = new PerformanceParameterName();
                performanceParameterToSave.perfParaName.id      = 1;
                performanceParameterToSave.customName           = "custom";
                performanceParameterToSave.perfParaTypeGroup    = new PerformanceParameterTypeGroup();
                performanceParameterToSave.perfParaTypeGroup.id = 1;

                // Act
                long      performanceParameterId      = performanceParameterRepository.InsertPerformanceParameter(performanceParameterToSave);
                ArrayList performanceParametersFromDb = performanceParameterRepository.GetPerformanceParameters(performanceParameterToSave.sportId);

                // Assert
                Assert.IsTrue(performanceParametersFromDb.Count > 0);
                Assert.AreEqual(((PerformanceParameter)performanceParametersFromDb[1]).sportId, performanceParameterToSave.sportId);
                Assert.AreEqual(((PerformanceParameter)performanceParametersFromDb[1]).perfParaName.id, performanceParameterToSave.perfParaName.id);
                Assert.AreEqual(((PerformanceParameter)performanceParametersFromDb[1]).customName, performanceParameterToSave.customName);
                Assert.AreEqual(((PerformanceParameter)performanceParametersFromDb[1]).perfParaTypeGroup.id, performanceParameterToSave.perfParaTypeGroup.id);

                // Cleanup
                bool isDeleted = performanceParameterRepository.DeletePerformanceParameter(performanceParameterId);
                Assert.IsTrue(isDeleted);
            }
            catch (Exception ex)
            {
                throw new AssertFailedException("Unable to add new performance parameter.");
            }
        }
        public long InsertPerformanceParameter(PerformanceParameter performanceParameter)
        {
            String       sqlStr = "INSERT INTO perf_para (sport_id, name_id, custom_name, group_id) VALUES (" + performanceParameter.sportId + ", " + performanceParameter.perfParaName.id + ", '" + performanceParameter.customName + "', " + performanceParameter.perfParaTypeGroup.id + ")";
            MySqlCommand cmd    = new MySqlCommand(sqlStr, conn);

            try
            {
                cmd.ExecuteNonQuery();
                return(cmd.LastInsertedId);
            }
            catch (Exception)
            {
                return(-1);
            }
        }
Exemplo n.º 6
0
        public void PerformanceParameter_Initialization_Test()
        {
            try
            {
                // Arrange and Act
                PerformanceParameter performanceParameter = new PerformanceParameter();

                // Assert
                Assert.IsNotNull(performanceParameter);
            }
            catch (Exception)
            {
                throw new AssertFailedException("PerformanceParameter initialization failed.");
            }
        }
        public void Get_All_PerformanceParameters_Test()
        {
            // Arrange
            ArrayList performanceParametersObjsAsOuptut = new ArrayList();

            PerformanceParameter performanceParameterObj1AsOutput = new PerformanceParameter();

            performanceParameterObj1AsOutput.sportId                = 1;
            performanceParameterObj1AsOutput.perfParaName           = new PerformanceParameterName();
            performanceParameterObj1AsOutput.perfParaName.id        = 1;
            performanceParameterObj1AsOutput.perfParaName.name      = "Parameter 1";
            performanceParameterObj1AsOutput.perfParaTypeGroup      = new PerformanceParameterTypeGroup();
            performanceParameterObj1AsOutput.perfParaTypeGroup.id   = 1;
            performanceParameterObj1AsOutput.perfParaTypeGroup.name = "Type 1";
            performanceParameterObj1AsOutput.customName             = "Custom 1";

            PerformanceParameter performanceParameterObj2AsOutput = new PerformanceParameter();

            performanceParameterObj2AsOutput.sportId                = 1;
            performanceParameterObj2AsOutput.perfParaName           = new PerformanceParameterName();
            performanceParameterObj2AsOutput.perfParaName.id        = 1;
            performanceParameterObj2AsOutput.perfParaName.name      = "Parameter 1";
            performanceParameterObj2AsOutput.perfParaTypeGroup      = new PerformanceParameterTypeGroup();
            performanceParameterObj2AsOutput.perfParaTypeGroup.id   = 1;
            performanceParameterObj2AsOutput.perfParaTypeGroup.name = "Type 1";
            performanceParameterObj2AsOutput.customName             = "Custom 1";

            performanceParametersObjsAsOuptut.Add(performanceParameterObj1AsOutput);
            performanceParametersObjsAsOuptut.Add(performanceParameterObj2AsOutput);

            var mockRepository = new Mock <IPerformanceParameterRepository>();

            mockRepository.Setup(x => x.GetPerformanceParameters(1))
            .Returns(performanceParametersObjsAsOuptut);

            var controller = new PerformanceParameterController(mockRepository.Object);

            controller.Request       = new HttpRequestMessage();
            controller.Configuration = new HttpConfiguration();

            // Act
            ArrayList performanceParametersObj = controller.Get(1);

            // Assert
            Assert.AreEqual <int>(performanceParametersObj.Count, performanceParametersObjsAsOuptut.Count);
            Assert.AreEqual(performanceParametersObj[0], performanceParametersObjsAsOuptut[0]);
            Assert.AreEqual(performanceParametersObj[1], performanceParametersObjsAsOuptut[1]);
        }
        // PUT: api/PerformanceParameter/5
        public HttpResponseMessage Put([FromBody] PerformanceParameter performanceParameter)
        {
            HttpResponseMessage response;

            if (performanceParameter == null)
            {
                response = Request.CreateResponse(HttpStatusCode.NoContent, "Invalid JSON Passed.");
                return(response);
            }

            if (performanceParameter.id <= 0)
            {
                response = Request.CreateResponse(HttpStatusCode.NoContent, "Invalid Id Passed.");
                return(response);
            }

            if (performanceParameter.sportId <= 0)
            {
                response = Request.CreateResponse(HttpStatusCode.PartialContent, "Invalid Sport Id passed.");
                return(response);
            }

            if (performanceParameter.perfParaName.id <= 0)
            {
                response = Request.CreateResponse(HttpStatusCode.PartialContent, "Invalid Name Id passed.");
                return(response);
            }

            if (performanceParameter.perfParaTypeGroup.id <= 0)
            {
                response = Request.CreateResponse(HttpStatusCode.PartialContent, "Invalid Type Id passed.");
                return(response);
            }

            bool isUpdated = _iPerformanceParameterRepository.UpdatePerformanceParameter(performanceParameter);

            if (isUpdated)
            {
                response = Request.CreateResponse(HttpStatusCode.OK, "Updated PerformanceParameter successfully.");
            }
            else
            {
                response = Request.CreateResponse(HttpStatusCode.Conflict, "Invalid PerformanceParameter id passed.");
            }

            return(response);
        }
Exemplo n.º 9
0
        public override bool Equals(object obj)
        {
            if (obj == null)
            {
                return(false);
            }

            PerformanceParameter s = obj as PerformanceParameter;

            if ((System.Object)s == null)
            {
                return(false);
            }

            if (this.id != s.id)
            {
                return(false);
            }
            if (this.sportId != s.sportId)
            {
                return(false);
            }
            if (this.perfParaName.id != s.perfParaName.id)
            {
                return(false);
            }
            if (this.perfParaName.name != s.perfParaName.name)
            {
                return(false);
            }
            if (this.perfParaTypeGroup.id != s.perfParaTypeGroup.id)
            {
                return(false);
            }
            if (this.perfParaTypeGroup.name != s.perfParaTypeGroup.name)
            {
                return(false);
            }
            if (this.customName != s.customName)
            {
                return(false);
            }

            return(true);
        }
        public void Repository_Insert_Update_Delete_PerformanceParameter_Test()
        {
            try
            {
                // Arrange
                PerformanceParameterRepository performanceParameterRepository = new PerformanceParameterRepository();
                PerformanceParameter           performanceParameterToSave     = new PerformanceParameter();
                performanceParameterToSave.sportId              = 1;
                performanceParameterToSave.perfParaName         = new PerformanceParameterName();
                performanceParameterToSave.perfParaName.id      = 1;
                performanceParameterToSave.customName           = "custom";
                performanceParameterToSave.perfParaTypeGroup    = new PerformanceParameterTypeGroup();
                performanceParameterToSave.perfParaTypeGroup.id = 1;

                PerformanceParameter performanceParameterToUpdate = new PerformanceParameter();
                performanceParameterToUpdate.sportId              = 1;
                performanceParameterToUpdate.perfParaName         = new PerformanceParameterName();
                performanceParameterToUpdate.perfParaName.id      = 2;
                performanceParameterToUpdate.customName           = "custom 2";
                performanceParameterToUpdate.perfParaTypeGroup    = new PerformanceParameterTypeGroup();
                performanceParameterToUpdate.perfParaTypeGroup.id = 5;

                // Act
                long performanceParameterId = performanceParameterRepository.InsertPerformanceParameter(performanceParameterToSave);
                performanceParameterToUpdate.id = performanceParameterId;
                bool isUpdated = performanceParameterRepository.UpdatePerformanceParameter(performanceParameterToUpdate);
                PerformanceParameter performanceParameterFromDb = performanceParameterRepository.GetPerformanceParameter(performanceParameterId);

                // Assert
                Assert.IsTrue(isUpdated);
                Assert.AreEqual(performanceParameterFromDb.sportId, performanceParameterToUpdate.sportId);
                Assert.AreEqual(performanceParameterFromDb.perfParaName.id, performanceParameterToUpdate.perfParaName.id);
                Assert.AreEqual(performanceParameterFromDb.customName, performanceParameterToUpdate.customName);
                Assert.AreEqual(performanceParameterFromDb.perfParaTypeGroup.id, performanceParameterToUpdate.perfParaTypeGroup.id);

                // Cleanup
                bool isDeleted = performanceParameterRepository.DeletePerformanceParameter(performanceParameterId);
                Assert.IsTrue(isDeleted);
            }
            catch (Exception)
            {
                throw new AssertFailedException("Unable to add new performance parameter.");
            }
        }
        // POST: api/PerformanceParameter
        public HttpResponseMessage Post([FromBody] PerformanceParameter performanceParameter)
        {
            HttpResponseMessage response;

            if (performanceParameter == null)
            {
                response = Request.CreateResponse(HttpStatusCode.NoContent, "Invalid JSON Passed.");
                return(response);
            }

            if (performanceParameter.sportId <= 0)
            {
                response = Request.CreateResponse(HttpStatusCode.PartialContent, "Invalid Sport Id passed.");
                return(response);
            }

            if (performanceParameter.perfParaName.id <= 0)
            {
                response = Request.CreateResponse(HttpStatusCode.PartialContent, "Invalid Name Id passed.");
                return(response);
            }

            if (performanceParameter.perfParaTypeGroup.id <= 0)
            {
                response = Request.CreateResponse(HttpStatusCode.PartialContent, "Invalid Type Id passed.");
                return(response);
            }

            long performanceParameterId = _iPerformanceParameterRepository.InsertPerformanceParameter(performanceParameter);

            if (performanceParameterId != -1)
            {
                response = Request.CreateResponse(HttpStatusCode.OK, "PerformanceParameter added successfully.");
            }
            else
            {
                response = Request.CreateResponse(HttpStatusCode.Conflict, "Error adding performanceParameter.");
            }

            return(response);
        }
        public bool UpdatePerformanceParameter(PerformanceParameter performanceParameter)
        {
            String          sqlStr    = "SELECT * FROM perf_para WHERE id = " + performanceParameter.id;
            MySqlCommand    cmd       = new MySqlCommand(sqlStr, conn);
            MySqlDataReader sqlReader = cmd.ExecuteReader();

            if (sqlReader.Read())
            {
                sqlReader.Close();

                sqlStr = "UPDATE perf_para SET name_id = " + performanceParameter.perfParaName.id + ", custom_name = '" + performanceParameter.customName + "', group_id = " + performanceParameter.perfParaTypeGroup.id + " WHERE id = " + performanceParameter.id;
                cmd    = new MySqlCommand(sqlStr, conn);
                cmd.ExecuteNonQuery();

                return(true);
            }
            else
            {
                return(false);
            }
        }
Exemplo n.º 13
0
        public void PerformanceParameter_Property_Set_Test()
        {
            try
            {
                // Arrange
                PerformanceParameter performanceParameter = new PerformanceParameter();

                // Act
                performanceParameter.sportId              = 1;
                performanceParameter.perfParaName         = new PerformanceParameterName();
                performanceParameter.perfParaName.id      = 1;
                performanceParameter.perfParaTypeGroup    = new PerformanceParameterTypeGroup();
                performanceParameter.perfParaTypeGroup.id = 1;

                // Assert
                Assert.AreEqual <long>(performanceParameter.sportId, 1);
                Assert.AreEqual <long>(performanceParameter.perfParaName.id, 1);
                Assert.AreEqual <long>(performanceParameter.perfParaTypeGroup.id, 1);
            }
            catch (Exception)
            {
                throw new AssertFailedException("Setting PerformanceParameter properties failed.");
            }
        }