import React from 'react';
import { mount, shallow } from 'enzyme';
import { expect } from 'chai';
import assert from 'assert';

import Domains from '../src/js/popup/domains.js'

/*
*  Tests for Domains component in src/js/popup/domains.js.
*/
describe('<Domains />', function() {
    it('should have props for container and handling removeDomain()', function () {
        const wrapper = shallow(<Domains />);
    });

    describe('addDomain(domain)', function() {
        it('should successfully add domain to container', function() {
            assert(true);
        });
    });

    describe('storeDomain(validDomain, container)', function() {
        it('should successfully add container to localStorage', function() {
            assert(true);
        });
    });

    describe('getIndex(value, key)', function() {
        it('should successfully retrieve index of domain in container', function() {
            assert(true);
        });
    });

    describe('getIndex(value, key)', function() {
        it('should fail to retrieve index of domain in container', function() {
            assert(true);
        });
    });

    describe('removeDomain(id)', function() {
        it('should successfully remove domain from container', function() {
            assert(true);
        });
    });
});

@@ -282,71 +282,178 @@
     
-it('should have props for container and handling removeDomain()
+before(function () %7B%0A        global.chrome = chrome;%0A    %7D);%0A    it('should have addDomain(), storeDomain(), removeDomain(), getIndex() binded and initial container state
 ', f
@@ -511,16 +511,305 @@
 ns /%3E);%0A
+        expect(wrapper.state().container).to.be.defined;%0A        expect(wrapper.state().addDomain).to.be.defined;%0A        expect(wrapper.state().storeDomain).to.be.defined;%0A        expect(wrapper.state().removeDomain).to.be.defined;%0A        expect(wrapper.state().getIndex).to.be.defined;%0A
     %7D);%0A
@@ -966,32 +966,192 @@
    %7D);%0A    %7D);%0A%0A
+    describe('addDomain(domain)', function() %7B%0A        it('should fail to add domain to container', function() %7B%0A            assert(true);%0A        %7D);%0A    %7D);%0A%0A
     describe('st
@@ -1849,13 +1849,177 @@
 %0A    %7D);
+%0A%0A    describe('removeDomain(id)', function() %7B%0A        it('should fail to remove domain from container', function() %7B%0A            assert(true);%0A        %7D);%0A    %7D);
 %0A%7D);%0A

update domains test suite skeleton