zefyr

fast_diff_test.dart 1.1KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. // Copyright (c) 2018, the Zefyr project authors. Please see the AUTHORS file
  2. // for details. All rights reserved. Use of this source code is governed by a
  3. // BSD-style license that can be found in the LICENSE file.
  4. import 'package:flutter_test/flutter_test.dart';
  5. import 'package:zefyr/src/fast_diff.dart';
  6. void main() {
  7. group('fastDiff', () {
  8. test('insert', () {
  9. var oldText = 'fastDiff';
  10. var newText = 'fasterDiff';
  11. var result = fastDiff(oldText, newText, 6);
  12. expect(result.start, 4);
  13. expect(result.deleted, "");
  14. expect(result.inserted, "er");
  15. expect("$result", 'DiffResult[4, "", "er"]');
  16. });
  17. test('delete', () {
  18. var oldText = 'fastDiff';
  19. var newText = 'fasDiff';
  20. var result = fastDiff(oldText, newText, 3);
  21. expect(result.start, 3);
  22. expect(result.deleted, "t");
  23. expect(result.inserted, "");
  24. });
  25. test('replace', () {
  26. var oldText = 'fastDiff';
  27. var newText = 'fas_Diff';
  28. var result = fastDiff(oldText, newText, 4);
  29. expect(result.start, 3);
  30. expect(result.deleted, "t");
  31. expect(result.inserted, "_");
  32. });
  33. });
  34. }