blob: 41e306a33b54eb74b76061cb0f44a0d386629f21 [file] [log] [blame]
Javi Merinoe4c1d452014-04-01 17:00:47 +01001#!/usr/bin/python
2
Javi Merinofff33672014-06-18 16:56:34 +01003import pandas as pd
4
Javi Merinoc26e1c72014-04-08 16:39:01 +01005from test_thermal import TestThermalBase
Javi Merino62c56dc2014-05-07 17:41:12 +01006from cr2 import OutPower, InPower
Javi Merinofff33672014-06-18 16:56:34 +01007import power
Javi Merinoe4c1d452014-04-01 17:00:47 +01008
9class TestPower(TestThermalBase):
Javi Merinofff33672014-06-18 16:56:34 +010010 def test_pivot_with_labels(self):
11 """Test pivot_with_labels()"""
12 dfr_in = pd.DataFrame({'cpus': ["000000f0", "0000000f", "000000f0", "0000000f"],
13 'freq': [1, 3, 2, 6]})
14 map_label = {"000000f0": "A15", "0000000f": "A7"}
15
16 dfr_out = power.pivot_with_labels(dfr_in, "freq", "cpus", map_label)
17
18 self.assertEquals(dfr_out["A15"].iloc[0], 1)
19 self.assertEquals(dfr_out["A15"].iloc[1], 1)
20 self.assertEquals(dfr_out["A15"].iloc[2], 2)
21 self.assertEquals(dfr_out["A7"].iloc[1], 3)
22
Javi Merino2e920b52014-05-07 17:29:36 +010023 def test_outpower_get_dataframe(self):
24 """Test OutPower.get_data_frame()"""
25 df = OutPower().get_data_frame()
Javi Merinoe4c1d452014-04-01 17:00:47 +010026
Javi Merino2b65c0b2014-06-04 18:16:42 +010027 self.assertEquals(df["power"].iloc[0], 5036)
28 print df.columns
Javi Merinoe4c1d452014-04-01 17:00:47 +010029 self.assertTrue("cdev_state" in df.columns)
Javi Merino62c56dc2014-05-07 17:41:12 +010030
31 def test_inpower_get_dataframe(self):
32 """Test InPower.get_data_frame()"""
33 df = InPower().get_data_frame()
34
35 self.assertEquals(df["load0"].iloc[0], 2)
36 self.assertTrue("load0" in df.columns)
Javi Merino8a79fb32014-05-07 17:56:23 +010037
38 def test_inpower_percluster_dataframe(self):
39 """Test InPower.get_cluster_data_frame()"""
40 df = InPower().get_cluster_data_frame(0)
41
42 self.assertEquals(df["raw_cpu_power"].iloc[0], 36)
43 self.assertTrue("load0" in df.columns)
Javi Merino1d70ee62014-05-07 18:27:53 +010044
Javi Merino9237a3c2014-06-18 12:18:51 +010045 def test_inpower_get_load_data(self):
46 """Test InPower.get_load_data()"""
47 load_data = InPower().get_load_data({0: "A7", 1: "A15"})
48
49 self.assertEquals(load_data["A15"].iloc[0], 2 + 6 + 0 + 1)
50 self.assertEquals(load_data["A7"].iloc[3], 9 + 7 + 20 + 2)
51 self.assertEquals(load_data["A15"].iloc[0], load_data["A15"].iloc[1])
52
Javi Merino19bbda62014-06-18 11:24:38 +010053 def test_inpower_plot_cluster_load(self):
54 """Test that InPower.plot_cluster_load() doesn't explode"""
Javi Merino86a37612014-06-18 11:26:11 +010055 InPower().plot_cluster_load(0)
Javi Merino9237a3c2014-06-18 12:18:51 +010056
57 def test_inpower_plot_load(self):
58 """Test that InPower.plot_load() doesn't explode"""
59 InPower().plot_load({0: "A7", 1: "A15"}, title="Util")