commit | 852698ff78a9d1403eadaf63c5a0cd0b67db5bcc | [log] [tgz] |
---|---|---|
author | Jacob MacDonald <jakemac@google.com> | Thu Nov 05 12:42:08 2020 -0800 |
committer | GitHub <noreply@github.com> | Thu Nov 05 12:42:08 2020 -0800 |
tree | 6c9a8ad7410de039f861937febc2c4465e8ff755 | |
parent | ac318afe78261d491cef521cb98b64e5f9d05161 [diff] |
clean up some apis (#30) - drop support for Uri objects in DirectoryDescriptor.load - Use Object? instead of dynamic for `FileDescriptor` contents parameter - Remove `parents` param in DirectoryDescriptor.load
The test_descriptor
package provides a convenient, easy-to-read API for defining and verifying directory structures in tests.
We recommend that you import this library with the d
prefix. The d.dir()
and d.file()
functions are the main entrypoints. They define a filesystem structure that can be created using Descriptor.create()
and verified using Descriptor.validate()
. For example:
import 'dart:io'; import 'package:test_descriptor/test_descriptor.dart' as d; void main() { test("Directory.rename", () async { await d.dir("parent", [ d.file("sibling", "sibling-contents"), d.dir("old-name", [ d.file("child", "child-contents") ]) ]).create(); await new Directory("${d.sandbox}/parent/old-name") .rename("${d.sandbox}/parent/new-name"); await d.dir("parent", [ d.file("sibling", "sibling-contents"), d.dir("new-name", [ d.file("child", "child-contents") ]) ]).validate(); }); }
By default, descriptors create entries in a temporary sandbox directory, d.sandbox
. A new sandbox is automatically created the first time you create a descriptor in a given test, and automatically deleted once the test finishes running.
This package is term_glyph
aware. It will decide whether to use ASCII or Unicode glyphs based on the glyph.ascii
attribute.