@@ -2,10 +2,10 @@ import { createPromptConfigurationFixture } from '../../test/__fixtures__/prompt
22import { createPromptMessageFixture } from '../../test/__fixtures__/promptMessage'
33import { createPromptToolFixture } from '../../test/__fixtures__/promptTool'
44import { PromptMessageRoleEnum , PromptTool } from '../../types'
5- import { mapMessagesToOpenAI , mapPromptToOpenAIConfig , mapToolChoiceToOpenAI } from '../openAi'
5+ import { mapMessagesToOpenAIMessages , mapOpenAIMessagesToMessages , mapPromptToOpenAIConfig , mapToolChoiceToOpenAI } from '../openAi'
66
77describe ( 'openAi helpers' , ( ) => {
8- describe ( 'mapMessagesToOpenAI ' , ( ) => {
8+ describe ( 'mapMessagesToOpenAIMessages ' , ( ) => {
99 const mockMessages = [
1010 createPromptMessageFixture ( { role : PromptMessageRoleEnum . TOOL , content : 'content1' , toolCallId : 'id1' } ) ,
1111 createPromptMessageFixture ( { role : PromptMessageRoleEnum . ASSISTANT , content : 'content2' } ) ,
@@ -14,7 +14,7 @@ describe('openAi helpers', () => {
1414 ]
1515
1616 it ( 'should correctly map tool messages' , ( ) => {
17- const result = mapMessagesToOpenAI ( [ mockMessages [ 0 ] ] )
17+ const result = mapMessagesToOpenAIMessages ( [ mockMessages [ 0 ] ] )
1818 expect ( result [ 0 ] ) . toEqual ( {
1919 role : 'tool' ,
2020 content : 'content1' ,
@@ -23,7 +23,7 @@ describe('openAi helpers', () => {
2323 } )
2424
2525 it ( 'should correctly map assistant messages' , ( ) => {
26- const result = mapMessagesToOpenAI ( [ mockMessages [ 1 ] ] )
26+ const result = mapMessagesToOpenAIMessages ( [ mockMessages [ 1 ] ] )
2727 expect ( result [ 0 ] ) . toEqual ( {
2828 role : 'assistant' ,
2929 content : 'content2' ,
@@ -33,7 +33,7 @@ describe('openAi helpers', () => {
3333 } )
3434
3535 it ( 'should correctly map user messages' , ( ) => {
36- const result = mapMessagesToOpenAI ( [ mockMessages [ 2 ] ] )
36+ const result = mapMessagesToOpenAIMessages ( [ mockMessages [ 2 ] ] )
3737 expect ( result [ 0 ] ) . toEqual ( {
3838 role : 'user' ,
3939 name : undefined ,
@@ -42,22 +42,47 @@ describe('openAi helpers', () => {
4242 } )
4343
4444 it ( 'should correctly map system messages' , ( ) => {
45- const result = mapMessagesToOpenAI ( [ mockMessages [ 3 ] ] )
45+ const result = mapMessagesToOpenAIMessages ( [ mockMessages [ 3 ] ] )
4646 expect ( result [ 0 ] ) . toEqual ( {
4747 role : 'system' ,
4848 content : 'content4'
4949 } )
5050 } )
5151
5252 it ( 'should throw an error for invalid message roles' , ( ) => {
53- expect ( ( ) => mapMessagesToOpenAI ( [ createPromptMessageFixture ( { role : 'invalid' , content : 'content5' } as any ) ] ) ) . toThrow (
53+ expect ( ( ) => mapMessagesToOpenAIMessages ( [ createPromptMessageFixture ( { role : 'invalid' , content : 'content5' } as any ) ] ) ) . toThrow (
5454 'Invalid message role: invalid'
5555 )
5656 } )
5757
5858 // Additional test cases for missing fields and other edge cases can be added here.
5959 } )
6060
61+ describe ( 'mapOpenAIMessagesToMessages' , ( ) => {
62+ const mockMessages = [
63+ createPromptMessageFixture ( { role : PromptMessageRoleEnum . TOOL , content : 'content1' , toolCallId : 'id1' } ) ,
64+ createPromptMessageFixture ( { role : PromptMessageRoleEnum . ASSISTANT , content : 'content2' } ) ,
65+ createPromptMessageFixture ( { role : PromptMessageRoleEnum . USER , content : 'content3' } ) ,
66+ createPromptMessageFixture ( { role : PromptMessageRoleEnum . SYSTEM , content : 'content4' } )
67+ ]
68+
69+ it ( 'should correctly map tool messages' , ( ) => {
70+ expect ( mapOpenAIMessagesToMessages ( mapMessagesToOpenAIMessages ( [ mockMessages [ 0 ] ] ) ) ) . toEqual ( [ mockMessages [ 0 ] ] )
71+ } )
72+
73+ it ( 'should correctly map assistant messages' , ( ) => {
74+ expect ( mapOpenAIMessagesToMessages ( mapMessagesToOpenAIMessages ( [ mockMessages [ 1 ] ] ) ) ) . toEqual ( [ mockMessages [ 1 ] ] )
75+ } )
76+
77+ it ( 'should correctly map user messages' , ( ) => {
78+ expect ( mapOpenAIMessagesToMessages ( mapMessagesToOpenAIMessages ( [ mockMessages [ 2 ] ] ) ) ) . toEqual ( [ mockMessages [ 2 ] ] )
79+ } )
80+
81+ it ( 'should correctly map system messages' , ( ) => {
82+ expect ( mapOpenAIMessagesToMessages ( mapMessagesToOpenAIMessages ( [ mockMessages [ 3 ] ] ) ) ) . toEqual ( [ mockMessages [ 3 ] ] )
83+ } )
84+ } )
85+
6186 describe ( 'mapPromptToOpenAIConfig' , ( ) => {
6287 it ( 'should map the configuration to OpenAI parameters correctly' , ( ) => {
6388 const result = mapPromptToOpenAIConfig ( createPromptConfigurationFixture ( ) )
0 commit comments