Skip to content

Commit e852763

Browse files
Migrate TestUpgradeDoesNotTryToUpgradeBundledCoreLibraries from test_lib.py to lib_test.go
1 parent 098a28b commit e852763

File tree

2 files changed

+34
-32
lines changed

2 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
@@ -1221,3 +1221,37 @@ func TestUpgradeDoesNotTryToUpgradeBundledCoreLibrariesInSketchbook(t *testing.T
12211221
// Empty output means nothing has been updated as expected
12221222
require.Empty(t, stdout)
12231223
}
1224+
1225+
func TestUpgradeDoesNotTryToUpgradeBundledCoreLibraries(t *testing.T) {
1226+
env, cli := integrationtest.CreateArduinoCLIWithEnvironment(t)
1227+
defer env.CleanUp()
1228+
1229+
testPlatformName := "platform_with_bundled_library"
1230+
platformInstallDir := cli.DataDir().Join("packages", "arduino", "hardware", "arch", "4.2.0")
1231+
require.NoError(t, platformInstallDir.Parent().MkdirAll())
1232+
1233+
// Install platform in Sketchbook hardware dir
1234+
wd, err := paths.Getwd()
1235+
require.NoError(t, err)
1236+
require.NoError(t, wd.Parent().Join("testdata", testPlatformName).CopyDirTo(platformInstallDir))
1237+
1238+
_, _, err = cli.Run("update")
1239+
require.NoError(t, err)
1240+
1241+
// Install latest version of library identical to one
1242+
// bundled with test platform
1243+
_, _, err = cli.Run("lib", "install", "USBHost")
1244+
require.NoError(t, err)
1245+
1246+
stdout, _, err := cli.Run("lib", "list", "--all", "--format", "json")
1247+
require.NoError(t, err)
1248+
requirejson.Len(t, stdout, 2)
1249+
// Verify both libraries have the same name
1250+
requirejson.Query(t, stdout, ".[0] | .library | .name", "\"USBHost\"")
1251+
requirejson.Query(t, stdout, ".[1] | .library | .name", "\"USBHost\"")
1252+
1253+
stdout, _, err = cli.Run("lib", "upgrade")
1254+
require.NoError(t, err)
1255+
// Empty output means nothing has been updated as expected
1256+
require.Empty(t, stdout)
1257+
}

test/test_lib.py

Lines changed: 0 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -204,35 +204,3 @@ def test_install_with_zip_path_multiple_libraries(run_command, downloads_dir, da
204204
# Verifies library are installed
205205
assert wifi_install_dir.exists()
206206
assert ble_install_dir.exists()
207-
208-
209-
def test_upgrade_does_not_try_to_upgrade_bundled_core_libraries(run_command, data_dir):
210-
test_platform_name = "platform_with_bundled_library"
211-
platform_install_dir = Path(data_dir, "packages", "arduino", "hardware", "arch", "4.2.0")
212-
platform_install_dir.mkdir(parents=True)
213-
214-
# Simulate installation of a platform with arduino-cli
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 == ""

0 commit comments

Comments
 (0)