public void GetSetClipboard() { var wsManager = new WritingSystemManager(); CoreWritingSystemDefinition enWs; wsManager.GetOrSet("en", out enWs); int wsEng = enWs.Handle; CoreWritingSystemDefinition swgWs; wsManager.GetOrSet("swg", out swgWs); int wsSwg = swgWs.Handle; var incStrBldr = TsStringUtils.MakeIncStrBldr(); incStrBldr.AppendTsString(TsStringUtils.MakeString("Gogomer ", wsSwg)); incStrBldr.AppendTsString(TsStringUtils.MakeString("cucumber", wsEng)); EditingHelper.SetTsStringOnClipboard(incStrBldr.GetString(), false, wsManager); var tss = m_basicView.EditingHelper.GetTsStringFromClipboard(wsManager); Assert.IsNotNull(tss, "Couldn't get TsString from clipboard"); Assert.AreEqual(2, tss.RunCount); Assert.AreEqual("Gogomer ", tss.get_RunText(0)); Assert.AreEqual("cucumber", tss.get_RunText(1)); var newDataObj = ClipboardUtils.GetDataObject(); Assert.IsNotNull(newDataObj, "Couldn't get DataObject from clipboard"); Assert.AreEqual("Gogomer cucumber", newDataObj.GetData("Text")); }
public void SetTsStringOnClipboard_UsesNFC() { var wsManager = new WritingSystemManager(); CoreWritingSystemDefinition enWs; wsManager.GetOrSet("en", out enWs); int wsEng = enWs.Handle; var originalInput = "\x7a7a\x60f3\x79d1\x5b78\x0020\xd558"; var input = originalInput.Normalize(NormalizationForm.FormD); Assert.That(originalInput, Is.Not.EqualTo(input)); // make sure input is NOT NFC var tss = TsStringUtils.MakeString(input, wsEng); EditingHelper.SetTsStringOnClipboard(tss, false, wsManager); var newDataObj = ClipboardUtils.GetDataObject(); Assert.IsNotNull(newDataObj, "Couldn't get DataObject from clipboard"); Assert.AreEqual(originalInput, newDataObj.GetData("Text")); }