diff --git a/src/pkg/path/category_type.go b/src/pkg/path/category_type.go index 6dff9ebeb..113491ae9 100644 --- a/src/pkg/path/category_type.go +++ b/src/pkg/path/category_type.go @@ -28,6 +28,7 @@ const ( DetailsCategory CategoryType = 8 // details ChannelMessagesCategory CategoryType = 9 // channelMessages ConversationPostsCategory CategoryType = 10 // conversationPosts + ChatsCategory CategoryType = 11 // chats ) var strToCat = map[string]CategoryType{ @@ -41,6 +42,7 @@ var strToCat = map[string]CategoryType{ strings.ToLower(DetailsCategory.String()): DetailsCategory, strings.ToLower(ChannelMessagesCategory.String()): ChannelMessagesCategory, strings.ToLower(ConversationPostsCategory.String()): ConversationPostsCategory, + strings.ToLower(ChatsCategory.String()): ChatsCategory, } func ToCategoryType(s string) CategoryType { @@ -63,6 +65,7 @@ var catToHuman = map[CategoryType]string{ DetailsCategory: "Details", ChannelMessagesCategory: "Messages", ConversationPostsCategory: "Posts", + ChatsCategory: "Chats", } // HumanString produces a more human-readable string version of the category. @@ -100,6 +103,9 @@ var serviceCategories = map[ServiceType]map[CategoryType]struct{}{ ConversationPostsCategory: {}, LibrariesCategory: {}, }, + ChatsService: { + ChatsCategory: {}, + }, } func validateServiceAndCategoryStrings(s, c string) (ServiceType, CategoryType, error) { diff --git a/src/pkg/path/category_type_test.go b/src/pkg/path/category_type_test.go index 639eccb60..7333b9a8e 100644 --- a/src/pkg/path/category_type_test.go +++ b/src/pkg/path/category_type_test.go @@ -35,6 +35,7 @@ func (suite *CategoryTypeUnitSuite) TestToCategoryType() { {input: "details", expect: 8}, {input: "channelmessages", expect: 9}, {input: "conversationposts", expect: 10}, + {input: "chats", expect: 11}, } for _, test := range table { suite.Run(test.input, func() { @@ -62,6 +63,7 @@ func (suite *CategoryTypeUnitSuite) TestHumanString() { {input: 8, expect: "Details"}, {input: 9, expect: "Messages"}, {input: 10, expect: "Posts"}, + {input: 11, expect: "Chats"}, } for _, test := range table { suite.Run(test.input.String(), func() { diff --git a/src/pkg/path/categorytype_string.go b/src/pkg/path/categorytype_string.go index 98abbbed5..4b2c9126e 100644 --- a/src/pkg/path/categorytype_string.go +++ b/src/pkg/path/categorytype_string.go @@ -19,11 +19,12 @@ func _() { _ = x[DetailsCategory-8] _ = x[ChannelMessagesCategory-9] _ = x[ConversationPostsCategory-10] + _ = x[ChatsCategory-11] } -const _CategoryType_name = "UnknownCategoryemailcontactseventsfileslistslibrariespagesdetailschannelMessagesconversationPosts" +const _CategoryType_name = "UnknownCategoryemailcontactseventsfileslistslibrariespagesdetailschannelMessagesconversationPostschats" -var _CategoryType_index = [...]uint8{0, 15, 20, 28, 34, 39, 44, 53, 58, 65, 80, 97} +var _CategoryType_index = [...]uint8{0, 15, 20, 28, 34, 39, 44, 53, 58, 65, 80, 97, 102} func (i CategoryType) String() string { if i < 0 || i >= CategoryType(len(_CategoryType_index)-1) { diff --git a/src/pkg/path/service_category_test.go b/src/pkg/path/service_category_test.go index 2d98ed49c..2b1f59935 100644 --- a/src/pkg/path/service_category_test.go +++ b/src/pkg/path/service_category_test.go @@ -118,6 +118,14 @@ func (suite *ServiceCategoryUnitSuite) TestValidateServiceAndCategory() { expectedCategory: LibrariesCategory, check: assert.NoError, }, + { + name: "ChatsChats", + service: ChatsService.String(), + category: ChatsCategory.String(), + expectedService: ChatsService, + expectedCategory: ChatsCategory, + check: assert.NoError, + }, } for _, test := range table { suite.Run(test.name, func() { diff --git a/src/pkg/path/service_type.go b/src/pkg/path/service_type.go index 37445eaa4..c3c523a72 100644 --- a/src/pkg/path/service_type.go +++ b/src/pkg/path/service_type.go @@ -23,39 +23,38 @@ type ServiceType int //go:generate stringer -type=ServiceType -linecomment const ( UnknownService ServiceType = 0 - ExchangeService ServiceType = 1 // exchange - OneDriveService ServiceType = 2 // onedrive - SharePointService ServiceType = 3 // sharepoint - ExchangeMetadataService ServiceType = 4 // exchangeMetadata - OneDriveMetadataService ServiceType = 5 // onedriveMetadata - SharePointMetadataService ServiceType = 6 // sharepointMetadata - GroupsService ServiceType = 7 // groups - GroupsMetadataService ServiceType = 8 // groupsMetadata + ExchangeService ServiceType = 1 // exchange + OneDriveService ServiceType = 2 // onedrive + SharePointService ServiceType = 3 // sharepoint + ExchangeMetadataService ServiceType = 4 // exchangeMetadata + OneDriveMetadataService ServiceType = 5 // onedriveMetadata + SharePointMetadataService ServiceType = 6 // sharepointMetadata + GroupsService ServiceType = 7 // groups + GroupsMetadataService ServiceType = 8 // groupsMetadata + ChatsService ServiceType = 9 // chats + ChatsMetadataService ServiceType = 10 // chatsMetadata ) -func ToServiceType(service string) ServiceType { - s := strings.ToLower(service) +var strToSvc = map[string]ServiceType{ + ExchangeService.String(): ExchangeService, + ExchangeMetadataService.String(): ExchangeMetadataService, + OneDriveService.String(): OneDriveService, + OneDriveMetadataService.String(): OneDriveMetadataService, + SharePointService.String(): SharePointService, + SharePointMetadataService.String(): SharePointMetadataService, + GroupsService.String(): GroupsService, + GroupsMetadataService.String(): GroupsMetadataService, + ChatsService.String(): ChatsService, + ChatsMetadataService.String(): ChatsMetadataService, +} - switch s { - case strings.ToLower(ExchangeService.String()): - return ExchangeService - case strings.ToLower(OneDriveService.String()): - return OneDriveService - case strings.ToLower(SharePointService.String()): - return SharePointService - case strings.ToLower(GroupsService.String()): - return GroupsService - case strings.ToLower(ExchangeMetadataService.String()): - return ExchangeMetadataService - case strings.ToLower(OneDriveMetadataService.String()): - return OneDriveMetadataService - case strings.ToLower(SharePointMetadataService.String()): - return SharePointMetadataService - case strings.ToLower(GroupsMetadataService.String()): - return GroupsMetadataService - default: - return UnknownService +func ToServiceType(service string) ServiceType { + st, ok := strToSvc[strings.ToLower(service)] + if !ok { + st = UnknownService } + + return st } var serviceToHuman = map[ServiceType]string{ @@ -63,6 +62,7 @@ var serviceToHuman = map[ServiceType]string{ OneDriveService: "OneDrive", SharePointService: "SharePoint", GroupsService: "Groups", + ChatsService: "Chats", } // HumanString produces a more human-readable string version of the service. diff --git a/src/pkg/path/servicetype_string.go b/src/pkg/path/servicetype_string.go index 6fa499364..53bbcf887 100644 --- a/src/pkg/path/servicetype_string.go +++ b/src/pkg/path/servicetype_string.go @@ -17,11 +17,13 @@ func _() { _ = x[SharePointMetadataService-6] _ = x[GroupsService-7] _ = x[GroupsMetadataService-8] + _ = x[ChatsService-9] + _ = x[ChatsMetadataService-10] } -const _ServiceType_name = "UnknownServiceexchangeonedrivesharepointexchangeMetadataonedriveMetadatasharepointMetadatagroupsgroupsMetadata" +const _ServiceType_name = "UnknownServiceexchangeonedrivesharepointexchangeMetadataonedriveMetadatasharepointMetadatagroupsgroupsMetadatachatschatsMetadata" -var _ServiceType_index = [...]uint8{0, 14, 22, 30, 40, 56, 72, 90, 96, 110} +var _ServiceType_index = [...]uint8{0, 14, 22, 30, 40, 56, 72, 90, 96, 110, 115, 128} func (i ServiceType) String() string { if i < 0 || i >= ServiceType(len(_ServiceType_index)-1) {