public void UnsupportedOutput () { XmlDocument doc = new XmlDocument(); object o = transform.GetOutput (doc.GetType ()); }
/* **************************************************************************** * bestEffortAdopt() **************************************************************************** */ /** * Attempts to adopt the node into the document */ public static void bestEffortAdopt(XmlDocument oDoc, Node oNode) { // do nothing if there is nothing to do if ( (oDoc == null) || (oNode == null) || (oNode.getOwnerDocument() == oDoc)) { return; } // if we are using DOM3, use the adoptNode API if (hasDOM3Support()) { // oDoc.adoptNode(oNode); try { oDoc.GetType().getMethod("adoptNode", new Class[] { oNode.GetType() }) .invoke(oDoc, new Object[] { oNode }); } catch (IllegalArgumentException e) { } catch (SecurityException e) { } catch (IllegalAccessException e) { } catch (InvocationTargetException e) { } catch (NoSuchMethodException e) { } return; } // if it is an XmlDocument, steal its adoption if (isXercesDocument(oDoc)) { ((XmlDocument) oDoc).adoptNode(oNode); return; } // otherwise just import and live with the copying oDoc.importNode(oNode, true); }
public ExceptionVerifier(string assemblyName, ExceptionVerificationFlags flags, ITestOutputHelper output) { _output = output; if (assemblyName == null) throw new VerifyException("Assembly name cannot be null"); _verificationFlags = flags; try { switch (assemblyName.ToUpper()) { case "SYSTEM.XML": { var dom = new XmlDocument(); _asm = dom.GetType().GetTypeInfo().Assembly; } break; //case "SYSTEM.DATA": //{ // var ds = new DataSet(); // asm = ds.GetType().Assembly; //} // break; default: throw new FileLoadException("Cannot load assembly from " + GetRuntimeInstallDir() + assemblyName + ".dll"); //asm = Assembly.LoadFrom(GetRuntimeInstallDir() + assemblyName + ".dll"); //break; } if (_asm == null) throw new VerifyException("Can not load assembly " + assemblyName); // let's determine if this is a loc run, if it is then we need to load satellite assembly _locAsm = null; if (!CultureInfo.CurrentCulture.Equals(new CultureInfo("en-US")) && !CultureInfo.CurrentCulture.Equals(new CultureInfo("en"))) { try { throw new NotImplementedException("Cannot Load Satellite assembly"); // load satellite assembly //locAsm = asm.GetSatelliteAssembly(new CultureInfo(CultureInfo.CurrentCulture.Parent.IetfLanguageTag)); } catch (FileNotFoundException e1) { _output.WriteLine(e1.ToString()); } catch (FileLoadException e2) { _output.WriteLine(e2.ToString()); } } } catch (Exception e) { _output.WriteLine("Exception: " + e.Message); _output.WriteLine("Stack: " + e.StackTrace); throw new VerifyException("Error while loading assembly"); } string[] resArray; Stream resStream = null; var bFound = false; // Check that assembly manifest has resources if (null != _locAsm) resArray = _locAsm.GetManifestResourceNames(); else resArray = _asm.GetManifestResourceNames(); foreach (var s in resArray) { if (s.EndsWith(".resources")) { resStream = null != _locAsm ? _locAsm.GetManifestResourceStream(s) : _asm.GetManifestResourceStream(s); bFound = true; if (bFound && resStream != null) { // Populate hashtable from resources var resReader = new ResourceReader(resStream); if (_resources == null) { _resources = new Hashtable(); } var ide = resReader.GetEnumerator(); while (ide.MoveNext()) { if (!_resources.ContainsKey(ide.Key.ToString())) _resources.Add(ide.Key.ToString(), ide.Value.ToString()); } resReader.Dispose(); } //break; } } if (!bFound || resStream == null) throw new VerifyException("GetManifestResourceStream() failed"); }
/* **************************************************************************** * isXercesDocument() **************************************************************************** */ /** * Returns true if specified XmlDocument is backed by Xerces */ public static bool isXercesDocument(XmlDocument oDoc) { return oDoc.GetType().Name.startsWith("org.apache.xerces.dom"); }