mirror of
https://github.com/SkinnyMind/libgit2dart.git
synced 2025-05-05 04:39:07 -04:00
test(config): add tests
This commit is contained in:
parent
53fe671bff
commit
3aa322ea59
2 changed files with 67 additions and 0 deletions
|
@ -10,6 +10,7 @@ dependencies:
|
||||||
dev_dependencies:
|
dev_dependencies:
|
||||||
pedantic: ^1.11.0
|
pedantic: ^1.11.0
|
||||||
ffigen: ^3.1.0-dev.1
|
ffigen: ^3.1.0-dev.1
|
||||||
|
test: ^1.17.5
|
||||||
|
|
||||||
ffigen:
|
ffigen:
|
||||||
output: "lib/src/libgit2_bindings.dart"
|
output: "lib/src/libgit2_bindings.dart"
|
||||||
|
|
66
test/config_test.dart
Normal file
66
test/config_test.dart
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
import 'dart:io';
|
||||||
|
|
||||||
|
import 'package:test/test.dart';
|
||||||
|
import 'package:libgit2dart/src/util.dart';
|
||||||
|
import 'package:libgit2dart/src/config.dart';
|
||||||
|
|
||||||
|
void main() {
|
||||||
|
const configFileName = 'test_config';
|
||||||
|
group('Config', () {
|
||||||
|
setUpAll(() {
|
||||||
|
libgit2.git_libgit2_init();
|
||||||
|
});
|
||||||
|
|
||||||
|
setUp(() {
|
||||||
|
File('${Directory.current.path}/test/$configFileName').writeAsStringSync(
|
||||||
|
'[core]\n\trepositoryformatversion = 0\n\tbare = false\n[remote "origin"]\n\turl = someurl');
|
||||||
|
});
|
||||||
|
|
||||||
|
tearDown(() {
|
||||||
|
File('${Directory.current.path}/test/$configFileName').deleteSync();
|
||||||
|
});
|
||||||
|
|
||||||
|
tearDownAll(() {
|
||||||
|
libgit2.git_libgit2_shutdown();
|
||||||
|
});
|
||||||
|
|
||||||
|
test('opens file successfully', () {
|
||||||
|
final config = Config();
|
||||||
|
expect(config, isA<Config>());
|
||||||
|
config.close();
|
||||||
|
});
|
||||||
|
|
||||||
|
test('opens file successfully with provided path', () {
|
||||||
|
final config = Config(path: 'test/$configFileName');
|
||||||
|
expect(config, isA<Config>());
|
||||||
|
config.close();
|
||||||
|
});
|
||||||
|
|
||||||
|
test('gets entries of file', () {
|
||||||
|
final config = Config(path: 'test/$configFileName');
|
||||||
|
expect(config.entries['core.repositoryformatversion'], equals('0'));
|
||||||
|
config.close();
|
||||||
|
});
|
||||||
|
|
||||||
|
test('sets boolean value for provided key', () {
|
||||||
|
final config = Config(path: 'test/$configFileName');
|
||||||
|
config.setEntry('core.bare', true);
|
||||||
|
expect(config.entries['core.bare'], equals('true'));
|
||||||
|
config.close();
|
||||||
|
});
|
||||||
|
|
||||||
|
test('sets integer value for provided key', () {
|
||||||
|
final config = Config(path: 'test/$configFileName');
|
||||||
|
config.setEntry('core.repositoryformatversion', 1);
|
||||||
|
expect(config.entries['core.repositoryformatversion'], equals('1'));
|
||||||
|
config.close();
|
||||||
|
});
|
||||||
|
|
||||||
|
test('sets string value for provided key', () {
|
||||||
|
final config = Config(path: 'test/$configFileName');
|
||||||
|
config.setEntry('remote.origin.url', 'updated');
|
||||||
|
expect(config.entries['remote.origin.url'], equals('updated'));
|
||||||
|
config.close();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue