1from oeqa.runtime.case import OERuntimeTestCase 2from oeqa.core.decorator.depends import OETestDepends 3from oeqa.core.decorator.data import skipIfQemu 4import threading 5import time 6 7class Suspend_Test(OERuntimeTestCase): 8 9 def test_date(self): 10 (status, output) = self.target.run('date') 11 self.assertEqual(status, 0, msg = 'Failed to run date command, output : %s' % output) 12 13 def test_ping(self): 14 t_thread = threading.Thread(target=self.target.run, args=("ping 8.8.8.8",)) 15 t_thread.start() 16 time.sleep(2) 17 18 status, output = self.target.run('pidof ping') 19 self.target.run('kill -9 %s' % output) 20 self.assertEqual(status, 0, msg = 'Not able to find process that runs ping, output : %s' % output) 21 22 def set_suspend(self): 23 (status, output) = self.target.run('sudo rtcwake -m mem -s 10') 24 self.assertEqual(status, 0, msg = 'Failed to suspends your system to RAM, output : %s' % output) 25 26 @skipIfQemu() 27 @OETestDepends(['ssh.SSHTest.test_ssh']) 28 def test_suspend(self): 29 self.test_date() 30 self.test_ping() 31 self.set_suspend() 32 self.test_date() 33 self.test_ping() 34