import Vue from 'vue';
import '../docs/src/demo-common';
import Locale from '../packages/locale';
import { mount, later } from './utils';

const empty = {
  render(h) {
    return h('div', [this.$slots.default]);
  },
  inheritAttrs: false
};

Vue.component('demo-block', empty);
Vue.component('demo-section', empty);

export default function (Demo: any) {
  test('renders demo correctly', async () => {
    if (Demo.i18n) {
      Locale.add(Demo.i18n);
    }

    const wrapper = mount(Demo);

    await later();

    expect(wrapper).toMatchSnapshot();
  });
}