public void PushNullStringToClipboardIsntAllowed() { var result = Clippy.PushStringToClipboard(null); Assert.IsNotNull(result); Assert.AreEqual(Clippy.ResultCode.ErrorInvalidArgs, result.ResultCode); Assert.IsTrue(IsClipboardEmpty()); }
public void PushHugeStringToClipboardDoesntBomb() { var stuff = "1234567890"; for (var i = 0; i < 99; ++i) { var outOfMemory = false; try { stuff += stuff; } catch (OutOfMemoryException) { outOfMemory = true; } var result = Clippy.PushStringToClipboard(stuff); Assert.IsNotNull(result); switch (result.ResultCode) { case Clippy.ResultCode.Success: break; case Clippy.ResultCode.ErrorGlobalAlloc: Assert.AreEqual(WindowsErrorCodes.ErrorNotEnoughMemory, (WindowsErrorCodes)result.LastError); Assert.IsFalse(Clipboard.GetText() == stuff); break; case Clippy.ResultCode.ErrorOutOfMemoryException: Assert.AreEqual(WindowsErrorCodes.Success, (WindowsErrorCodes)result.LastError); Assert.IsFalse(Clipboard.GetText() == stuff); break; default: Assert.Fail("Unexpected result code ({0}) and windows error ({1})", result.ResultCode, result.LastError); break; } if (outOfMemory) { Assert.IsFalse(result.OK); } else { if (result.OK) { Assert.IsTrue(Clipboard.ContainsData(DataFormats.UnicodeText)); Assert.IsTrue(Clipboard.GetText() == stuff); } else { Assert.IsFalse(Clipboard.GetText() == stuff); return; } } } Assert.Inconclusive(); }
public override void SetClipboard(string value) { if (value == null) { return; } var r = Clippy.PushStringToClipboard(value); }
public void PushEmptyStringToClipboardDoesntBomb() { const string p = ""; var result = Clippy.PushStringToClipboard(p); Assert.IsNotNull(result); Assert.IsTrue(result.OK); Assert.IsTrue(Clipboard.ContainsData(DataFormats.UnicodeText)); Assert.IsTrue(Clipboard.GetText() == p); }
public void PushNonAsciiStringToClipboardWillBeUnicode() { var p = "áéíóúýðæö"; var result = Clippy.PushStringToClipboard(p); Assert.IsNotNull(result); Assert.IsTrue(result.OK); Assert.IsTrue(Clipboard.ContainsData(DataFormats.UnicodeText)); Assert.IsTrue(Clipboard.GetText() == p); }
public void PushAsciiStringToClipboardWillBeAscii() { var p = "asdf"; var result = Clippy.PushStringToClipboard(p); Assert.IsNotNull(result); Assert.IsTrue(result.OK); Assert.IsTrue(Clipboard.ContainsData(DataFormats.Text)); Assert.IsTrue(Clipboard.GetText() == p); }
static void Main(string[] args) { if (args.Length > 0) { Clippy.PushStringToClipboard(args[0]); System.Console.WriteLine("pushed \"{0}\" to the clipboard.", args[0]); } else { System.Console.WriteLine("usage: sample.exe \"<message>\""); System.Console.WriteLine(" pushes the message <message> onto the clipboard."); } }