a575963da9
Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
76 lines
1.4 KiB
C#
76 lines
1.4 KiB
C#
//
|
|
// TextWriterTest.cs
|
|
//
|
|
// Author:
|
|
// Atsushi Enomoto <atsushi@ximian.com>
|
|
//
|
|
// Copyright (C) 2004 Novell (http://www.novell.com)
|
|
//
|
|
|
|
using System;
|
|
using System.Globalization;
|
|
using System.IO;
|
|
using System.Text;
|
|
using NUnit.Framework;
|
|
|
|
namespace MonoTests.System.IO
|
|
{
|
|
[TestFixture]
|
|
public class TextWriterTest
|
|
{
|
|
class MyTextWriter : TextWriter
|
|
{
|
|
public override Encoding Encoding { get { return Encoding.Default; } }
|
|
|
|
internal MyTextWriter ()
|
|
: base (CultureInfo.InvariantCulture)
|
|
{
|
|
}
|
|
|
|
public void UpdateLine ()
|
|
{
|
|
CoreNewLine = new char [] {'Z'};
|
|
}
|
|
|
|
public void UpdateLine2 ()
|
|
{
|
|
CoreNewLine [0] = 'Y';
|
|
}
|
|
}
|
|
|
|
[Test]
|
|
public void CoreNewLine ()
|
|
{
|
|
MyTextWriter w = new MyTextWriter ();
|
|
Assert.IsNotNull (w.NewLine);
|
|
|
|
w.UpdateLine ();
|
|
Assert.AreEqual ('Z', w.NewLine [0]);
|
|
|
|
w.UpdateLine2 ();
|
|
Assert.AreEqual ('Y', w.NewLine [0]);
|
|
}
|
|
|
|
class ArrayOrCharTester : TextWriter {
|
|
public bool called_array;
|
|
public override Encoding Encoding { get { return Encoding.UTF8; }}
|
|
|
|
public override void Write (char [] x, int a, int b)
|
|
{
|
|
called_array = true;
|
|
}
|
|
public override void Write (char c)
|
|
{
|
|
}
|
|
}
|
|
|
|
[Test]
|
|
public void TestCharArrayCallsArrayIntInt ()
|
|
{
|
|
ArrayOrCharTester x = new ArrayOrCharTester ();
|
|
x.Write (new char [] {'a','b','c'});
|
|
Assert.AreEqual (true, x.called_array);
|
|
}
|
|
}
|
|
}
|