You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
66 lines
2.6 KiB
Dart
66 lines
2.6 KiB
Dart
import 'dart:convert';
|
|
|
|
import 'package:flutter_test/flutter_test.dart';
|
|
import 'package:speech_to_text/speech_recognition_error.dart';
|
|
|
|
void main() {
|
|
const String msg1 = "msg1";
|
|
|
|
setUp(() {});
|
|
|
|
group('properties', () {
|
|
test('equals true for same object', () {
|
|
SpeechRecognitionError error = SpeechRecognitionError(msg1, false);
|
|
expect(error, error);
|
|
});
|
|
test('equals true for different object same values', () {
|
|
SpeechRecognitionError error1 = SpeechRecognitionError(msg1, false);
|
|
SpeechRecognitionError error2 = SpeechRecognitionError(msg1, false);
|
|
expect(error1, error2);
|
|
});
|
|
test('equals false for different object', () {
|
|
SpeechRecognitionError error1 = SpeechRecognitionError(msg1, false);
|
|
SpeechRecognitionError error2 = SpeechRecognitionError("msg2", false);
|
|
expect(error1, isNot(error2));
|
|
});
|
|
test('hash same for same object', () {
|
|
SpeechRecognitionError error = SpeechRecognitionError(msg1, false);
|
|
expect(error.hashCode, error.hashCode);
|
|
});
|
|
test('hash same for different object same values', () {
|
|
SpeechRecognitionError error1 = SpeechRecognitionError(msg1, false);
|
|
SpeechRecognitionError error2 = SpeechRecognitionError(msg1, false);
|
|
expect(error1.hashCode, error2.hashCode);
|
|
});
|
|
test('hash different for different object', () {
|
|
SpeechRecognitionError error1 = SpeechRecognitionError(msg1, false);
|
|
SpeechRecognitionError error2 = SpeechRecognitionError("msg2", false);
|
|
expect(error1.hashCode, isNot(error2.hashCode));
|
|
});
|
|
test('toString as expected', () {
|
|
SpeechRecognitionError error1 = SpeechRecognitionError(msg1, false);
|
|
expect(error1.toString(),
|
|
"SpeechRecognitionError msg: $msg1, permanent: false");
|
|
});
|
|
});
|
|
group('json', () {
|
|
test('loads properly', () {
|
|
var json = jsonDecode('{"errorMsg":"$msg1","permanent":true}');
|
|
SpeechRecognitionError error = SpeechRecognitionError.fromJson(json);
|
|
expect(error.errorMsg, msg1);
|
|
expect(error.permanent, isTrue);
|
|
json = jsonDecode('{"errorMsg":"$msg1","permanent":false}');
|
|
error = SpeechRecognitionError.fromJson(json);
|
|
expect(error.permanent, isFalse);
|
|
});
|
|
test('roundtrips properly', () {
|
|
var json = jsonDecode('{"errorMsg":"$msg1","permanent":true}');
|
|
SpeechRecognitionError error = SpeechRecognitionError.fromJson(json);
|
|
var roundtripJson = error.toJson();
|
|
SpeechRecognitionError roundtripError =
|
|
SpeechRecognitionError.fromJson(roundtripJson);
|
|
expect(error, roundtripError);
|
|
});
|
|
});
|
|
}
|