On this page
IOOverrides class
Facilities for overriding various APIs of dart:io
with mock implementations.
This abstract base class should be extended with overrides for the operations needed to construct mocks. The implementations in this base class default to the actual dart:io
implementation. For example:
class MyDirectory implements Directory {
...
// An implementation of the Directory interface
...
}
void main() {
IOOverrides.runZoned(() {
...
// Operations will use MyDirectory instead of dart:io's Directory
// implementation whenever Directory is used.
...
}, createDirectory: (String path) => new MyDirectory(path));
}
Constructors
Properties
- hashCode → int
read-only, inherited
- The hash code for this object.
- runtimeType → Type
read-only, inherited
- A representation of the runtime type of the object.
- stderr → Stdout
read-only
- The standard output stream of errors written by this program.
- stdin → Stdin
read-only
- The standard input stream of data read by this program.
- stdout → Stdout
read-only
- The standard output stream of data written by this program.
Methods
- createDirectory(
String path) → Directory -
Creates a new Directory object for the given
path
. - createFile(
String path) → File -
Creates a new File object for the given
path
. - createLink(
String path) → Link -
Returns a new Link object for the given
path
. - fseGetType(
String path, bool followLinks) → Future< FileSystemEntityType> -
Asynchronously returns the
FileSystemEntityType
forpath
. - fseGetTypeSync(
String path, bool followLinks) → FileSystemEntityType -
Returns the FileSystemEntityType for
path
. - fseIdentical(
String path1, String path2) → Future< bool> -
Asynchronously returns
true
ifpath1
andpath2
are paths to the same file system object. - fseIdenticalSync(
String path1, String path2) → bool -
Returns
true
ifpath1
andpath2
are paths to the same file system object. - fsWatch(
String path, int events, bool recursive) → Stream< FileSystemEvent> -
Returns a Stream of
FileSystemEvent
s. - fsWatchIsSupported(
) → bool -
Returns
true
when FileSystemEntity.watch is supported. - getCurrentDirectory(
) → Directory - Returns the current working directory.
- getSystemTempDirectory(
) → Directory - Returns the system temporary directory.
- noSuchMethod(
Invocation invocation) → dynamic inherited - Invoked when a non-existent method or property is accessed.
- serverSocketBind(
dynamic address, int port, {int backlog = 0, bool v6Only = false, bool shared = false}) → Future< ServerSocket> -
Asynchronously returns a
ServerSocket
that connects to the given address and port when successful. - setCurrentDirectory(
String path) → void -
Sets the current working directory to be
path
. - socketConnect(
dynamic host, int port, {dynamic sourceAddress, int sourcePort = 0, Duration? timeout}) → Future< Socket> -
Asynchronously returns a
Socket
connected to the given host and port. - socketStartConnect(
dynamic host, int port, {dynamic sourceAddress, int sourcePort = 0}) → Future< ConnectionTask< Socket>> -
Asynchronously returns a
ConnectionTask
that connects to the given host and port when successful. - stat(
String path) → Future< FileStat> -
Asynchronously returns
FileStat
information forpath
. - statSync(
String path) → FileStat -
Returns FileStat information for
path
. - toString(
) → String inherited - A string representation of this object.
Operators
- operator ==(
Object other) → bool inherited - The equality operator.
Static Properties
- current → IOOverrides?
read-only
- global ← IOOverrides?
write-only
- The IOOverrides to use in the root Zone.
Static Methods
- runWithIOOverrides<
R>( R body(), IOOverrides overrides) → R -
Runs
body
in a fresh Zone using the overrides found inoverrides
. - runZoned<
R>( R body(), {Directory createDirectory(String)?, Directory getCurrentDirectory()?, void setCurrentDirectory(String)?, Directory getSystemTempDirectory()?, File createFile(String)?, Future< FileStat> stat(String)?, FileStat statSync(String)?, Future< bool> fseIdentical(String, String)?, bool fseIdenticalSync(String, String)?, Future< FileSystemEntityType> fseGetType(String, bool)?, FileSystemEntityType fseGetTypeSync(String, bool)?, Stream< FileSystemEvent> fsWatch(String, int, bool)?, bool fsWatchIsSupported()?, Link createLink(String)?, Future< Socket> socketConnect(dynamic, int, {dynamic sourceAddress, int sourcePort, Duration? timeout})?, Future< ConnectionTask< Socket>> socketStartConnect(dynamic, int, {dynamic sourceAddress, int sourcePort})?, Future< ServerSocket> serverSocketBind(dynamic, int, {int backlog, bool shared, bool v6Only})?, Stdin stdin()?, Stdout stdout()?, Stdout stderr()?}) → R -
Runs
body
in a fresh Zone using the provided overrides.
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-io/IOOverrides-class.html