diff --git a/core/tests/Drupal/Tests/Component/Diff/DiffEngineTest.php b/core/tests/Drupal/Tests/Component/Diff/DiffEngineTest.php
new file mode 100644
index 0000000..97c1f57
--- /dev/null
+++ b/core/tests/Drupal/Tests/Component/Diff/DiffEngineTest.php
@@ -0,0 +1,79 @@
+<?php
+
+/**
+ * @file
+ * Contains \Drupal\Tests\Component\DiffEngineTest.
+ */
+
+namespace Drupal\Tests\Component;
+
+use Drupal\Tests\UnitTestCase;
+
+/**
+ * Tests the DiffEngine class.
+ */
+class DiffEngineTest extends UnitTestCase {
+
+    /**
+     * Lines array to use for testing.
+     *
+     * @var array
+     */
+    protected $lines1;
+
+    /**
+     * Lines array to use for testing.
+     *
+     * @var array
+     */
+    protected $lines2;
+
+    public static function getInfo() {
+        return array(
+            'name' => 'DiffEngine',
+            'description' => 'Tests the DiffEngine class.',
+            'group' => 'System',
+        );
+    }
+
+    function setUp() {
+        parent::setUp();
+
+        $this->lines1 = array(
+            'Hello World',
+            'I am an original line'
+        );
+
+        $this->lines2 = array(
+            'Hello World',
+            'I am a new line',
+            'I am an original line'
+        );
+    }
+
+    /**
+     * Tests Diff::Diff().
+     */
+    public function testDiff() {
+        define('DRUPAL_ROOT', __DIR__ .'/../../../../../../');
+        require_once DRUPAL_ROOT . '/core/lib/Drupal/Component/Diff/DiffEngine.php';
+
+        $diff = new \Diff($this->lines1, $this->lines2);
+
+        $expected = array(
+            new \_DiffOp_Copy(array('Hello World')),
+            new \_DiffOp_Add(array('I am a new line')),
+            new \_DiffOp_Copy(array('I am an original line'))
+        );
+
+        $this->assertCount(count($expected), $diff->edits);
+
+        foreach($diff->edits as $key => $diffObject) {
+            $this->assertInstanceOf(get_class($expected[$key]), $diffObject);
+            $this->assertSame($expected[$key]->orig, $diffObject->orig);
+            $this->assertSame($expected[$key]->closing, $diffObject->closing);
+        }
+
+    }
+
+}
