- Add VariableSpec class with magnitude field validation - Add Formula class supporting multiple input/output variables - Support d4rt_code as string or object with code field - Add comprehensive tests for parsing and serialization - Fix broken test import in pruebas_d4rt_test.dart Follows README.md format requirements exactly
24 lines
831 B
Dart
24 lines
831 B
Dart
// Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
|
|
// for details. All rights reserved. Use of this source code is governed by a
|
|
// BSD-style license that can be found in the LICENSE file.
|
|
|
|
import 'dart:typed_data';
|
|
|
|
import 'package:crypto/crypto.dart';
|
|
import 'package:test/test.dart';
|
|
|
|
/// Asserts that an HMAC using [hash] returns [mac] for [input] and [key].
|
|
void expectHmacEquals(Hash hash, List<int> input, List<int> key, String mac) {
|
|
var hmac = Hmac(hash, key);
|
|
expect(hmac.convert(input).toString(), startsWith(mac));
|
|
}
|
|
|
|
final toupleMatch = RegExp('([0-9a-fA-F]{2})');
|
|
|
|
Uint8List bytesFromHexString(String message) {
|
|
var bytes = <int>[];
|
|
for (var match in toupleMatch.allMatches(message)) {
|
|
bytes.add(int.parse(match.group(0)!, radix: 16));
|
|
}
|
|
return Uint8List.fromList(bytes);
|
|
}
|