@@ -2552,4 +2552,53 @@ public void getNextVmHostAndDisplayNameHandlesNullGuestOS() {
25522552 Assert .assertTrue (result .first ().matches (vmHostNamePattern ));
25532553 Assert .assertEquals (result .first (), result .second ());
25542554 }
2555+
2556+ @ Test
2557+ public void trimsValidWindowsHostName () {
2558+ AutoScaleManagerImpl manager = new AutoScaleManagerImpl ();
2559+ String result = manager .getTrimmedHostNameForWindows ("ValidVMName1234" );
2560+ Assert .assertEquals ("ValidVMName1234" , result );
2561+ }
2562+
2563+ @ Test
2564+ public void trimsInvalidCharactersFromHostName () {
2565+ AutoScaleManagerImpl manager = new AutoScaleManagerImpl ();
2566+ String result = manager .getTrimmedHostNameForWindows ("Invalid@Host#Name!" );
2567+ Assert .assertEquals ("InvalidHostName" , result );
2568+ }
2569+
2570+ @ Test
2571+ public void ensuresHostNameStartsWithLetter () {
2572+ AutoScaleManagerImpl manager = new AutoScaleManagerImpl ();
2573+ String result = manager .getTrimmedHostNameForWindows ("123456789012345" );
2574+ Assert .assertTrue (Character .isLetter (result .charAt (0 )));
2575+ }
2576+
2577+ @ Test
2578+ public void prefixesWithLetterIfNoLetterExists () {
2579+ AutoScaleManagerImpl manager = new AutoScaleManagerImpl ();
2580+ String result = manager .getTrimmedHostNameForWindows ("1234567890-12345" );
2581+ Assert .assertEquals ("a34567890-12345" , result );
2582+ }
2583+
2584+ @ Test
2585+ public void trimsHostNameToLast15Characters () {
2586+ AutoScaleManagerImpl manager = new AutoScaleManagerImpl ();
2587+ String result = manager .getTrimmedHostNameForWindows ("ThisIsAReallyLongHost-Name_1234" );
2588+ Assert .assertEquals ("ngHost-Name1234" , result );
2589+ }
2590+
2591+ @ Test
2592+ public void handlesEmptyHostName () {
2593+ AutoScaleManagerImpl manager = new AutoScaleManagerImpl ();
2594+ String result = manager .getTrimmedHostNameForWindows ("" );
2595+ Assert .assertEquals ("" , result );
2596+ }
2597+
2598+ @ Test
2599+ public void handlesHostNameWithOnlyMostlyInvalidCharacters () {
2600+ AutoScaleManagerImpl manager = new AutoScaleManagerImpl ();
2601+ String result = manager .getTrimmedHostNameForWindows ("@#$%^&*() 1" );
2602+ Assert .assertEquals ("a1" , result );
2603+ }
25552604}
0 commit comments