Exemple #1
0
        public PlayerEvaluation GetPlayerEvaluation(long evaluationId)
        {
            String       sqlStr = "select id, sport_id, player_id, name_id, type_id, value, eval_date from player_eval where id = @evalId";
            MySqlCommand cmd    = new MySqlCommand(sqlStr, conn);

            cmd.Parameters.AddWithValue("evalId", evaluationId);
            MySqlDataReader  sqlReader = cmd.ExecuteReader();
            PlayerEvaluation pp        = null;

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

                pp.perfParaName    = new PerformanceParameterName();
                pp.perfParaName.id = sqlReader.GetInt32(3);

                pp.selectedType    = new PerformanceParameterType();
                pp.selectedType.id = sqlReader.GetInt32(4);
                pp.value           = sqlReader.GetString(5);
            }

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

            PlayerEvaluationObjAsInput.sportId         = 1;
            PlayerEvaluationObjAsInput.playerId        = 1;
            PlayerEvaluationObjAsInput.perfParaName    = new PerformanceParameterName();
            PlayerEvaluationObjAsInput.perfParaName.id = 1;
            PlayerEvaluationObjAsInput.selectedType    = new PerformanceParameterType();
            PlayerEvaluationObjAsInput.selectedType.id = 1;
            PlayerEvaluationObjAsInput.value           = "100";

            var mockRepository = new Mock <IPlayerEvaluationRepository>();

            mockRepository.Setup(x => x.InsertPlayerEvaluation(PlayerEvaluationObjAsInput))
            .Returns(1);

            var controller = new PlayerEvaluationController(mockRepository.Object);

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

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

            // 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, "PlayerEvaluation added successfully.");
        }
Exemple #3
0
        // PUT: api/PlayerEvaluation/5
        public HttpResponseMessage Put([FromBody] PlayerEvaluation PlayerEvaluation)
        {
            HttpResponseMessage response;

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

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

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

            if (PlayerEvaluation.playerId <= 0)
            {
                response = Request.CreateResponse(HttpStatusCode.PartialContent, "Invalid Player Id passed.");
                return(response);
            }

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

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

            bool isUpdated = _iPlayerEvaluationRepository.UpdatePlayerEvaluation(PlayerEvaluation);

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

            return(response);
        }
        public void PerformanceParameterEvaluation_Initialization_Test()
        {
            try
            {
                // Arrange and Act
                PlayerEvaluation playerEvaluation = new PlayerEvaluation();

                // Assert
                Assert.IsNotNull(playerEvaluation);
            }
            catch (Exception)
            {
                throw new AssertFailedException("PlayerEvaluation initialization failed.");
            }
        }
        public void Repository_Insert_Update_Delete_PlayerEvaluation_Test()
        {
            try
            {
                // Arrange
                PlayerEvaluationRepository PlayerEvaluationRepository = new PlayerEvaluationRepository();
                PlayerEvaluation           PlayerEvaluationToSave     = new PlayerEvaluation();
                PlayerEvaluationToSave.sportId         = 1;
                PlayerEvaluationToSave.playerId        = 1;
                PlayerEvaluationToSave.perfParaName    = new PerformanceParameterName();
                PlayerEvaluationToSave.perfParaName.id = 1;
                PlayerEvaluationToSave.selectedType    = new PerformanceParameterType();
                PlayerEvaluationToSave.selectedType.id = 1;
                PlayerEvaluationToSave.value           = "100";

                PlayerEvaluation PlayerEvaluationToUpdate = new PlayerEvaluation();
                PlayerEvaluationToUpdate.sportId         = 1;
                PlayerEvaluationToUpdate.playerId        = 1;
                PlayerEvaluationToUpdate.perfParaName    = new PerformanceParameterName();
                PlayerEvaluationToUpdate.perfParaName.id = 1;
                PlayerEvaluationToUpdate.selectedType    = new PerformanceParameterType();
                PlayerEvaluationToUpdate.selectedType.id = 2;
                PlayerEvaluationToUpdate.value           = "200";

                // Act
                long PlayerEvaluationId = PlayerEvaluationRepository.InsertPlayerEvaluation(PlayerEvaluationToSave);
                PlayerEvaluationToUpdate.id = PlayerEvaluationId;
                bool             isUpdated = PlayerEvaluationRepository.UpdatePlayerEvaluation(PlayerEvaluationToUpdate);
                PlayerEvaluation PlayerEvaluationFromDb = PlayerEvaluationRepository.GetPlayerEvaluation(PlayerEvaluationId);

                // Assert
                Assert.IsTrue(isUpdated);
                Assert.IsNotNull(PlayerEvaluationFromDb);
                Assert.AreEqual(PlayerEvaluationToUpdate.sportId, PlayerEvaluationFromDb.sportId);
                Assert.AreEqual(PlayerEvaluationToUpdate.playerId, PlayerEvaluationFromDb.playerId);
                Assert.AreEqual(PlayerEvaluationToUpdate.perfParaName.id, PlayerEvaluationFromDb.perfParaName.id);
                Assert.AreEqual(PlayerEvaluationToUpdate.selectedType.id, PlayerEvaluationFromDb.selectedType.id);
                Assert.AreEqual(PlayerEvaluationToUpdate.value, PlayerEvaluationFromDb.value);

                // Cleanup
                bool isDeleted = PlayerEvaluationRepository.DeletePlayerEvaluation(PlayerEvaluationId);
                Assert.IsTrue(isDeleted);
            }
            catch (Exception ex)
            {
                throw new AssertFailedException("Unable to add/fetch/update/delete player evaluation.");
            }
        }
Exemple #6
0
        // POST: api/PlayerEvaluation
        public HttpResponseMessage Post([FromBody] PlayerEvaluation PlayerEvaluation)
        {
            HttpResponseMessage response;

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

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

            if (PlayerEvaluation.playerId <= 0)
            {
                response = Request.CreateResponse(HttpStatusCode.PartialContent, "Invalid Player Id passed.");
                return(response);
            }

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

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

            long PlayerEvaluationId = _iPlayerEvaluationRepository.InsertPlayerEvaluation(PlayerEvaluation);

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

            return(response);
        }
        public void PerformanceParameterEvaluation_Property_Set_Test()
        {
            try
            {
                // Arrange
                PlayerEvaluation playerEvaluation = new PlayerEvaluation();

                // Act
                playerEvaluation.sportId           = 1;
                playerEvaluation.playerId          = 1;
                playerEvaluation.perfParaName      = new PerformanceParameterName();
                playerEvaluation.perfParaName.id   = 1;
                playerEvaluation.perfParaName.name = "Perf Para 1";
                playerEvaluation.customName        = "Custom Name";
                playerEvaluation.perfParaTypes     = new List <PerformanceParameterType>();
                PerformanceParameterType perfParaType = new PerformanceParameterType();
                perfParaType.id      = 1;
                perfParaType.groupId = 1;
                perfParaType.name    = "Perf Para Type 1";
                playerEvaluation.perfParaTypes.Add(perfParaType);
                playerEvaluation.selectedType         = new PerformanceParameterType();
                playerEvaluation.selectedType.id      = 1;
                playerEvaluation.selectedType.groupId = 1;
                playerEvaluation.selectedType.name    = "Perf Para Type 1";
                playerEvaluation.value = "value";

                // Assert
                Assert.AreEqual <long>(playerEvaluation.sportId, 1);
                Assert.AreEqual <long>(playerEvaluation.perfParaName.id, 1);
                Assert.AreEqual <string>(playerEvaluation.perfParaName.name, "Perf Para 1");
                Assert.AreEqual <string>(playerEvaluation.customName, "Custom Name");
                Assert.AreEqual <long>(playerEvaluation.perfParaTypes[0].id, 1);
                Assert.AreEqual <long>(playerEvaluation.perfParaTypes[0].groupId, 1);
                Assert.AreEqual <string>(playerEvaluation.perfParaTypes[0].name, "Perf Para Type 1");
                Assert.AreEqual <long>(playerEvaluation.selectedType.id, 1);
                Assert.AreEqual <long>(playerEvaluation.selectedType.groupId, 1);
                Assert.AreEqual <string>(playerEvaluation.selectedType.name, "Perf Para Type 1");
                Assert.AreEqual <string>(playerEvaluation.value, "value");
            }
            catch (Exception)
            {
                throw new AssertFailedException("Setting PerformanceParameterEvaluation properties failed.");
            }
        }
Exemple #8
0
        public bool UpdatePlayerEvaluation(PlayerEvaluation playerEvaluation)
        {
            String          sqlStr    = "SELECT * FROM player_eval WHERE id = " + playerEvaluation.id;
            MySqlCommand    cmd       = new MySqlCommand(sqlStr, conn);
            MySqlDataReader sqlReader = cmd.ExecuteReader();

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

                string value = String.IsNullOrWhiteSpace(playerEvaluation.value) ? null : playerEvaluation.value;
                sqlStr = "UPDATE player_eval SET sport_id = " + playerEvaluation.sportId + ", player_id = " + playerEvaluation.playerId + ", name_id = " + playerEvaluation.perfParaName.id + ", type_id = " + playerEvaluation.selectedType.id + ", value = '" + value + "' WHERE id = " + playerEvaluation.id;
                cmd    = new MySqlCommand(sqlStr, conn);
                cmd.ExecuteNonQuery();

                return(true);
            }
            else
            {
                return(false);
            }
        }
Exemple #9
0
        public long InsertPlayerEvaluation(PlayerEvaluation playerEvaluation)
        {
            String       sqlStr = "insert into player_eval(sport_id, player_id, name_id, type_id, value, eval_date) values(@sportId, @playerId, @nameId, @typeId, @value, @currentDate)";
            MySqlCommand cmd    = new MySqlCommand(sqlStr, conn);

            cmd.Parameters.AddWithValue("sportId", playerEvaluation.sportId);
            cmd.Parameters.AddWithValue("playerId", playerEvaluation.playerId);
            cmd.Parameters.AddWithValue("nameId", playerEvaluation.perfParaName.id);
            cmd.Parameters.AddWithValue("typeId", playerEvaluation.selectedType.id);
            cmd.Parameters.AddWithValue("value", String.IsNullOrWhiteSpace(playerEvaluation.value) ? null : playerEvaluation.value);
            cmd.Parameters.AddWithValue("currentDate", DateTime.Now);

            try
            {
                cmd.ExecuteNonQuery();
                return(cmd.LastInsertedId);
            }
            catch (Exception)
            {
                return(-1);
            }
        }
        public void Repository_Insert_Get_All_Delete_PlayerEvaluation_Test()
        {
            try
            {
                // Arrange
                PlayerEvaluationRepository PlayerEvaluationRepository = new PlayerEvaluationRepository();
                PlayerEvaluation           PlayerEvaluationToSave     = new PlayerEvaluation();
                PlayerEvaluationToSave.sportId         = 1;
                PlayerEvaluationToSave.playerId        = 1;
                PlayerEvaluationToSave.perfParaName    = new PerformanceParameterName();
                PlayerEvaluationToSave.perfParaName.id = 1;
                PlayerEvaluationToSave.selectedType    = new PerformanceParameterType();
                PlayerEvaluationToSave.selectedType.id = 1;
                PlayerEvaluationToSave.value           = "100";

                // Act
                long      PlayerEvaluationId      = PlayerEvaluationRepository.InsertPlayerEvaluation(PlayerEvaluationToSave);
                ArrayList PlayerEvaluationsFromDb = PlayerEvaluationRepository.GetPlayerEvaluations(PlayerEvaluationToSave.sportId, PlayerEvaluationToSave.playerId);

                // Assert
                Assert.IsTrue(PlayerEvaluationsFromDb.Count > 0);
                Assert.AreEqual(((PlayerEvaluation)PlayerEvaluationsFromDb[0]).sportId, PlayerEvaluationToSave.sportId);
                Assert.AreEqual(((PlayerEvaluation)PlayerEvaluationsFromDb[0]).playerId, PlayerEvaluationToSave.playerId);
                Assert.AreEqual(((PlayerEvaluation)PlayerEvaluationsFromDb[0]).perfParaName.id, PlayerEvaluationToSave.perfParaName.id);
                Assert.AreEqual(((PlayerEvaluation)PlayerEvaluationsFromDb[0]).selectedType.id, PlayerEvaluationToSave.selectedType.id);
                Assert.AreEqual(((PlayerEvaluation)PlayerEvaluationsFromDb[0]).value, PlayerEvaluationToSave.value);

                // Cleanup
                bool isDeleted = PlayerEvaluationRepository.DeletePlayerEvaluation(PlayerEvaluationId);
                Assert.IsTrue(isDeleted);
            }
            catch (Exception)
            {
                throw new AssertFailedException("Unable to add/fetch all/detete player evaluation.");
            }
        }
Exemple #11
0
        public ArrayList GetPlayerEvaluations(long sportsId, long playerId)
        {
            String       sqlStr = "select pp.id, pp.sport_id, pp.name_id, ppn.name, pp.custom_name, pp.group_id from perf_para pp join perf_para_name ppn on pp.name_id = ppn.id where pp.sport_id = @sportId";
            MySqlCommand cmd    = new MySqlCommand(sqlStr, conn);

            cmd.Parameters.AddWithValue("sportId", sportsId);
            MySqlDataReader  sqlReader         = cmd.ExecuteReader();
            ArrayList        playerEvaluations = new ArrayList();
            PlayerEvaluation pp       = null;
            List <int>       groupIds = new List <int>();

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

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

                pp.customName = sqlReader.GetString(4);

                groupIds.Add(sqlReader.GetInt32(5));

                playerEvaluations.Add(pp);
            }

            sqlReader.Close();

            for (int groupIdIndex = 0; groupIdIndex < groupIds.Count; groupIdIndex++)
            {
                int groupId = groupIds[groupIdIndex];
                sqlStr = "select id, group_id, name from perf_para_type where group_id = @groupId";
                cmd    = new MySqlCommand(sqlStr, conn);
                cmd.Parameters.AddWithValue("groupId", groupId);
                MySqlDataReader perfParaTypeSqlReader = cmd.ExecuteReader();

                List <PerformanceParameterType> perfParaTypes = new List <PerformanceParameterType>();
                PerformanceParameterType        perfParaType  = null;

                while (perfParaTypeSqlReader.Read())
                {
                    perfParaType         = new PerformanceParameterType();
                    perfParaType.id      = perfParaTypeSqlReader.GetInt32(0);
                    perfParaType.groupId = perfParaTypeSqlReader.GetInt32(1);
                    perfParaType.name    = perfParaTypeSqlReader.GetString(2);

                    perfParaTypes.Add(perfParaType);
                }
                perfParaTypeSqlReader.Close();

                ((PlayerEvaluation)playerEvaluations[groupIdIndex]).perfParaTypes = perfParaTypes;

                foreach (PerformanceParameterType paraType in perfParaTypes)
                {
                    sqlStr = "select pe.type_id, ppt.group_id, ppt.name, pe.value from player_eval pe join perf_para_type ppt on pe.type_id = ppt.id where pe.sport_id = @sportId and pe.player_id = @playerId and pe.type_id = @typeId and pe.eval_date = current_date()";
                    cmd    = new MySqlCommand(sqlStr, conn);
                    cmd.Parameters.AddWithValue("sportId", sportsId);
                    cmd.Parameters.AddWithValue("playerId", playerId);
                    cmd.Parameters.AddWithValue("typeId", paraType.id);
                    cmd.Parameters.AddWithValue("currentDate", DateTime.Now);
                    MySqlDataReader playerEvalSqlReader = cmd.ExecuteReader();

                    if (playerEvalSqlReader.Read())
                    {
                        ((PlayerEvaluation)playerEvaluations[groupIdIndex]).selectedType         = new PerformanceParameterType();
                        ((PlayerEvaluation)playerEvaluations[groupIdIndex]).selectedType.id      = playerEvalSqlReader.GetInt32(0);
                        ((PlayerEvaluation)playerEvaluations[groupIdIndex]).selectedType.groupId = playerEvalSqlReader.GetInt32(1);
                        ((PlayerEvaluation)playerEvaluations[groupIdIndex]).selectedType.name    = playerEvalSqlReader.GetString(2);
                        ((PlayerEvaluation)playerEvaluations[groupIdIndex]).value = playerEvalSqlReader.IsDBNull(3) ? string.Empty : playerEvalSqlReader.GetString(3);

                        playerEvalSqlReader.Close();
                        break;
                    }

                    playerEvalSqlReader.Close();
                }
            }

            return(playerEvaluations);
        }