@@ -1024,3 +1024,41 @@ func TestLibExamplesWithPdeFile(t *testing.T) {
1024
1024
require .Contains (t , examples , cli .SketchbookDir ().Join ("libraries" , "Encoder" , "examples" , "SpeedTest" ).String ())
1025
1025
require .Contains (t , examples , cli .SketchbookDir ().Join ("libraries" , "Encoder" , "examples" , "TwoKnobs" ).String ())
1026
1026
}
1027
+
1028
+ func TestLibExamplesWithCaseMismatch (t * testing.T ) {
1029
+ env , cli := integrationtest .CreateArduinoCLIWithEnvironment (t )
1030
+ defer env .CleanUp ()
1031
+
1032
+ _ , _ , err := cli .Run ("update" )
1033
+ require .NoError (t , err )
1034
+
1035
+ _ ,
_ ,
err = cli .
Run (
"lib" ,
"install" ,
"[email protected] " )
1036
+ require .NoError (t , err )
1037
+
1038
+ stdout , _ , err := cli .Run ("lib" , "examples" , "WiFiManager" , "--format" , "json" )
1039
+ require .NoError (t , err )
1040
+ requirejson .Len (t , stdout , 1 )
1041
+ requirejson .Query (t , stdout , ".[0] | .examples | length" , "14" )
1042
+
1043
+ examples := requirejson .Parse (t , stdout ).Query (".[0] | .examples" ).String ()
1044
+ examples = strings .ReplaceAll (examples , "\\ \\ " , "\\ " )
1045
+ examplesPath := cli .SketchbookDir ().Join ("libraries" , "WiFiManager" , "examples" )
1046
+ // Verifies sketches with correct casing are listed
1047
+ require .Contains (t , examples , examplesPath .Join ("Advanced" ).String ())
1048
+ require .Contains (t , examples , examplesPath .Join ("AutoConnect" , "AutoConnectWithFeedbackLED" ).String ())
1049
+ require .Contains (t , examples , examplesPath .Join ("AutoConnect" , "AutoConnectWithFSParameters" ).String ())
1050
+ require .Contains (t , examples , examplesPath .Join ("AutoConnect" , "AutoConnectWithFSParametersAndCustomIP" ).String ())
1051
+ require .Contains (t , examples , examplesPath .Join ("Basic" ).String ())
1052
+ require .Contains (t , examples , examplesPath .Join ("DEV" , "OnDemandConfigPortal" ).String ())
1053
+ require .Contains (t , examples , examplesPath .Join ("NonBlocking" , "AutoConnectNonBlocking" ).String ())
1054
+ require .Contains (t , examples , examplesPath .Join ("NonBlocking" , "AutoConnectNonBlockingwParams" ).String ())
1055
+ require .Contains (t , examples , examplesPath .Join ("Old_examples" , "AutoConnectWithFeedback" ).String ())
1056
+ require .Contains (t , examples , examplesPath .Join ("Old_examples" , "AutoConnectWithReset" ).String ())
1057
+ require .Contains (t , examples , examplesPath .Join ("Old_examples" , "AutoConnectWithStaticIP" ).String ())
1058
+ require .Contains (t , examples , examplesPath .Join ("Old_examples" , "AutoConnectWithTimeout" ).String ())
1059
+ require .Contains (t , examples , examplesPath .Join ("OnDemand" , "OnDemandConfigPortal" ).String ())
1060
+ require .Contains (t , examples , examplesPath .Join ("ParamsChildClass" ).String ())
1061
+ // Verifies sketches with wrong casing are not returned
1062
+ require .NotContains (t , examples , examplesPath .Join ("NonBlocking" , "OnDemandNonBlocking" ).String ())
1063
+ require .NotContains (t , examples , examplesPath .Join ("OnDemand" , "OnDemandWebPortal" ).String ())
1064
+ }
0 commit comments