Skip to content

Commit 0cf2617

Browse files
committed
test: fixes tests assuming config fluency
1 parent 18092d2 commit 0cf2617

File tree

1 file changed

+70
-67
lines changed

1 file changed

+70
-67
lines changed

tests/unit/Providers/Models/DTO/ModelConfigTest.php

Lines changed: 70 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ public function testDefaultConstructor(): void
5353
$this->assertNull($config->getLogprobs());
5454
$this->assertNull($config->getTopLogprobs());
5555
$this->assertNull($config->getTools());
56-
$this->assertNull($config->getCustomOptions());
56+
$this->assertEquals([], $config->getCustomOptions());
5757
}
5858

5959
/**
@@ -68,63 +68,63 @@ public function testSettersAndGetters(): void
6868

6969
// Test output modalities
7070
$modalities = [ModalityEnum::text(), ModalityEnum::image()];
71-
$this->assertSame($config, $config->setOutputModalities($modalities));
71+
$config->setOutputModalities($modalities);
7272
$this->assertEquals($modalities, $config->getOutputModalities());
7373

7474
// Test system instruction
7575
$instruction = 'You are a helpful assistant.';
76-
$this->assertSame($config, $config->setSystemInstruction($instruction));
76+
$config->setSystemInstruction($instruction);
7777
$this->assertEquals($instruction, $config->getSystemInstruction());
7878

7979
// Test candidate count
80-
$this->assertSame($config, $config->setCandidateCount(3));
80+
$config->setCandidateCount(3);
8181
$this->assertEquals(3, $config->getCandidateCount());
8282

8383
// Test max tokens
84-
$this->assertSame($config, $config->setMaxTokens(1000));
84+
$config->setMaxTokens(1000);
8585
$this->assertEquals(1000, $config->getMaxTokens());
8686

8787
// Test temperature
88-
$this->assertSame($config, $config->setTemperature(0.7));
88+
$config->setTemperature(0.7);
8989
$this->assertEquals(0.7, $config->getTemperature());
9090

9191
// Test top-p
92-
$this->assertSame($config, $config->setTopP(0.9));
92+
$config->setTopP(0.9);
9393
$this->assertEquals(0.9, $config->getTopP());
9494

9595
// Test top-k
96-
$this->assertSame($config, $config->setTopK(40));
96+
$config->setTopK(40);
9797
$this->assertEquals(40, $config->getTopK());
9898

9999
// Test stop sequences
100100
$stopSequences = ['\n\n', 'END'];
101-
$this->assertSame($config, $config->setStopSequences($stopSequences));
101+
$config->setStopSequences($stopSequences);
102102
$this->assertEquals($stopSequences, $config->getStopSequences());
103103

104104
// Test presence penalty
105-
$this->assertSame($config, $config->setPresencePenalty(0.5));
105+
$config->setPresencePenalty(0.5);
106106
$this->assertEquals(0.5, $config->getPresencePenalty());
107107

108108
// Test frequency penalty
109-
$this->assertSame($config, $config->setFrequencyPenalty(0.3));
109+
$config->setFrequencyPenalty(0.3);
110110
$this->assertEquals(0.3, $config->getFrequencyPenalty());
111111

112112
// Test logprobs
113-
$this->assertSame($config, $config->setLogprobs(true));
113+
$config->setLogprobs(true);
114114
$this->assertTrue($config->getLogprobs());
115115

116116
// Test top logprobs
117-
$this->assertSame($config, $config->setTopLogprobs(5));
117+
$config->setTopLogprobs(5);
118118
$this->assertEquals(5, $config->getTopLogprobs());
119119

120120
// Test tools
121121
$tools = [$tool];
122-
$this->assertSame($config, $config->setTools($tools));
122+
$config->setTools($tools);
123123
$this->assertEquals($tools, $config->getTools());
124124

125125
// Test custom options
126126
$customOptions = ['custom_param' => 'value', 'another_param' => 123];
127-
$this->assertSame($config, $config->setCustomOptions($customOptions));
127+
$config->setCustomOptions($customOptions);
128128
$this->assertEquals($customOptions, $config->getCustomOptions());
129129
}
130130

@@ -179,20 +179,20 @@ public function testToArrayAllProperties(): void
179179
$config = new ModelConfig();
180180
$tool = $this->createSampleTool();
181181

182-
$config->setOutputModalities([ModalityEnum::text(), ModalityEnum::audio()])
183-
->setSystemInstruction('Test instruction')
184-
->setCandidateCount(2)
185-
->setMaxTokens(500)
186-
->setTemperature(1.2)
187-
->setTopP(0.8)
188-
->setTopK(30)
189-
->setStopSequences(['STOP', 'END'])
190-
->setPresencePenalty(0.6)
191-
->setFrequencyPenalty(0.4)
192-
->setLogprobs(true)
193-
->setTopLogprobs(10)
194-
->setTools([$tool])
195-
->setCustomOptions(['key' => 'value']);
182+
$config->setOutputModalities([ModalityEnum::text(), ModalityEnum::audio()]);
183+
$config->setSystemInstruction('Test instruction');
184+
$config->setCandidateCount(2);
185+
$config->setMaxTokens(500);
186+
$config->setTemperature(1.2);
187+
$config->setTopP(0.8);
188+
$config->setTopK(30);
189+
$config->setStopSequences(['STOP', 'END']);
190+
$config->setPresencePenalty(0.6);
191+
$config->setFrequencyPenalty(0.4);
192+
$config->setLogprobs(true);
193+
$config->setTopLogprobs(10);
194+
$config->setTools([$tool]);
195+
$config->setCustomOptions(['key' => 'value']);
196196

197197
$array = $config->toArray();
198198

@@ -224,7 +224,9 @@ public function testToArrayNoProperties(): void
224224
$array = $config->toArray();
225225

226226
$this->assertIsArray($array);
227-
$this->assertEmpty($array);
227+
$this->assertCount(1, $array);
228+
$this->assertArrayHasKey('customOptions', $array);
229+
$this->assertEquals([], $array['customOptions']);
228230
}
229231

230232
/**
@@ -235,15 +237,16 @@ public function testToArrayNoProperties(): void
235237
public function testToArrayPartialProperties(): void
236238
{
237239
$config = new ModelConfig();
238-
$config->setTemperature(0.5)
239-
->setMaxTokens(100);
240+
$config->setTemperature(0.5);
241+
$config->setMaxTokens(100);
240242

241243
$array = $config->toArray();
242244

243245
$this->assertIsArray($array);
244-
$this->assertCount(2, $array);
246+
$this->assertCount(3, $array);
245247
$this->assertEquals(0.5, $array['temperature']);
246248
$this->assertEquals(100, $array['maxTokens']);
249+
$this->assertEquals([], $array['customOptions']);
247250
$this->assertArrayNotHasKey('systemInstruction', $array);
248251
$this->assertArrayNotHasKey('topP', $array);
249252
}
@@ -327,12 +330,12 @@ public function testFromArrayEmpty(): void
327330
public function testArrayRoundTrip(): void
328331
{
329332
$original = new ModelConfig();
330-
$original->setSystemInstruction('Round trip test')
331-
->setTemperature(0.75)
332-
->setMaxTokens(1500)
333-
->setStopSequences(['END', 'STOP'])
334-
->setLogprobs(true)
335-
->setCustomOptions(['test' => 'value']);
333+
$original->setSystemInstruction('Round trip test');
334+
$original->setTemperature(0.75);
335+
$original->setMaxTokens(1500);
336+
$original->setStopSequences(['END', 'STOP']);
337+
$original->setLogprobs(true);
338+
$original->setCustomOptions(['test' => 'value']);
336339

337340
$array = $original->toArray();
338341
$restored = ModelConfig::fromArray($array);
@@ -353,9 +356,9 @@ public function testArrayRoundTrip(): void
353356
public function testJsonSerialize(): void
354357
{
355358
$config = new ModelConfig();
356-
$config->setTemperature(0.8)
357-
->setMaxTokens(1000)
358-
->setSystemInstruction('JSON test');
359+
$config->setTemperature(0.8);
360+
$config->setMaxTokens(1000);
361+
$config->setSystemInstruction('JSON test');
359362

360363
$json = json_encode($config);
361364
$decoded = json_decode($json, true);
@@ -377,27 +380,27 @@ public function testExtremeValues(): void
377380
$config = new ModelConfig();
378381

379382
// Test minimum values
380-
$config->setTemperature(0.0)
381-
->setTopP(0.0)
382-
->setTopK(1)
383-
->setCandidateCount(1)
384-
->setMaxTokens(1)
385-
->setPresencePenalty(-2.0)
386-
->setFrequencyPenalty(-2.0);
383+
$config->setTemperature(0.0);
384+
$config->setTopP(0.0);
385+
$config->setTopK(1);
386+
$config->setCandidateCount(1);
387+
$config->setMaxTokens(1);
388+
$config->setPresencePenalty(-2.0);
389+
$config->setFrequencyPenalty(-2.0);
387390

388391
$array = $config->toArray();
389392
$this->assertEquals(0.0, $array['temperature']);
390393
$this->assertEquals(0.0, $array['topP']);
391394
$this->assertEquals(1, $array['topK']);
392395

393396
// Test maximum values
394-
$config->setTemperature(2.0)
395-
->setTopP(1.0)
396-
->setTopK(999999)
397-
->setCandidateCount(100)
398-
->setMaxTokens(999999)
399-
->setPresencePenalty(2.0)
400-
->setFrequencyPenalty(2.0);
397+
$config->setTemperature(2.0);
398+
$config->setTopP(1.0);
399+
$config->setTopK(999999);
400+
$config->setCandidateCount(100);
401+
$config->setMaxTokens(999999);
402+
$config->setPresencePenalty(2.0);
403+
$config->setFrequencyPenalty(2.0);
401404

402405
$array = $config->toArray();
403406
$this->assertEquals(2.0, $array['temperature']);
@@ -406,26 +409,27 @@ public function testExtremeValues(): void
406409
}
407410

408411
/**
409-
* Tests fluent interface method chaining.
412+
* Tests that setters properly set values.
410413
*
411414
* @return void
412415
*/
413-
public function testFluentInterface(): void
416+
public function testSettersProperlySetValues(): void
414417
{
415418
$config = new ModelConfig();
416419

417-
$result = $config
418-
->setSystemInstruction('test')
419-
->setTemperature(0.5)
420-
->setMaxTokens(100)
421-
->setTopP(0.9)
422-
->setTopK(40)
423-
->setLogprobs(true);
420+
$config->setSystemInstruction('test');
421+
$config->setTemperature(0.5);
422+
$config->setMaxTokens(100);
423+
$config->setTopP(0.9);
424+
$config->setTopK(40);
425+
$config->setLogprobs(true);
424426

425-
$this->assertSame($config, $result);
426427
$this->assertEquals('test', $config->getSystemInstruction());
427428
$this->assertEquals(0.5, $config->getTemperature());
428429
$this->assertEquals(100, $config->getMaxTokens());
430+
$this->assertEquals(0.9, $config->getTopP());
431+
$this->assertEquals(40, $config->getTopK());
432+
$this->assertTrue($config->getLogprobs());
429433
}
430434

431435
/**
@@ -478,4 +482,3 @@ public function testImplementsCorrectInterfaces(): void
478482
);
479483
}
480484
}
481-

0 commit comments

Comments
 (0)