@@ -659,27 +659,47 @@ func TestInstallWithGitUrlFragmentAsBranch(t *testing.T) {
659659 _ , _ , err := cli .RunWithCustomEnv (envVar , "config" , "init" , "--dest-dir" , "." )
660660 require .NoError (t , err )
661661
662- libInstallDir := cli .SketchbookDir ().Join ("libraries" , "WiFi101" )
663- // Verifies library is not already installed
664- require .NoDirExists (t , libInstallDir .String ())
662+ t .Run ("InvalidRef" , func (t * testing.T ) {
663+ // Test that a bad ref fails
664+ _ , _ , err = cli .Run ("lib" , "install" , "--git-url" , "https://github.com/arduino-libraries/WiFi101.git#x-ref-does-not-exist" , "--config-file" , "arduino-cli.yaml" )
665+ require .Error (t , err )
666+ })
665667
666- gitUrl := "https://github.com/arduino-libraries/WiFi101.git"
668+ t .Run ("RefPointingToATag" , func (t * testing.T ) {
669+ gitUrl := "https://github.com/arduino-libraries/WiFi101.git"
670+ libInstallDir := cli .SketchbookDir ().Join ("libraries" , "WiFi101" ).String ()
667671
668- // Test that a bad ref fails
669- _ , _ , err = cli .Run ("lib" , "install" , "--git-url" , gitUrl + "#x-ref-does-not-exist" , "--config-file" , "arduino-cli.yaml" )
670- require .Error (t , err )
672+ // Verifies library is not already installed
673+ require .NoDirExists (t , libInstallDir )
671674
672- // Verifies library is installed in expected path
673- _ , _ , err = cli .Run ("lib" , "install" , "--git-url" , gitUrl + "#0.16.0" , "--config-file" , "arduino-cli.yaml" )
674- require .NoError (t , err )
675- require .DirExists (t , libInstallDir . String () )
675+ // Verifies library is installed in expected path
676+ _ , _ , err = cli .Run ("lib" , "install" , "--git-url" , gitUrl + "#0.16.0" , "--config-file" , "arduino-cli.yaml" )
677+ require .NoError (t , err )
678+ require .DirExists (t , libInstallDir )
676679
677- // Reinstall library at an existing ref
678- _ , _ , err = cli .Run ("lib" , "install" , "--git-url" , gitUrl + "#master" , "--config-file" , "arduino-cli.yaml" )
679- require .NoError (t , err )
680+ // Reinstall library at an existing ref
681+ _ , _ , err = cli .Run ("lib" , "install" , "--git-url" , gitUrl + "#master" , "--config-file" , "arduino-cli.yaml" )
682+ require .NoError (t , err )
680683
681- // Verifies library remains installed
682- require .DirExists (t , libInstallDir .String ())
684+ // Verifies library remains installed
685+ require .DirExists (t , libInstallDir )
686+ })
687+
688+ t .Run ("RefPointingToBranch" , func (t * testing.T ) {
689+ libInstallDir := cli .SketchbookDir ().Join ("libraries" , "ArduinoCloud" )
690+
691+ // Verify install with ref pointing to a branch
692+ require .NoDirExists (t , libInstallDir .String ())
693+ _ , _ , err = cli .Run ("lib" , "install" , "--git-url" , "https://github.com/arduino-libraries/ArduinoCloud.git#revert-2-typos" , "--config-file" , "arduino-cli.yaml" )
694+ require .NoError (t , err )
695+ require .DirExists (t , libInstallDir .String ())
696+
697+ // Verify that the correct branch is checked out
698+ // https://github.com/arduino-libraries/ArduinoCloud/commit/d098d4647967b3aeb4520e7baf279e4225254dd2
699+ fileToTest , err := libInstallDir .Join ("src" , "ArduinoCloudThingBase.h" ).ReadFile ()
700+ require .NoError (t , err )
701+ require .Contains (t , string (fileToTest ), `#define LENGHT_M "meters"` ) // nolint:misspell
702+ })
683703}
684704
685705func TestUpdateIndex (t * testing.T ) {
0 commit comments