99using System . Web . Http . Controllers ;
1010using FluentAssertions ;
1111using JSONAPI . Core ;
12+ using JSONAPI . Http ;
1213using JSONAPI . Payload ;
1314using JSONAPI . Payload . Builders ;
1415using Microsoft . VisualStudio . TestTools . UnitTesting ;
@@ -45,13 +46,12 @@ public async Task Creates_single_resource_payload_for_registered_non_collection_
4546 var cancellationTokenSource = new CancellationTokenSource ( ) ;
4647
4748 var request = new HttpRequestMessage ( HttpMethod . Get , "https://www.example.com/fruits" ) ;
48- var mockRequestContext = new Mock < HttpRequestContext > ( ) ;
49- mockRequestContext . Setup ( c => c . VirtualPathRoot ) . Returns ( "https://www.example.com/fruits" ) ;
50- request . SetRequestContext ( mockRequestContext . Object ) ;
49+ var mockBaseUrlService = new Mock < IBaseUrlService > ( MockBehavior . Strict ) ;
50+ mockBaseUrlService . Setup ( s => s . GetBaseUrl ( request ) ) . Returns ( "https://www.example.com" ) ;
5151
5252 // Act
5353 var fallbackPayloadBuilder = new FallbackPayloadBuilder ( singleResourcePayloadBuilder . Object ,
54- mockQueryablePayloadBuilder . Object , mockResourceCollectionPayloadBuilder . Object ) ;
54+ mockQueryablePayloadBuilder . Object , mockResourceCollectionPayloadBuilder . Object , mockBaseUrlService . Object ) ;
5555 var resultPayload = await fallbackPayloadBuilder . BuildPayload ( objectContent , request , cancellationTokenSource . Token ) ;
5656
5757 // Assert
@@ -73,6 +73,9 @@ public async Task Creates_resource_collection_payload_for_queryables()
7373 var singleResourcePayloadBuilder = new Mock < ISingleResourcePayloadBuilder > ( MockBehavior . Strict ) ;
7474
7575 var request = new HttpRequestMessage ( ) ;
76+
77+ var mockBaseUrlService = new Mock < IBaseUrlService > ( MockBehavior . Strict ) ;
78+ mockBaseUrlService . Setup ( s => s . GetBaseUrl ( request ) ) . Returns ( "https://www.example.com/" ) ;
7679
7780 var cancellationTokenSource = new CancellationTokenSource ( ) ;
7881
@@ -85,7 +88,7 @@ public async Task Creates_resource_collection_payload_for_queryables()
8588
8689 // Act
8790 var fallbackPayloadBuilder = new FallbackPayloadBuilder ( singleResourcePayloadBuilder . Object ,
88- mockQueryablePayloadBuilder . Object , mockResourceCollectionPayloadBuilder . Object ) ;
91+ mockQueryablePayloadBuilder . Object , mockResourceCollectionPayloadBuilder . Object , mockBaseUrlService . Object ) ;
8992 var resultPayload = await fallbackPayloadBuilder . BuildPayload ( items , request , cancellationTokenSource . Token ) ;
9093
9194 // Assert
@@ -110,6 +113,9 @@ public async Task Creates_resource_collection_payload_for_non_queryable_enumerab
110113
111114 var request = new HttpRequestMessage ( HttpMethod . Get , "https://www.example.com/fruits" ) ;
112115
116+ var mockBaseUrlService = new Mock < IBaseUrlService > ( MockBehavior . Strict ) ;
117+ mockBaseUrlService . Setup ( s => s . GetBaseUrl ( request ) ) . Returns ( "https://www.example.com/" ) ;
118+
113119 var mockQueryablePayloadBuilder = new Mock < IQueryableResourceCollectionPayloadBuilder > ( MockBehavior . Strict ) ;
114120 var mockResourceCollectionPayloadBuilder = new Mock < IResourceCollectionPayloadBuilder > ( MockBehavior . Strict ) ;
115121 mockResourceCollectionPayloadBuilder
@@ -118,7 +124,7 @@ public async Task Creates_resource_collection_payload_for_non_queryable_enumerab
118124
119125 // Act
120126 var fallbackPayloadBuilder = new FallbackPayloadBuilder ( singleResourcePayloadBuilder . Object ,
121- mockQueryablePayloadBuilder . Object , mockResourceCollectionPayloadBuilder . Object ) ;
127+ mockQueryablePayloadBuilder . Object , mockResourceCollectionPayloadBuilder . Object , mockBaseUrlService . Object ) ;
122128 var resultPayload = await fallbackPayloadBuilder . BuildPayload ( items , request , cancellationTokenSource . Token ) ;
123129
124130 // Assert
0 commit comments