1import logging 2import os.path 3import time 4 5import pytest 6from utils.images import compare_image_similarity, crop_picture 7 8 9class Test: 10 ability_name = 'com.ohos.photos.MainAbility' 11 bundle_name = 'com.ohos.photos' 12 13 @pytest.mark.parametrize('setup_teardown', [bundle_name], indirect=True) 14 def test(self, setup_teardown, device): 15 logging.info('start gallery app') 16 device.start_ability(self.bundle_name, self.ability_name) 17 18 logging.info('compare image similarity') 19 standard_pic = os.path.join(device.resource_path, 'photos.jpeg') 20 photos_page_pic = device.save_snapshot_to_local('{}_photos.jpeg'.format(device.sn)) 21 crop_picture(photos_page_pic) 22 similarity = compare_image_similarity(photos_page_pic, standard_pic) 23 assert similarity > 0.5, 'compare similarity failed' 24 25 logging.info('medialibrarydata process check') 26 process = 'com.ohos.medialibrary.medialibrarydata' 27 device.assert_process_running(process) 28 time.sleep(1) 29 30 logging.info('sandbox path check') 31 pid = device.get_pid(process) 32 sanboxf = device.hdc_shell('echo \"ls /storage/media/local/\"|nsenter -t {} -m sh'.format(pid)) 33 assert 'files' in sanboxf, 'files not in {}'.format(sanboxf) 34