Code Duplication    Length = 38-38 lines in 2 locations

integTests/ForecastDailyTest.php 2 locations

@@ 39-76 (lines=38) @@
36
        $this->owm->setApiKey($apiKey);
37
    }
38
39
    public function testTemperatureMetric()
40
    {
41
        $forecast = $this->owm->getWeatherForecast('Berlin', 'metric', 'de', '', 10);
42
43
        $now = new \DateTime();
44
        $this->assertEquals($now->format('d.m.Y H:i'), $forecast->lastUpdate->format('d.m.Y H:i'));
45
46
        $this->assertEquals('Berlin', $forecast->city->name);
47
        $this->assertEquals('05:00:53', $forecast->sun->rise->format("H:i:s"));
48
        $this->assertEquals('17:25:40', $forecast->sun->set->format("H:i:s"));
49
50
        $this->assertEquals(10, iterator_count($forecast));
51
52
        $forecast_arr = iterator_to_array($forecast);
53
54
        $this->assertEquals('4.59 °C', $forecast_arr[0]->temperature);
55
        $this->assertEquals('7.34 °C', $forecast_arr[1]->temperature);
56
        $this->assertEquals('5.58 °C', $forecast_arr[2]->temperature->now);
57
        $this->assertEquals('6.14 °C', $forecast_arr[3]->temperature);
58
        $this->assertEquals('7.56 °C', $forecast_arr[4]->temperature);
59
        $this->assertEquals('10.24 °C', $forecast_arr[5]->temperature);
60
        $this->assertEquals('9.34 °C', $forecast_arr[6]->temperature);
61
        $this->assertEquals('10.93 °C', $forecast_arr[7]->temperature->now);
62
        $this->assertEquals('8.8 °C', $forecast_arr[8]->temperature);
63
        $this->assertEquals('8.02 °C', $forecast_arr[9]->temperature);
64
65
        $this->assertEquals('2.71 °C', $forecast_arr[0]->temperature->min);
66
        $this->assertEquals('9.07 °C', $forecast_arr[1]->temperature->max);
67
        $this->assertEquals('8.31 °C', $forecast_arr[2]->temperature->day);
68
        $this->assertEquals('2.93 °C', $forecast_arr[3]->temperature->morning);
69
        $this->assertEquals('8.99 °C', $forecast_arr[4]->temperature->evening);
70
        $this->assertEquals('8.91 °C', $forecast_arr[5]->temperature->night);
71
72
        $this->assertEquals('°C', $forecast_arr[6]->temperature->getUnit());
73
        $this->assertEquals('10.93', $forecast_arr[7]->temperature->getValue());
74
        $this->assertEmpty($forecast_arr[8]->temperature->getDescription());
75
        $this->assertEquals('8.02 °C', $forecast_arr[9]->temperature->getFormatted());
76
    }
77
78
    public function testTemperatureImperial()
79
    {
@@ 78-115 (lines=38) @@
75
        $this->assertEquals('8.02 °C', $forecast_arr[9]->temperature->getFormatted());
76
    }
77
78
    public function testTemperatureImperial()
79
    {
80
        $forecast = $this->owm->getWeatherForecast('New York', 'imperial', 'en', '', 10);
81
82
        $now = new \DateTime();
83
        $this->assertEquals($now->format('m-d-Y H:i'), $forecast->lastUpdate->format('m-d-Y H:i'));
84
85
        $this->assertEquals('New York', $forecast->city->name);
86
        $this->assertEquals('10:53:25', $forecast->sun->rise->format("H:i:s"));
87
        $this->assertEquals('23:11:57', $forecast->sun->set->format("H:i:s"));
88
89
        $this->assertEquals(10, iterator_count($forecast));
90
91
        $forecast_arr = iterator_to_array($forecast);
92
93
        $this->assertEquals('48.88 F', $forecast_arr[0]->temperature);
94
        $this->assertEquals('55.56 F', $forecast_arr[1]->temperature);
95
        $this->assertEquals('57.08 F', $forecast_arr[2]->temperature->now);
96
        $this->assertEquals('50.85 F', $forecast_arr[3]->temperature);
97
        $this->assertEquals('47.79 F', $forecast_arr[4]->temperature);
98
        $this->assertEquals('46.21 F', $forecast_arr[5]->temperature);
99
        $this->assertEquals('47.73 F', $forecast_arr[6]->temperature);
100
        $this->assertEquals('43.52 F', $forecast_arr[7]->temperature->now);
101
        $this->assertEquals('34.79 F', $forecast_arr[8]->temperature);
102
        $this->assertEquals('30.35 F', $forecast_arr[9]->temperature);
103
104
        $this->assertEquals('47.75 F', $forecast_arr[0]->temperature->min);
105
        $this->assertEquals('64.53 F', $forecast_arr[1]->temperature->max);
106
        $this->assertEquals('69.4 F', $forecast_arr[2]->temperature->day);
107
        $this->assertEquals('58.71 F', $forecast_arr[3]->temperature->morning);
108
        $this->assertEquals('49.5 F', $forecast_arr[4]->temperature->evening);
109
        $this->assertEquals('43.63 F', $forecast_arr[5]->temperature->night);
110
111
        $this->assertEquals('F', $forecast_arr[6]->temperature->getUnit());
112
        $this->assertEquals('43.52', $forecast_arr[7]->temperature->getValue());
113
        $this->assertEmpty($forecast_arr[8]->temperature->getDescription());
114
        $this->assertEquals('30.35 F', $forecast_arr[9]->temperature->getFormatted());
115
    }
116
117
    public function testWindMetric()
118
    {