@@ -723,6 +723,12 @@ func TestEntitlements(t *testing.T) {
723
723
return true
724
724
})).
725
725
Return (int64 (175 ),nil )
726
+ mDB .EXPECT ().
727
+ GetWorkspaces (gomock .Any (),gomock .Any ()).
728
+ Return ([]database.GetWorkspacesRow {},nil )
729
+ mDB .EXPECT ().
730
+ GetTemplatesWithFilter (gomock .Any (),gomock .Any ()).
731
+ Return ([]database.Template {},nil )
726
732
727
733
entitlements ,err := license .Entitlements (context .Background (),mDB ,1 ,0 ,coderdenttest .Keys ,all )
728
734
require .NoError (t ,err )
@@ -766,6 +772,7 @@ func TestLicenseEntitlements(t *testing.T) {
766
772
codersdk .FeatureUserRoleManagement :true ,
767
773
codersdk .FeatureAccessControl :true ,
768
774
codersdk .FeatureControlSharedPorts :true ,
775
+ codersdk .FeatureWorkspaceExternalAgent :true ,
769
776
}
770
777
771
778
legacyLicense := func ()* coderdenttest.LicenseOptions {
@@ -1109,6 +1116,32 @@ func TestLicenseEntitlements(t *testing.T) {
1109
1116
assert .Equal (t ,int64 (200 ),* feature .Actual )
1110
1117
},
1111
1118
},
1119
+ {
1120
+ Name :"ExternalWorkspace" ,
1121
+ Licenses : []* coderdenttest.LicenseOptions {
1122
+ enterpriseLicense ().UserLimit (100 ),
1123
+ },
1124
+ Arguments : license.FeatureArguments {
1125
+ ExternalWorkspaceCount :1 ,
1126
+ },
1127
+ AssertEntitlements :func (t * testing.T ,entitlements codersdk.Entitlements ) {
1128
+ assert .Equal (t ,codersdk .EntitlementEntitled ,entitlements .Features [codersdk .FeatureWorkspaceExternalAgent ].Entitlement )
1129
+ assert .True (t ,entitlements .Features [codersdk .FeatureWorkspaceExternalAgent ].Enabled )
1130
+ },
1131
+ },
1132
+ {
1133
+ Name :"ExternalTemplate" ,
1134
+ Licenses : []* coderdenttest.LicenseOptions {
1135
+ enterpriseLicense ().UserLimit (100 ),
1136
+ },
1137
+ Arguments : license.FeatureArguments {
1138
+ ExternalTemplateCount :1 ,
1139
+ },
1140
+ AssertEntitlements :func (t * testing.T ,entitlements codersdk.Entitlements ) {
1141
+ assert .Equal (t ,codersdk .EntitlementEntitled ,entitlements .Features [codersdk .FeatureWorkspaceExternalAgent ].Entitlement )
1142
+ assert .True (t ,entitlements .Features [codersdk .FeatureWorkspaceExternalAgent ].Enabled )
1143
+ },
1144
+ },
1112
1145
}
1113
1146
1114
1147
for _ ,tc := range testCases {