blob: df0420aa2feab1e1b960e65eb00566ca00231ced [file] [log] [blame]
// Copyright (c) 2018, 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.
// @dart = 2.9
/// @assertion IOSink(StreamConsumer<List<int>> target,
/// { Encoding encoding: utf8 })
/// Create an [IOSink] that outputs to a target [StreamConsumer] of bytes.
/// @description Checks that new [IOSink] object with correct encoding is created
/// @author iarkh@unipro.ru
import "../../../Utils/expect.dart";
import "dart:async";
import "dart:io";
import "dart:convert";
main() {
IOSink sink = new IOSink(new StreamController(), encoding: utf8);
Expect.equals(utf8, sink.encoding);
sink.close();
sink = new IOSink(new StreamController(), encoding: ascii);
Expect.equals(ascii, sink.encoding);
sink.close();
sink = new IOSink(new StreamController(), encoding: latin1);
Expect.equals(latin1, sink.encoding);
sink.close();
sink = new IOSink(new StreamController(), encoding: systemEncoding);
Expect.equals(systemEncoding, sink.encoding);
sink.close();
sink = new IOSink(new StreamController(), encoding: null);
Expect.isNull(sink.encoding);
sink.close();
}