Skip to content

Commit

Permalink
testRegisterModelToEncoding
Browse files Browse the repository at this point in the history
  • Loading branch information
danny50610 committed Aug 20, 2023
1 parent d3efb63 commit 6affbe7
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 1 deletion.
2 changes: 1 addition & 1 deletion src/EncodingFactory.php
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ class EncodingFactory
public static function registerModelToEncoding(string $modelName, string $encodingName)
{
if (array_key_exists($modelName, self::$modelToEncoding)) {
throw new Exception("{$modelName} already exists");
throw new InvalidArgumentException("\"{$modelName}\" already exists in map");
}

self::$modelToEncoding[$modelName] = $encodingName;
Expand Down
16 changes: 16 additions & 0 deletions tests/EncodingFactoryTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,22 @@ public function testCreateByModelNameWithNonExist()
EncodingFactory::createByModelName('danny');
}

public function testRegisterModelToEncoding()
{
EncodingFactory::registerModelToEncoding('gpt-9000', 'cl100k_base');

$enc = EncodingFactory::createByModelName('gpt-9000');
$this->assertSame('cl100k_base', $enc->getName());
}

public function testRegisterModelToEncodingAlreadyExists()
{
$this->expectException(InvalidArgumentException::class);
$this->expectExceptionMessage('"gpt-4" already exists in map');

EncodingFactory::registerModelToEncoding('gpt-4', 'cl100k_base');
}

public function testRegisterEncoding()
{
EncodingFactory::registerEncoding('danny', function () {
Expand Down

0 comments on commit 6affbe7

Please sign in to comment.