← Back to issue list

test_cleanbuild unit test fails when executed in a platform that's not amd64

View original Launchpad issue

Metadata

Project
snapcraft (launchpad)
Number
#1589747
Type
issue
State
closed
Author
~elopio
Labels
verification-done
Created
Updated
Closed

Current evaluation

Fixed test_cleanbuild unit test failure on non-amd64 platforms by replacing the hardcoded amd64 architecture with dynamic detection. Ensures cross-platform compatibility. Resolved and verified.

Suggested action:

No scores available.

Issue body

The unittest has the expected architecture value hardcoded to amd64, so when it is run in a different architecture it will fail. FAIL: test_cleanbuild (snapcraft.tests.test_lxd.LXDTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/lib/python3.5/unittest/mock.py", line 1157, in patched return func(*args, **keywargs) File "/tmp/autopkgtest.v8hLiN/build.kH3/snapcraft-2.9/snapcraft/tests/test_lxd.py", line 76, in test_cleanbuild call(['lxc', 'remote', 'remove', 'my-pet'])]) File "/usr/lib/python3.5/unittest/mock.py", line 824, in assert_has_calls ) from cause AssertionError: Calls not found. Expected: [call(['lxc', 'remote', 'add', 'my-pet', 'https://images.linuxcontainers.org:8443']), call(['lxc', 'launch', 'my-pet:ubuntu/xenial/amd64', 'snapcraft-my-pet']), call(['lxc', 'file', 'push', 'project.tar', 'snapcraft-my-pet//root/project.tar']), call(['lxc', 'exec', 'snapcraft-my-pet', '--', 'tar', 'xvf', '/root/project.tar']), call(['lxc', 'exec', 'snapcraft-my-pet', '--', 'python3', '-c', 'import urllib.request; urllib.request.urlopen("http://start.ubuntu.com/connectivity-check.html", timeout=5)']), call(['lxc', 'exec', 'snapcraft-my-pet', '--', 'apt-get', 'update']), call(['lxc', 'exec', 'snapcraft-my-pet', '--', 'apt-get', 'install', 'snapcraft', '-y']), call(['lxc', 'exec', 'snapcraft-my-pet', '--', 'snapcraft', 'snap', '--output', 'snap.snap']), call(['lxc', 'file', 'pull', 'snapcraft-my-pet//root/snap.snap', 'snap.snap']), call(['lxc', 'stop', 'snapcraft-my-pet']), call(['lxc', 'remote', 'remove', 'my-pet'])] Actual: [call(['lxc', 'remote', 'add', 'my-pet', 'https://images.linuxcontainers.org:8443']), call(['lxc', 'launch', 'my-pet:ubuntu/xenial/i386', 'snapcraft-my-pet']), call(['lxc', 'file', 'push', 'project.tar', 'snapcraft-my-pet//root/project.tar']), call(['lxc', 'exec', 'snapcraft-my-pet', '--', 'tar', 'xvf', '/root/project.tar']), call(['lxc', 'exec', 'snapcraft-my-pet', '--', 'python3', '-c', 'import urllib.request; urllib.request.urlopen("http://start.ubuntu.com/connectivity-check.html", timeout=5)']), call(['lxc', 'exec', 'snapcraft-my-pet', '--', 'apt-get', 'update']), call(['lxc', 'exec', 'snapcraft-my-pet', '--', 'apt-get', 'install', 'snapcraft', '-y']), call(['lxc', 'exec', 'snapcraft-my-pet', '--', 'snapcraft', 'snap', '--output', 'snap.snap']), call(['lxc', 'file', 'pull', 'snapcraft-my-pet//root/snap.snap', 'snap.snap']), call(['lxc', 'stop', 'snapcraft-my-pet']), [Impact] * No visible impact for users. * Fixing this test will get us closer to have green executions in autopkgtests in all the platforms. [Test Case] * Run the autopkgtests in a platform that's not amd64, [Regression Potential] * This could make fail the tests in amd64. But as it's in an autopkgtest, any regression will block the new version to get to proposed.

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b Fixed test_cleanbuild unit test failure on non-amd64 platforms by replacing the hardcoded amd64 architecture with dynamic detection. Ensures cross-platform compatibility. Resolved and verified.
qwen/qwen3.6-35b-a3b The hardcoded amd64 architecture in the test_cleanbuild unit test was updated to dynamically detect the system architecture, fixing autopkgtest failures on non-amd64 platforms and ensuring cross-platform test compatibility.
qwen/qwen3.6-35b-a3b Fixed test_cleanbuild unit test failure on non-amd64 platforms by replacing the hardcoded amd64 architecture with dynamic detection. The change ensures cross-platform compatibility and enables successful autopkgtest execution.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#1589752 unit tests in IsDirtyTestCase fail when executed in a platform that's not amd64 snapcraft (launchpad) closed Fixed IsDirtyTestCase failures on non-amd64 platforms by removing hardcoded architecture assumptions. The issue was closed after verification, ensuring tests pass across all architectures.
78%
#1589779 snap tests fail when executed in a platform that's not amd64 snapcraft (launchpad) closed Fixed by replacing the hardcoded amd64 architecture in snap filenames with dynamic detection, enabling successful autopkgtest execution on non-amd64 platforms. Closed after verification.
75%