import { expect } from 'chai';
import ChoroplethMap from '../ChoroplethMap.js';
var lodash = require('lodash');

describe(__filename, () => {
  context('ChoroplethMap', () => {
    const choroplethMapInstance = new ChoroplethMap();
    it('should instantiate object', () => {
      expect(choroplethMapInstance).to.be.an.instanceof(ChoroplethMap);
    })
    it('should have \"defaults\" attribute', () => {
      expect(choroplethMapInstance.defaults).to.exist;
    })
    it('should have these specific defaults', () => {
      expect(choroplethMapInstance.defaults).include.keys(
        'aspect',
        'domain',
        'margin',
        'data_format', 'onClick',
        'value',
        'color',
        'xFormat',
        'name',
        'maxBubbleValue',
        'maxBubbleRadius',
        'bubbleLegendRatio',
        'indicatorName'
      );
      expect(choroplethMapInstance.defaults.margin).keys('top', 'right', 'bottom', 'left');
    })
    it('should be extensible', () => {
      expect(choroplethMapInstance).to.be.extensible;
    })
    it('should have required methods', () => {
      expect(choroplethMapInstance).to.respondTo('initialize');
      expect(choroplethMapInstance).to.respondTo('getColor');
      expect(choroplethMapInstance).to.respondTo('update');
    })
  })
})
@@ -1287,15 +1287,276 @@
 %0A    %7D)%0A
+    it('should require correct number of parameters', () =%3E %7B%0A      expect(choroplethMapInstance.initialize.length).to.be.eq(3)%0A      expect(choroplethMapInstance.update.length).to.be.eq(2)%0A      expect(choroplethMapInstance.getColor.length).to.be.eq(2)%0A    %7D)%0A
   %7D)%0A%7D)

add test for method arity