Skip to content

Commit 098a28b

Browse files
Migrate TestUpgradeDoesNotTryToUpgradeBundledCoreLibrariesInSketchbook from test_lib.py to lib_test.go
1 parent 73a9b14 commit 098a28b

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

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)