@@ -46,19 +46,31 @@ void canBuildNewDataLoaders() {
4646
4747 @ Test
4848 void theDataLoaderCanTransform () {
49- DataLoader <String , Object > dataLoader1 = DataLoaderFactory .newDataLoader (batchLoader1 , defaultOptions );
50- assertThat (dataLoader1 .getOptions (), equalTo (defaultOptions ));
51- assertThat (dataLoader1 .getBatchLoadFunction (), equalTo (batchLoader1 ));
49+ DataLoader <String , Object > dataLoaderOrig = DataLoaderFactory .newDataLoader (batchLoader1 , defaultOptions );
50+ assertThat (dataLoaderOrig .getOptions (), equalTo (defaultOptions ));
51+ assertThat (dataLoaderOrig .getBatchLoadFunction (), equalTo (batchLoader1 ));
5252 //
5353 // we can transform the data loader
5454 //
55- DataLoader <String , Object > dataLoader2 = dataLoader1 .transform (it -> {
55+ DataLoader <String , Object > dataLoaderTransformed = dataLoaderOrig .transform (it -> {
5656 it .options (differentOptions );
5757 it .batchLoadFunction (batchLoader2 );
5858 });
5959
60- assertThat (dataLoader2 , not (equalTo (dataLoader1 )));
61- assertThat (dataLoader2 .getOptions (), equalTo (differentOptions ));
62- assertThat (dataLoader2 .getBatchLoadFunction (), equalTo (batchLoader2 ));
60+ assertThat (dataLoaderTransformed , not (equalTo (dataLoaderOrig )));
61+ assertThat (dataLoaderTransformed .getOptions (), equalTo (differentOptions ));
62+ assertThat (dataLoaderTransformed .getBatchLoadFunction (), equalTo (batchLoader2 ));
63+
64+ // can copy values
65+ dataLoaderOrig = DataLoaderFactory .newDataLoader (batchLoader1 , defaultOptions );
66+
67+ dataLoaderTransformed = dataLoaderOrig .transform (it -> {
68+ it .batchLoadFunction (batchLoader2 );
69+ });
70+
71+ assertThat (dataLoaderTransformed , not (equalTo (dataLoaderOrig )));
72+ assertThat (dataLoaderTransformed .getOptions (), equalTo (defaultOptions ));
73+ assertThat (dataLoaderTransformed .getBatchLoadFunction (), equalTo (batchLoader2 ));
74+
6375 }
6476}
0 commit comments