@@ -2716,6 +2716,39 @@ func TestGetManifests_WithNoCache(t *testing.T) {
27162716 require .NoError (t , err )
27172717}
27182718
2719+ func TestGetManifests_SourceHydrator (t * testing .T ) {
2720+ testApp := newTestApp ()
2721+ testApp .Spec .SourceHydrator = & v1alpha1.SourceHydrator {
2722+ DrySource : v1alpha1.DrySource {
2723+ RepoURL : "https://github.com/org/dry-repo" ,
2724+ Path : "manifests/dry" ,
2725+ TargetRevision : "main" ,
2726+ },
2727+ SyncSource : v1alpha1.SyncSource {
2728+ Path : "manifests/sync" ,
2729+ },
2730+ }
2731+
2732+ appServer := newTestAppServer (t , testApp )
2733+
2734+ mockRepoServiceClient := mocks .RepoServerServiceClient {}
2735+
2736+ mockRepoServiceClient .On ("GenerateManifest" , mock .Anything , mock .MatchedBy (func (mr * apiclient.ManifestRequest ) bool {
2737+ return mr .Repo .Repo == "https://github.com/org/dry-repo" &&
2738+ mr .ApplicationSource .Path == "manifests/dry" &&
2739+ mr .Revision == "some-revision"
2740+ })).Return (& apiclient.ManifestResponse {}, nil )
2741+
2742+ appServer .repoClientset = & mocks.Clientset {RepoServerServiceClient : & mockRepoServiceClient }
2743+
2744+ _ , err := appServer .GetManifests (t .Context (), & application.ApplicationManifestQuery {
2745+ Name : & testApp .Name ,
2746+ Revision : ptr .To ("some-revision" ),
2747+ })
2748+ require .NoError (t , err )
2749+ mockRepoServiceClient .AssertExpectations (t )
2750+ }
2751+
27192752func TestRollbackApp (t * testing .T ) {
27202753 testApp := newTestApp ()
27212754 testApp .Status .History = []v1alpha1.RevisionHistory {{
0 commit comments