reporter_test.dart 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import 'package:test/test.dart';
  2. import 'package:xterm/src/core/mouse/reporter.dart';
  3. import 'package:xterm/xterm.dart';
  4. void main() {
  5. group('MouseReporter', () {
  6. test('report() supports normal mode', () {
  7. final output = MouseReporter.report(
  8. TerminalMouseButton.left,
  9. TerminalMouseButtonState.down,
  10. CellOffset(0, 0),
  11. MouseReportMode.normal,
  12. );
  13. expect(output, equals('\x1B[M !"'));
  14. });
  15. test('report() supports utf mode', () {
  16. final output = MouseReporter.report(
  17. TerminalMouseButton.left,
  18. TerminalMouseButtonState.down,
  19. CellOffset(0, 0),
  20. MouseReportMode.utf,
  21. );
  22. expect(output, equals('\x1B[M !"'));
  23. });
  24. test('report() supports sgr mode', () {
  25. final output = MouseReporter.report(
  26. TerminalMouseButton.left,
  27. TerminalMouseButtonState.down,
  28. CellOffset(0, 0),
  29. MouseReportMode.sgr,
  30. );
  31. expect(output, equals('\x1B[<0;1;1M'));
  32. });
  33. test('report() supports urxvt mode', () {
  34. final output = MouseReporter.report(
  35. TerminalMouseButton.left,
  36. TerminalMouseButtonState.down,
  37. CellOffset(0, 0),
  38. MouseReportMode.urxvt,
  39. );
  40. expect(output, equals('\x1B[32;1;1M'));
  41. });
  42. });
  43. }