JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://wzrd.in/standalone/expect@latest"></script>
<script src="https://wzrd.in/standalone/deep-diff@latest"></script>
<body>

</body>

Babel + JSX

document.body.innerHTML = 'Running tests';

const simpleObjectTest = () => {	
  const obj1 = {test: 1};
  const obj2 = {test: 2};
  const differences = deepDiff.diff(obj1, obj2);
  expect(differences).toExist();
  expect(differences[0].kind).toEqual('E');
  expect(differences[0].lhs).toEqual(1);
  expect(differences[0].rhs).toEqual(2);
  expect(differences[0].path[0]).toEqual('test');
};

const nestedTest = () => {	
  const obj1 = {
  	test: {
    	test1: 1
    }
  };
  const obj2 = {
  	test: {
    	test1: 2
    }
  };
  const differences = deepDiff.diff(obj1, obj2);
  expect(differences).toExist();
  expect(differences[0].path[1]).toEqual('test1');
};

const arrayTest = () => {	
  const obj1 = [1, 2, 3];
  const obj2 = [1, 3];
  const differences = deepDiff.diff(obj1, obj2);
  expect(differences).toExist();
  expect(differences[0].kind).toEqual('E');
  expect(differences[1].kind).toEqual('A');
  expect(differences[1].item.kind).toEqual('D');
};

const keyTest = () => {	
  const obj1 = {test: 1};
  const obj2 = {test2: 1};
  const differences = deepDiff.diff(obj1, obj2);
  expect(differences[0].kind).toEqual('D');
  expect(differences[1].kind).toEqual('N');
};

const sameTest = () => {	
  const obj1 = {test: 1};
  const obj2 = {test: 1};
  const differences = deepDiff.diff(obj1, obj2);
  expect(differences).toNotExist();
};

const functionTest = () => {	
  const obj1 = {test: () => 1};
  const obj2 = {test: () => 1};
  const differences = deepDiff.diff(obj1, obj2);
  expect(differences).toExist();
};

[simpleObjectTest, nestedTest, keyTest, arrayTest, sameTest, functionTest].forEach(test => test());
document.body.innerHTML = 'All tests passed';