Пример #1
0
        public TemperatureStatistics Get([FromUri] string cityname)
        {
            TemperatureStatistics info = null;

            string key = (Request.Headers.Contains("Authorization") ? Request.Headers.GetValues("Authorization").FirstOrDefault() : string.Empty);

            if (!key.Equals(Constants.ConstValues.SECURITY_KEY))
            {
                throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.Unauthorized, "Chave inválida."));
            }


            Utils.SqlServer sql = new Utils.SqlServer();
            info = sql.GetStatisticsByCity(cityname);

            if (sql.Error.Length > 0)
            {
                throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.ExpectationFailed, sql.Error));
            }

            if (info == null)
            {
                throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.NotFound, "Sem estatísticas para esta cidade."));
            }

            return(info);
        }
Пример #2
0
        public void TestMatchWithStats()
        {
            // Arrange
            var clothingRule = new ClothingRule(10, 20, null, "ingenting");

            // Act
            var stats1 = new TemperatureStatistics();

            stats1.AddTemperature(10);
            stats1.AddTemperature(20);

            var stats2 = new TemperatureStatistics();

            stats2.AddTemperature(5);
            stats2.AddTemperature(25);

            var stats3 = new TemperatureStatistics();

            stats3.AddTemperature(21);
            stats3.AddTemperature(31);

            var stats4 = new TemperatureStatistics();

            stats4.AddTemperature(5);
            stats4.AddTemperature(15);

            // Assert
            Assert.IsTrue(clothingRule.Match(stats1));
            Assert.IsFalse(clothingRule.Match(stats2));
            Assert.IsFalse(clothingRule.Match(stats3));
            Assert.IsTrue(clothingRule.Match(stats4));
        }
        public void TestTempStatsWithoutValue()
        {
            var tempStatistics = new TemperatureStatistics();

            Assert.AreEqual(10, tempStatistics.Min);
            Assert.AreEqual(10, tempStatistics.Max);
        }
        private void TestNoNumbersException()
        {
            var tempstats = new TemperatureStatistics();

            Assert.AreEqual(1, tempstats.Min);
            Assert.AreEqual(1, tempstats.Max);
        }
Пример #5
0
        public void TestGetStats()
        {
            var stats = new TemperatureStatistics();
            var temp  = new Location(12, 14);

            var gettingStats = stats.Equals(temp);

            Assert.IsFalse(gettingStats);
        }
        public void TestAddOneTemperature()
        {
            var tempStatistics = new TemperatureStatistics();

            tempStatistics.AddTemperature(10);
            tempStatistics.AddTemperature(20);

            Assert.AreEqual(10, tempStatistics.Min);
            Assert.AreEqual(20, tempStatistics.Max);
        }
Пример #7
0
        public void TestClothingRuleMatchFalse()
        {
            var clothingRule          = new ClothingRule(100, 200, false, "Bærepose", null);
            var temperatureStatistics = new TemperatureStatistics();

            temperatureStatistics.AddTemperature(90);
            temperatureStatistics.AddTemperature(210);
            var match = clothingRule.Match(temperatureStatistics);

            Assert.IsFalse(match);
        }
Пример #8
0
        public void TestIfMatch()
        {
            var clothingRule   = new ClothingRule(15, 25, null, "Sommertøy");
            var tempStatistics = new TemperatureStatistics();

            tempStatistics.AddTemperature(17);
            tempStatistics.AddTemperature(20);
            var match = clothingRule.Match(tempStatistics);

            Assert.IsTrue(match);
        }
Пример #9
0
        public void TestIfNoMatch()
        {
            var clothingRule   = new ClothingRule(5, 10, null, "Boblejakke");
            var tempStatistics = new TemperatureStatistics();

            tempStatistics.AddTemperature(2);
            tempStatistics.AddTemperature(12);
            var matchResult = clothingRule.Match(tempStatistics);

            Assert.IsFalse(matchResult);
        }
        public void TestAddTemprature()
        {
            byte ftemp1 = 1;
            byte ftemp2 = 2;
            var  TempratureStatistics = new TemperatureStatistics();

            TempratureStatistics.AddTemperature(ftemp1);
            TempratureStatistics.AddTemperature(ftemp2);
            Assert.AreEqual(1, TempratureStatistics.Min);
            Assert.AreEqual(2, TempratureStatistics.Max);
        }
Пример #11
0
        public void TestAddTemperature()
        {
            // Arrange
            var temperatureStats = new TemperatureStatistics();

            // Act and Assert
            temperatureStats.AddTemperature(10);
            Assert.AreEqual(10, temperatureStats.Min);
            Assert.AreEqual(10, temperatureStats.Max);

            temperatureStats.AddTemperature(8);
            Assert.AreEqual(8, temperatureStats.Min);
            Assert.AreEqual(10, temperatureStats.Max);

            temperatureStats.AddTemperature(12);
            Assert.AreEqual(8, temperatureStats.Min);
            Assert.AreEqual(12, temperatureStats.Max);
        }
Пример #12
0
        private void LoadData()
        {
            ClearForm();

            #region obtendo informacoes das Musicas

            TemperatureAndMusicList info = null;

            try
            {
                info = new WebApiClient.MusicApi().GetInformationByCity(txtCidade.Text);
            }
            catch (Exception ex)
            {
                MessageBox.Show($"Erro: {ex.Message}.");
                return;
            }


            if (info != null && info.musicList != null && info.musicList.Count > 0)
            {
                dgMusicas.DataSource = info.musicList;
            }
            else
            {
                MessageBox.Show($"Não foram encontradas Músicas para a cidade de {txtCidade.Text}.");
            }

            tStripStatusInfo.Text = $"A temperatura agora em {txtCidade.Text} é de {info.temperature.ToString("N0")}º. Ouça músicas da categoria {info.musicCategory}.";

            #endregion

            #region obtendo estatisticas

            TemperatureStatistics stat = null;

            try
            {
                stat = new WebApiClient.MusicApi().GetStatisticsByCity(txtCidade.Text);
            }
            catch (Exception ex)
            {
                MessageBox.Show($"Erro: {ex.Message}.");
                return;
            }

            if (stat != null)
            {
                lstboxEstatisticas.Items.Add($"Primeira Consulta: {stat.firstDate.ToString("dd/MM/yyyy")}");
                lstboxEstatisticas.Items.Add($"Última Consulta: {stat.lastDate.ToString("dd/MM/yyyy")}");
                lstboxEstatisticas.Items.Add($"Temperatura mais baixa registrada: {stat.minTemp.ToString("N0")}");
                lstboxEstatisticas.Items.Add($"Temperatura mais alta registrada: {stat.maxTemp.ToString("N0")}");
                lstboxEstatisticas.Items.Add($"Média de Temperatura: {stat.avgTemp.ToString("N0")}");
                lstboxEstatisticas.Items.Add($"Total de Consultas: {stat.total.ToString("N0")}");
            }
            else
            {
                lstboxEstatisticas.Items.Add("Sem Estatísticas para esta cidade.");
            }

            #endregion
        }