def verify_pkg_content(self, contents):

        result = True
        verify_node = [
            'uid', 'lockscreen_id', 'wallpaper_id', 'imei', 'mac', 'platform',
            'product', 'product_soft', 'promotion'
        ]
        #verify_node = ['uid','lockscreen_id','wallpaper_id','imei','mac','platform','product','promotion']
        find_node = []
        for cont in contents:

            data = pXml.parseXml(cont)
            for name in verify_node:
                try:
                    if name != 'platform' and name != 'product_soft':
                        value = data.get_elements_text(name)[0]
                    elif name == 'platform':
                        value = data.get_elements_attribute_value(
                            name, 'version')[0]
                    else:
                        value = data.get_elements_attribute_value(
                            name, 'soft')[0]
                    self.filter_result[name] = value
                    find_node.append(name)
                except Exception, ex:
                    continue
Example #2
0
def verify_module_data_pkg(uid, text):

    logger.debug("Step: start to compare content of data pkg")
    mid = device_config.getValue(uid, 'background_module_id1')
    exp_value = tc.get_module_info(mid)
    content = re.compile(
        r'.*<property name="file">(.*)</property><property name="u".*')
    match = content.match(text)
    act_value = {}
    if match:
        match_value = match.group(1)
        xmlobject = pXml.parseXml(match_value)
        names = xmlobject.get_elements_attribute_value('property', 'name')
        values = xmlobject.get_elements_attribute_value('property', 'value')
        act_value = dict(zip(names, values))

    logger.debug("Expected values as follow")
    for key, value in exp_value.items():
        print(key + ':' + str(value))
        logger.debug(key + ':' + str(value))

    logger.debug("Actual values as follow")
    for key, value in act_value.items():
        print(key + ':' + str(value))
        logger.debug(key + ':' + str(value))

    # sysmmetric difference 对等差分
    diff = set(act_value.items()) ^ set(exp_value.items())
    if len(diff) == 0:
        return True
    else:
        return False
Example #3
0
def verify_pkg_content(loginfo, exp_value):

    try:
        if len(loginfo) > 0:
            data = pXml.parseXml(loginfo.split(':::')[1])
            value = data.get_elements_attribute_value('product', 'soft')[0]

            temp = exp_value.encode('utf-8').split('.')
            length = len(temp)
            temp = '.'.join(temp[0:length - 1])

            if value == temp:
                return True
            else:
                return False
    except Exception, ex:
        print ex
Example #4
0
def verify_login_pkg_content(dname, contents):

    DEVICE = device.Device(dname)
    verify_node = [
        'uid', 'lockscreen_id', 'wallpaper_id', 'mac', 'platform', 'product',
        'product_soft', 'promotion'
    ]
    #verify_node = ['uid','lockscreen_id','wallpaper_id','imei','mac','platform','product','promotion']
    find_node = []
    filter_result = {}

    data = pXml.parseXml(contents)
    for name in verify_node:
        try:
            if name == 'platform':
                value = data.get_elements_attribute_value(name, 'version')[0]
            elif name == 'product_soft':
                value = data.get_elements_attribute_value(name, 'soft')[0]
            else:
                value = data.get_elements_text(name)[0]
            filter_result[name] = value
            find_node.append(name)
        except Exception, ex:
            continue