Skip to content

Commit cff45b6

Browse files
committed
Fix getUnreferencedManagedResources tests
1 parent 8ec6487 commit cff45b6

File tree

2 files changed

+39
-31
lines changed

2 files changed

+39
-31
lines changed

src/cmd/cli/command/compose.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ func isManagedService(service compose.ServiceConfig) bool {
2727
return service.Extensions["x-defang-static-files"] != nil || service.Extensions["x-defang-redis"] != nil || service.Extensions["x-defang-postgres"] != nil
2828
}
2929

30-
func GetUnreferencedManagedResources(serviceInfos compose.Services) []string {
30+
func getUnreferencedManagedResources(serviceInfos compose.Services) []string {
3131
managedResources := make([]string, 0)
3232
for _, service := range serviceInfos {
3333
if isManagedService(service) {
@@ -65,7 +65,7 @@ func makeComposeUpCmd() *cobra.Command {
6565

6666
printPlaygroundPortalServiceURLs(deploy.Services)
6767

68-
var managedResources = GetUnreferencedManagedResources(project.Services)
68+
var managedResources = getUnreferencedManagedResources(project.Services)
6969
if len(managedResources) > 0 {
7070
term.Warnf("Defang cannot monitor status of the following managed service(s): %v.\n To check if the managed service is up, check the status of the service which depends on it.", managedResources)
7171
}

src/cmd/cli/command/compose_test.go

Lines changed: 37 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -3,75 +3,83 @@ package command
33
import (
44
"testing"
55

6-
defangv1 "github.com/DefangLabs/defang/src/protos/io/defang/v1"
6+
"github.com/compose-spec/compose-go/v2/types"
77
)
88

99
func TestGetUnreferencedManagedResources(t *testing.T) {
1010

1111
t.Run("no services", func(t *testing.T) {
12-
project := []*defangv1.ServiceInfo{}
13-
managed := GetUnreferencedManagedResources(project)
12+
project := types.Services{}
13+
14+
managed := getUnreferencedManagedResources(project)
1415
if len(managed) != 0 {
1516
t.Errorf("Expected 0 managed resources, got %d (%v)", len(managed), managed)
1617
}
1718
})
1819

1920
t.Run("one service all managed", func(t *testing.T) {
20-
project := []*defangv1.ServiceInfo{}
21-
project = append(project, &defangv1.ServiceInfo{
22-
Service: &defangv1.ServiceID{Name: "service1", Postgres: &defangv1.Postgres{}}})
21+
project := types.Services{
22+
"service1": types.ServiceConfig{
23+
Extensions: map[string]any{"x-defang-postgres": true},
24+
},
25+
}
2326

24-
managed := GetUnreferencedManagedResources(project)
27+
managed := getUnreferencedManagedResources(project)
2528
if len(managed) != 1 {
2629
t.Errorf("Expected 1 managed resource, got %d (%v)", len(managed), managed)
2730
}
2831
})
2932

3033
t.Run("one service unmanaged", func(t *testing.T) {
31-
project := []*defangv1.ServiceInfo{}
32-
project = append(project, &defangv1.ServiceInfo{
33-
Service: &defangv1.ServiceID{Name: "service1"}})
34+
project := types.Services{
35+
"service1": types.ServiceConfig{},
36+
}
3437

35-
managed := GetUnreferencedManagedResources(project)
38+
managed := getUnreferencedManagedResources(project)
3639
if len(managed) != 0 {
3740
t.Errorf("Expected 0 managed resource, got %d (%v)", len(managed), managed)
3841
}
3942
})
4043

4144
t.Run("one service unmanaged, one service managed", func(t *testing.T) {
42-
project := []*defangv1.ServiceInfo{}
43-
project = append(project, &defangv1.ServiceInfo{
44-
Service: &defangv1.ServiceID{Name: "service1"}})
45-
project = append(project, &defangv1.ServiceInfo{
46-
Service: &defangv1.ServiceID{Name: "service2", Postgres: &defangv1.Postgres{}}})
45+
project := types.Services{
46+
"service1": types.ServiceConfig{},
47+
"service2": types.ServiceConfig{
48+
Extensions: map[string]any{"x-defang-postgres": true},
49+
},
50+
}
4751

48-
managed := GetUnreferencedManagedResources(project)
52+
managed := getUnreferencedManagedResources(project)
4953
if len(managed) != 1 {
5054
t.Errorf("Expected 1 managed resource, got %d (%v)", len(managed), managed)
5155
}
5256
})
5357

5458
t.Run("two service two unmanaged", func(t *testing.T) {
55-
project := []*defangv1.ServiceInfo{}
56-
project = append(project, &defangv1.ServiceInfo{
57-
Service: &defangv1.ServiceID{Name: "service1"}})
58-
project = append(project, &defangv1.ServiceInfo{
59-
Service: &defangv1.ServiceID{Name: "service2"}})
59+
project := types.Services{
60+
"service1": types.ServiceConfig{},
61+
"service2": types.ServiceConfig{},
62+
}
6063

61-
managed := GetUnreferencedManagedResources(project)
64+
managed := getUnreferencedManagedResources(project)
6265
if len(managed) != 0 {
6366
t.Errorf("Expected 0 managed resource, got %d (%v)", len(managed), managed)
6467
}
6568
})
6669

6770
t.Run("one service two managed", func(t *testing.T) {
68-
project := []*defangv1.ServiceInfo{}
69-
project = append(project, &defangv1.ServiceInfo{
70-
Service: &defangv1.ServiceID{Name: "service1", Postgres: &defangv1.Postgres{}, Redis: &defangv1.Redis{}}})
71+
project := types.Services{
72+
"service1": types.ServiceConfig{
73+
Extensions: map[string]any{"x-defang-postgres": true},
74+
},
75+
"service2": types.ServiceConfig{
76+
Extensions: map[string]any{"x-defang-redis": true},
77+
},
78+
}
7179

72-
managed := GetUnreferencedManagedResources(project)
73-
if len(managed) != 1 {
74-
t.Errorf("Expected 1 managed resource, got %d (%s)", len(managed), managed)
80+
managed := getUnreferencedManagedResources(project)
81+
if len(managed) != 2 {
82+
t.Errorf("Expected 2 managed resource, got %d (%s)", len(managed), managed)
7583
}
7684
})
7785
}

0 commit comments

Comments
 (0)