@@ -20,13 +20,13 @@ public void Setup() {
2020
2121 [ Test ]
2222 public async Task OneInterface ( ) {
23- var source = await ReadCSharpFile < IBird > ( ) ;
24- var generated = await ReadCSharpFile < BirdDecorator > ( ) ;
23+ var source = await ReadCSharpFile < IBird > ( true ) ;
24+ var generated = await ReadCSharpFile < BirdDecorator > ( true ) ;
2525
2626 await new VerifyCS . Test
2727 {
2828 TestState = {
29- ReferenceAssemblies = ReferenceAssemblies . Net . Net60 ,
29+ ReferenceAssemblies = ReferenceAssemblies . Net . Net90 ,
3030 AdditionalReferences =
3131 {
3232 implementationAssembly ,
@@ -42,13 +42,13 @@ public async Task OneInterface() {
4242
4343 [ Test ]
4444 public async Task OneInterface_Properties ( ) {
45- var source = await ReadCSharpFile < ILionProperties > ( ) ;
46- var generated = await ReadCSharpFile < LionPropertiesDecorator > ( ) ;
45+ var source = await ReadCSharpFile < ILionProperties > ( true ) ;
46+ var generated = await ReadCSharpFile < LionPropertiesDecorator > ( true ) ;
4747
4848 await new VerifyCS . Test
4949 {
5050 TestState = {
51- ReferenceAssemblies = ReferenceAssemblies . Net . Net60 ,
51+ ReferenceAssemblies = ReferenceAssemblies . Net . Net90 ,
5252 AdditionalReferences =
5353 {
5454 implementationAssembly ,
@@ -64,17 +64,17 @@ public async Task OneInterface_Properties() {
6464
6565 [ Test ]
6666 public async Task OneInterface_Constraints ( ) {
67- var source = await ReadCSharpFile < ITigerConstraints > ( ) ;
68- var generated = await ReadCSharpFile < TigerConstraintsDecorator > ( ) ;
67+ var source = await ReadCSharpFile < ITigerConstraints > ( true ) ;
68+ var generated = await ReadCSharpFile < TigerConstraintsDecorator > ( true ) ;
6969
7070 await new VerifyCS . Test
7171 {
7272 TestState = {
73- ReferenceAssemblies = ReferenceAssemblies . Net . Net60 ,
73+ ReferenceAssemblies = ReferenceAssemblies . Net . Net90 ,
7474 AdditionalReferences =
7575 {
7676 implementationAssembly ,
77- Assembly . GetExecutingAssembly ( )
77+ GetAssembly ( "TestLibrary" )
7878 } ,
7979 Sources = { source } ,
8080 GeneratedSources =
@@ -87,13 +87,13 @@ public async Task OneInterface_Constraints() {
8787
8888 [ Test ]
8989 public async Task OneInterface_NestedNamespace ( ) {
90- var source = await ReadCSharpFile < INested > ( ) ;
91- var generated = await ReadCSharpFile < NestedDecorator > ( ) ;
90+ var source = await ReadCSharpFile < INested > ( true ) ;
91+ var generated = await ReadCSharpFile < NestedDecorator > ( true ) ;
9292
9393 await new VerifyCS . Test
9494 {
9595 TestState = {
96- ReferenceAssemblies = ReferenceAssemblies . Net . Net60 ,
96+ ReferenceAssemblies = ReferenceAssemblies . Net . Net90 ,
9797 AdditionalReferences =
9898 {
9999 implementationAssembly ,
@@ -109,16 +109,16 @@ public async Task OneInterface_NestedNamespace() {
109109
110110 [ Test ]
111111 public async Task TwoInterfaces ( ) {
112- var sourceOne = await ReadCSharpFile < IBird > ( ) ;
113- var sourceTwo = await ReadCSharpFile < ICat > ( ) ;
112+ var sourceOne = await ReadCSharpFile < IBird > ( true ) ;
113+ var sourceTwo = await ReadCSharpFile < ICat > ( true ) ;
114114
115- var generatedOne = await ReadCSharpFile < BirdDecorator > ( ) ;
116- var generatedTwo = await ReadCSharpFile < CatDecorator > ( ) ;
115+ var generatedOne = await ReadCSharpFile < BirdDecorator > ( true ) ;
116+ var generatedTwo = await ReadCSharpFile < CatDecorator > ( true ) ;
117117
118118 await new VerifyCS . Test
119119 {
120120 TestState = {
121- ReferenceAssemblies = ReferenceAssemblies . Net . Net60 ,
121+ ReferenceAssemblies = ReferenceAssemblies . Net . Net90 ,
122122 AdditionalReferences =
123123 {
124124 implementationAssembly ,
@@ -135,19 +135,19 @@ public async Task TwoInterfaces() {
135135
136136 [ Test ]
137137 public async Task WrapperList ( ) {
138- var source = await ReadCSharpFile < IBird > ( ) ;
139- var wrapperList = await ReadCSharpFile < WrapperList > ( ) ;
140- var generated = await ReadCSharpFile < BirdDecorator > ( ) ;
141- var generatedThirdParty = await ReadCSharpFile < DynamoDBContextDecorator > ( ) ;
138+ var source = await ReadCSharpFile < IBird > ( true ) ;
139+ var wrapperList = await ReadCSharpFile < WrapperList > ( true ) ;
140+ var generated = await ReadCSharpFile < BirdDecorator > ( true ) ;
141+ var generatedThirdParty = await ReadCSharpFileByName ( true , "DynamoDBContextDecorator.generated" ) ;
142142
143143 await new VerifyCS . Test
144144 {
145145 TestState = {
146- ReferenceAssemblies = ReferenceAssemblies . Net . Net60 ,
146+ ReferenceAssemblies = ReferenceAssemblies . Net . Net90 ,
147147 AdditionalReferences =
148148 {
149149 implementationAssembly ,
150- GetAssembly ( "AWSSDK.DynamoDBv2" )
150+ Assembly . GetAssembly ( typeof ( DynamoDBContext ) ) ,
151151 } ,
152152 Sources = { wrapperList , source } ,
153153 GeneratedSources =
@@ -164,13 +164,32 @@ private static Assembly GetAssembly(string name) {
164164 return Assembly . Load ( implementationAssemblyName ) ;
165165 }
166166
167- private static async Task < string > ReadCSharpFile < T > ( ) {
168- var currentDirectory = Directory . GetParent ( Directory . GetParent ( AppDomain . CurrentDomain . BaseDirectory ) . Parent . Parent . FullName ) ;
167+ private static async Task < string > ReadCSharpFile < T > ( bool isTestLibrary ) {
168+ var filenameWithoutExtension = typeof ( T ) . Name ;
169+ return await ReadCSharpFileByName ( isTestLibrary , filenameWithoutExtension ) ;
170+ }
171+
172+ private static async Task < string > ReadCSharpFileByName ( bool isTestLibrary , string filenameWithoutExtension ) {
173+ var searchPattern = $ "{ filenameWithoutExtension } *.cs";
174+ return await ReadFile ( isTestLibrary , searchPattern ) ;
175+ }
176+
177+ private static async Task < string > ReadFile ( bool isTestLibrary , string searchPattern ) {
178+ var currentDirectory = GetCurrentDirectory ( ) ;
179+
180+ var targetDirectory = isTestLibrary ? GetTestLibraryDirectory ( currentDirectory ) : currentDirectory ;
169181
170- var searchPattern = $ "{ typeof ( T ) . Name } *.cs";
171- var file = currentDirectory . GetFiles ( searchPattern ) . First ( ) ;
182+ var file = targetDirectory . GetFiles ( searchPattern ) . First ( ) ;
172183
173184 using var fileReader = new StreamReader ( file . OpenRead ( ) ) ;
174185 return await fileReader . ReadToEndAsync ( ) ;
175186 }
176- }
187+
188+ private static DirectoryInfo ? GetCurrentDirectory ( ) {
189+ return Directory . GetParent ( Directory . GetParent ( AppDomain . CurrentDomain . BaseDirectory ) . Parent . Parent . FullName ) ;
190+ }
191+
192+ private static DirectoryInfo GetTestLibraryDirectory ( DirectoryInfo currentDirectory ) {
193+ return currentDirectory . Parent . GetDirectories ( "TestLibrary" ) . First ( ) ;
194+ }
195+ }
0 commit comments