wix-storybook-utils
Version:
Utilities for automated component documentation within Storybook
101 lines • 3.63 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var flatten_1 = require("./flatten");
var drivers_1 = require("./drivers");
describe('DriverDocumentation', function () {
var driver = (0, drivers_1.createDriverDocumentationDriver)();
it('has h2 for name', function () {
var descriptor = [];
driver.create({
descriptor: descriptor,
title: 'a',
});
expect(driver.get.tag('name')).toBe('h2');
});
describe('case when there is a name but no descriptor', function () {
beforeEach(function () {
driver.create({
descriptor: [],
title: 'a',
});
});
it('has a name', function () {
expect(driver.get.name()).toBe('a');
});
});
describe('shallow driver descriptor', function () {
var name = 'name';
describe('single item in the descriptor', function () {
it('renders fields documentation for a given descriptor', function () {
var descriptor = [
{
name: 'click',
args: [],
type: 'function',
},
];
driver.create({
descriptor: descriptor,
name: name,
});
expect(driver.get
.fields()
.get.at(0)
.get.name()).toBe('click');
});
});
describe('multiple items in the descriptor', function () {
it('renders fields documentation for value and function descriptors', function () {
var descriptor = [
{
name: 'click',
args: [],
type: 'function',
},
{
name: 'some-value',
args: [],
type: 'value',
},
];
driver.create({ name: name, descriptor: descriptor });
descriptor.forEach(function (item, index) {
expect(driver.get
.fields()
.get.at(index)
.get.name()).toBe(item.name);
});
expect(driver.get.fields().get.count()).toBe(descriptor.length);
});
});
});
describe('deep driver descriptor', function () {
var name = 'nested';
it('renders a flattened out fields documentation', function () {
var nestedDescriptor = [
{
type: 'object',
name: 'wrapper',
props: [
{
name: 'click',
args: [],
type: 'function',
},
{
name: 'some-value',
args: [],
type: 'value',
},
],
},
];
driver.create({ name: name, descriptor: nestedDescriptor });
var fields = driver.get.allFields();
(0, flatten_1.flatten)(nestedDescriptor).forEach(function (item, index) {
expect(fields[index].get.name()).toBe(item.name);
});
});
});
});
//# sourceMappingURL=driver-documentation.test.js.map