У меня есть фабрика. Его цель - облегчить внедрение зависимости. Это выглядит примерно так:
import SomeImportantObject from "./SomeImportantObject"
import DataInterface from "./DataInterface"
class NoodleFactory {
this.dependency: SomeImportantObject
constructor(dependency: SomeImportantObject) {
// Dependencies.
this.dependency = dependency;
}
create(data: DataInterface) {
return new Noodle(data, this.dependency);
}
}
Я создавал для него тест, чтобы убедиться, что он правильно создает объекты. Тест очень похож на:
data = {
// Data.
}
mockDependency = "a mocked dependency."
testNoodleFactory = new NoodleFactory(mockDependency);
const expected = new Noodle(data, mockDependency);
const actual = testNoodleFactory.create(data);
test("Factory creates noodles", () => {
expect(actual).toMatchObject(expected);
});
Когда я запускаю тест, я получаю следующую ошибку:
@@ -1,6 +1,6 @@
- Noodle {
+ Object {
Все внутренние данные совпадают.
Что такое вызывая разные типы объектов?