Files
poky/meta/lib/oeqa/selftest/lic-checksum.py
Richard Purdie 1da8f52b67 insane: Start to clean up do_configure_qa code
This cleans up the do_configure_qa code so that the exit status from
package_qa_handle_error is handled correctly.

It also converts package_qa_check_license to use our standard QA check
configuration interface through package_qa_handle_error rather than
a mix of return values, bb.fatal and bb.build.FuncFailed.

Due to the merging of multiple lines into one message, we need to
tweak a QA test to account for this.

(From OE-Core rev: fbdf977a8094bb1e0baca85ffb3ed7f326986639)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-19 17:24:46 +00:00

32 lines
1.1 KiB
Python

import os
import tempfile
from oeqa.selftest.base import oeSelfTest
from oeqa.utils.commands import bitbake
from oeqa.utils import CommandError
from oeqa.utils.decorators import testcase
class LicenseTests(oeSelfTest):
# Verify that changing a license file that has an absolute path causes
# the license qa to fail due to a mismatched md5sum.
@testcase(1197)
def test_nonmatching_checksum(self):
bitbake_cmd = '-c configure emptytest'
error_msg = 'emptytest: The new md5 checksum is 8d777f385d3dfec8815d20f7496026dc'
lic_file, lic_path = tempfile.mkstemp()
os.close(lic_file)
self.track_for_cleanup(lic_path)
self.write_recipeinc('emptytest', 'INHIBIT_DEFAULT_DEPS = "1"')
self.append_recipeinc('emptytest', 'LIC_FILES_CHKSUM = "file://%s;md5=d41d8cd98f00b204e9800998ecf8427e"' % lic_path)
result = bitbake(bitbake_cmd)
with open(lic_path, "w") as f:
f.write("data")
result = bitbake(bitbake_cmd, ignore_status=True)
if error_msg not in result.output:
raise AssertionError(result.output)