Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b2e57b73 authored by Dan Albert's avatar Dan Albert
Browse files

Make Python tests only check the current device.

In practice testing all connected devices is a pain, since it's
probably each device is running a different build. It would probably
make sense to just move this functionality up into a higher level test
runner (which could just live in main).

Also rename test_devices to test_shell, since it doesn't really test
`adb devices`.

Change-Id: Ie96d3e83b30acfac4e3bcbd9821690c0ad4d2f7e
parent d6e9a1f5
Loading
Loading
Loading
Loading
+19 −46
Original line number Diff line number Diff line
@@ -215,12 +215,10 @@ class AdbWrapper(object):


class AdbBasic(unittest.TestCase):
    def test_devices(self):
        """Get uptime for each device plugged in from /proc/uptime."""
        dev_list = get_device_list()
        for device in dev_list:
            out = call_checked(
                "adb -s {} shell cat /proc/uptime".format(device))
    def test_shell(self):
        """Check that we can at least cat a file."""
        adb = AdbWrapper()
        out = adb.shell("cat /proc/uptime")
        self.assertEqual(len(out.split()), 2)
        self.assertGreater(float(out.split()[0]), 0.0)
        self.assertGreater(float(out.split()[1]), 0.0)
@@ -241,8 +239,7 @@ class AdbBasic(unittest.TestCase):

    def test_root_unroot(self):
        """Make sure that adb root and adb unroot work, using id(1)."""
        for device in get_device_list():
            adb = AdbWrapper(device)
        adb = AdbWrapper()
        adb.root()
        adb.wait()
        self.assertEqual("root", adb.shell("id -un").strip())
@@ -257,15 +254,9 @@ class AdbFile(unittest.TestCase):
    DEVICE_TEMP_DIR = SCRATCH_DIR + "/adb_test_dir"

    def test_push(self):
        """Push a file to all attached devices."""
        dev_list = get_device_list()
        for device in dev_list:
            self.push_with_device(device)

    def push_with_device(self, device):
        """Push a randomly generated file to specified device."""
        kbytes = 512
        adb = AdbWrapper(device)
        adb = AdbWrapper()
        with tempfile.NamedTemporaryFile(mode="w") as tmp:
            rand_str = os.urandom(1024 * kbytes)
            tmp.write(rand_str)
@@ -284,15 +275,9 @@ class AdbFile(unittest.TestCase):
    # TODO: write push directory test.

    def test_pull(self):
        """Pull a file from all attached devices."""
        dev_list = get_device_list()
        for device in dev_list:
            self.pull_with_device(device)

    def pull_with_device(self, device):
        """Pull a randomly generated file from specified device."""
        kbytes = 512
        adb = AdbWrapper(device)
        adb = AdbWrapper()
        adb.shell_nocheck("rm -r {}".format(AdbFile.DEVICE_TEMP_FILE))
        try:
            adb.shell("dd if=/dev/urandom of={} bs=1024 count={}".format(
@@ -310,14 +295,8 @@ class AdbFile(unittest.TestCase):
            adb.shell_nocheck("rm {}".format(AdbFile.DEVICE_TEMP_FILE))

    def test_pull_dir(self):
        """Pull a directory from all attached devices."""
        dev_list = get_device_list()
        for device in dev_list:
            self.pull_dir_with_device(device)

    def pull_dir_with_device(self, device):
        """Pull a randomly generated directory of files from the device."""
        adb = AdbWrapper(device)
        adb = AdbWrapper()
        temp_files = {}
        host_dir = None
        try:
@@ -350,15 +329,9 @@ class AdbFile(unittest.TestCase):
                os.removedirs(host_dir)

    def test_sync(self):
        """Sync a directory with all attached devices."""
        dev_list = get_device_list()
        for device in dev_list:
            self.sync_dir_with_device(device)

    def sync_dir_with_device(self, device):
        """Sync a randomly generated directory of files to specified device."""
        try:
            adb = AdbWrapper(device)
            adb = AdbWrapper()
            temp_files = {}

            # create temporary host directory
@@ -373,7 +346,7 @@ class AdbFile(unittest.TestCase):
                                                num_files=32)

            # clean up any trash on the device
            adb = AdbWrapper(device, out_dir=base_dir)
            adb = AdbWrapper(out_dir=base_dir)
            adb.shell_nocheck("rm -r {}".format(AdbFile.DEVICE_TEMP_DIR))

            # issue the sync