Skip to content

Commit a1d5538

Browse files
Migrate TestUpgradeDoesNotTryToUpgradeBundledCoreLibrariesInSketchbook from test_lib.py to lib_test.go
1 parent 5168c21 commit a1d5538

File tree

5 files changed

+34
-32
lines changed

5 files changed

+34
-32
lines changed

internal/integrationtest/lib/lib_test.go

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1186,3 +1186,37 @@ func TestInstallGitInvalidLibrary(t *testing.T) {
11861186
require.Contains(t, string(stderr), "library not valid")
11871187
require.NoDirExists(t, libInstallDir.String())
11881188
}
1189+
1190+
func TestUpgradeDoesNotTryToUpgradeBundledCoreLibrariesInSketchbook(t *testing.T) {
1191+
env, cli := integrationtest.CreateArduinoCLIWithEnvironment(t)
1192+
defer env.CleanUp()
1193+
1194+
testPlatformName := "platform_with_bundled_library"
1195+
platformInstallDir := cli.SketchbookDir().Join("hardware", "arduino-beta-dev", testPlatformName)
1196+
require.NoError(t, platformInstallDir.Parent().MkdirAll())
1197+
1198+
// Install platform in Sketchbook hardware dir
1199+
wd, err := paths.Getwd()
1200+
require.NoError(t, err)
1201+
require.NoError(t, wd.Parent().Join("testdata", testPlatformName).CopyDirTo(platformInstallDir))
1202+
1203+
_, _, err = cli.Run("update")
1204+
require.NoError(t, err)
1205+
1206+
// Install latest version of library identical to one
1207+
// bundled with test platform
1208+
_, _, err = cli.Run("lib", "install", "USBHost")
1209+
require.NoError(t, err)
1210+
1211+
stdout, _, err := cli.Run("lib", "list", "--all", "--format", "json")
1212+
require.NoError(t, err)
1213+
requirejson.Len(t, stdout, 2)
1214+
// Verify both libraries have the same name
1215+
requirejson.Query(t, stdout, ".[0] | .library | .name", "\"USBHost\"")
1216+
requirejson.Query(t, stdout, ".[1] | .library | .name", "\"USBHost\"")
1217+
1218+
stdout, _, err = cli.Run("lib", "upgrade")
1219+
require.NoError(t, err)
1220+
// Empty output means nothing has been updated as expected
1221+
require.Empty(t, stdout)
1222+
}

test/test_lib.py

Lines changed: 0 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -206,38 +206,6 @@ def test_install_with_zip_path_multiple_libraries(run_command, downloads_dir, da
206206
assert ble_install_dir.exists()
207207

208208

209-
def test_upgrade_does_not_try_to_upgrade_bundled_core_libraries_in_sketchbook(run_command, data_dir):
210-
test_platform_name = "platform_with_bundled_library"
211-
platform_install_dir = Path(data_dir, "hardware", "arduino-beta-dev", test_platform_name)
212-
platform_install_dir.mkdir(parents=True)
213-
214-
# Install platform in Sketchbook hardware dir
215-
shutil.copytree(
216-
Path(__file__).parent / "testdata" / test_platform_name,
217-
platform_install_dir,
218-
dirs_exist_ok=True,
219-
)
220-
221-
assert run_command(["update"])
222-
223-
# Install latest version of library identical to one
224-
# bundled with test platform
225-
assert run_command(["lib", "install", "USBHost"])
226-
227-
res = run_command(["lib", "list", "--all", "--format", "json"])
228-
assert res.ok
229-
libs = json.loads(res.stdout)
230-
assert len(libs) == 2
231-
# Verify both libraries have the same name
232-
assert libs[0]["library"]["name"] == "USBHost"
233-
assert libs[1]["library"]["name"] == "USBHost"
234-
235-
res = run_command(["lib", "upgrade"])
236-
assert res.ok
237-
# Empty output means nothing has been updated as expected
238-
assert res.stdout == ""
239-
240-
241209
def test_upgrade_does_not_try_to_upgrade_bundled_core_libraries(run_command, data_dir):
242210
test_platform_name = "platform_with_bundled_library"
243211
platform_install_dir = Path(data_dir, "packages", "arduino", "hardware", "arch", "4.2.0")

0 commit comments

Comments
 (0)