@@ -511,26 +511,48 @@ public void GenerateSasUri(TableClient client, TableSharedKeyCredential cred)
511511 CollectionAssert . Contains ( actualSas . Segments , TableName ) ;
512512 }
513513
514- private static IEnumerable < object [ ] > TableClientsAllCtors ( )
514+ private static IEnumerable < object [ ] > TableClientsAllCtors ( bool useEmulator )
515515 {
516- var sharedKeyCred = new TableSharedKeyCredential ( AccountName , Secret ) ;
516+ Uri url ;
517+ string connectionString ;
518+ TableSharedKeyCredential sharedKeyCred ;
519+
520+ if ( useEmulator )
521+ {
522+ url = new Uri ( "http://127.0.0.1:10002/devstoreaccount1" ) ;
523+ connectionString = "UseDevelopmentStorage=true" ;
524+ sharedKeyCred = new TableSharedKeyCredential ( "devstoreaccount1" , "Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==" ) ;
525+ }
526+ else
527+ {
528+ url = _url ;
529+ connectionString = $ "DefaultEndpointsProtocol=https;AccountName={ AccountName } ;AccountKey={ Secret } ;TableEndpoint=https://{ AccountName } .table.core.windows.net/;";
530+ sharedKeyCred = new TableSharedKeyCredential ( AccountName , Secret ) ;
531+ }
532+
517533 var tokenCred = new MockCredential ( ) ;
518- var connString = $ "DefaultEndpointsProtocol=https;AccountName={ AccountName } ;AccountKey={ Secret } ;TableEndpoint=https://{ AccountName } .table.core.windows.net/;";
519534 var sasCred = new AzureSasCredential ( signature ) ;
520- var fromTableServiceClient = new TableServiceClient ( _url , sharedKeyCred ) . GetTableClient ( TableName ) ;
535+ var fromTableServiceClient = new TableServiceClient ( url , sharedKeyCred ) . GetTableClient ( TableName ) ;
521536
522- yield return new object [ ] { new TableClient ( connString , TableName ) } ;
523- yield return new object [ ] { new TableClient ( _url , TableName , sharedKeyCred ) } ;
524- yield return new object [ ] { new TableClient ( _url , TableName , tokenCred ) } ;
525- yield return new object [ ] { new TableClient ( _url , sasCred ) } ;
526- yield return new object [ ] { new TableClient ( new Uri ( $ "{ _url } ?{ signature } ") ) } ;
537+ yield return new object [ ] { new TableClient ( connectionString , TableName ) } ;
538+ yield return new object [ ] { new TableClient ( url , TableName , sharedKeyCred ) } ;
539+ yield return new object [ ] { new TableClient ( url , TableName , tokenCred ) } ;
540+ yield return new object [ ] { new TableClient ( url , sasCred ) } ;
541+ yield return new object [ ] { new TableClient ( new Uri ( $ "{ url } ?{ signature } ") ) } ;
527542 yield return new object [ ] { fromTableServiceClient } ;
528543 }
529544
530- [ TestCaseSource ( nameof ( TableClientsAllCtors ) ) ]
545+ [ TestCaseSource ( nameof ( TableClientsAllCtors ) , new object [ ] { false } ) ]
531546 public void UriPropertyIsPopulated ( TableClient client )
532547 {
533- Assert . AreEqual ( $ "{ _url } { TableName } ", client . Uri . AbsoluteUri ) ;
548+ Assert . AreEqual ( _urlWithTableName , client . Uri ) ;
549+ Assert . That ( client . Uri . AbsoluteUri , Does . Not . Contain ( signature ) ) ;
550+ }
551+
552+ [ TestCaseSource ( nameof ( TableClientsAllCtors ) , new object [ ] { true } ) ]
553+ public void UriPropertyIsPopulatedForEmulator ( TableClient client )
554+ {
555+ Assert . AreEqual ( new Uri ( "http://127.0.0.1:10002/devstoreaccount1/" + TableName ) , client . Uri ) ;
534556 Assert . That ( client . Uri . AbsoluteUri , Does . Not . Contain ( signature ) ) ;
535557 }
536558
0 commit comments