-
-
Notifications
You must be signed in to change notification settings - Fork 14
/
Copy pathcommit_test.dart
38 lines (32 loc) · 937 Bytes
/
commit_test.dart
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import 'dart:io';
import 'package:test/test.dart';
import 'package:dart_git/dart_git.dart';
import 'package:dart_git/plumbing/git_hash.dart';
import 'lib.dart';
void main() {
test(
'fixture mtime',
() async => testFixture(
'mtime',
'386de870a014e32234ce7f87e59a1beb06f720df',
'21d0abfb760ab8d62d293ff5a0e8ad87729d220b',
),
);
test(
'fixture merge',
() async => testFixture(
'merge',
'd377980616840997f6450f79c7b5f9701cf30ca3',
'd1fd63822c1497e93bae52d2b65acbb613c573ac',
),
);
}
Future<void> testFixture(String name, String headHash, String treeHash) async {
var gitDir = Directory.systemTemp.createTempSync('_git_').path;
await cloneGittedFixture(name, gitDir, GitHash(headHash));
var repo = GitRepository.load(gitDir);
var index = repo.indexStorage.readIndex();
var treeH = repo.writeTree(index);
expect(treeH, GitHash(treeHash));
repo.close();
}