@tobejacob/myextension
Version:
The example extension demonstrates how to contribute a custom widget (i.e. a view or editor) to Eclipse Theia. Furthermore, the template contains an example unit test.
33 lines • 1.35 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
require("reflect-metadata");
const core_1 = require("@theia/core");
const inversify_1 = require("@theia/core/shared/inversify");
const myextension_widget_1 = require("./myextension-widget");
const react_1 = require("@testing-library/react");
describe('MyextensionWidget', () => {
let widget;
beforeEach(async () => {
const module = new inversify_1.ContainerModule(bind => {
bind(core_1.MessageService).toConstantValue({
info(message) {
console.log(message);
}
});
bind(myextension_widget_1.MyextensionWidget).toSelf();
});
const container = new inversify_1.Container();
container.load(module);
widget = container.resolve(myextension_widget_1.MyextensionWidget);
});
it('should render react node correctly', async () => {
const element = (0, react_1.render)(widget.render());
expect(element.queryByText('Display Message')).toBeTruthy();
});
it('should inject \'MessageService\'', () => {
const spy = jest.spyOn(widget, 'displayMessage');
widget['displayMessage']();
expect(spy).toBeCalled();
});
});
//# sourceMappingURL=myextension-widget.test.js.map