@@ -85,13 +85,43 @@ private AzureSqlContext MakeExampleContext(bool frozen = false)
8585 [ Test ]
8686 [ TestCase ( false ) ]
8787 [ TestCase ( true ) ]
88- public void Clone_Typed ( bool frozen )
88+ public void Clone_Constructor ( bool frozen )
89+ {
90+ var original = MakeExampleContext ( frozen ) ;
91+
92+ var clone = new AzureSqlContext ( original ) ;
93+
94+ ShouldBeClone ( clone , original ) ;
95+ }
96+
97+ [ Test ]
98+ [ TestCase ( false ) ]
99+ [ TestCase ( true ) ]
100+ public void Clone_Concrete ( bool frozen )
89101 {
90102 var original = MakeExampleContext ( frozen ) ;
91103
92104 var clone = original . Clone ( ) ;
93105
94- clone . ShouldNotBeNull ( ) ;
106+ ShouldBeClone ( clone , original ) ;
107+ }
108+
109+ [ Test ]
110+ [ TestCase ( false ) ]
111+ [ TestCase ( true ) ]
112+ public void Clone_Abstract ( bool frozen )
113+ {
114+ var original = MakeExampleContext ( frozen ) ;
115+
116+ var clone = ( ( ICloneable ) original ) . Clone ( ) ;
117+
118+ ShouldBeClone ( clone , original ) ;
119+ }
120+
121+ private static void ShouldBeClone ( object ? obj , AzureSqlContext original )
122+ {
123+ var clone = obj . ShouldBeOfType < AzureSqlContext > ( ) ;
124+
95125 clone . ShouldNotBeSameAs ( original ) ;
96126
97127 // Invariants
@@ -199,6 +229,18 @@ public void Property_Set_Frozen(PropertyInfo property, object? value)
199229 . Message . ShouldStartWith ( "The context is frozen and cannot be modified." ) ;
200230 }
201231
232+ [ Test ]
233+ public void IsLocal_Get ( )
234+ {
235+ var context = new AzureSqlContext
236+ {
237+ ServerResourceGroupName = "rg" ,
238+ ServerResourceName = "srv" ,
239+ } ;
240+
241+ context . IsLocal . ShouldBeFalse ( ) ;
242+ }
243+
202244 [ Test ]
203245 public void EncryptionMode_Set ( )
204246 {
0 commit comments