public void TestInitialize()
        {
            XliffReaderSettings settings;

            this._document = new XliffDocument();

            settings = new XliffReaderSettings();
            settings.Validators.Clear();
            this._reader = new XliffReader(settings);
        }
        /// <summary>
        /// Deserializes a file and stores the resulting <see cref="XliffDocument"/> internally.
        /// </summary>
        /// <param name="data">The identifier of the document to deserialize.</param>
        /// <param name="validate">If true the document will be validated, otherwise it won't be validated.</param>
        /// <param name="handlers">The extension handlers to register.</param>
        /// <returns>The deserialized document.</returns>
        public static XliffDocument Deserialize(TestData data, bool validate, Dictionary <string, IExtensionHandler> handlers)
        {
            XliffDocument result;
            XliffReader   reader;
            string        path;

            if (validate)
            {
                reader = new XliffReader();
            }
            else
            {
                XliffReaderSettings settings;

                settings = new XliffReaderSettings();
                settings.Validators.Clear();
                reader = new XliffReader(settings);
            }

            path = Path.Combine(Environment.CurrentDirectory, TestUtilities.TestDataDirectory, data.ToString() + ".xlf");
            using (FileStream stream = new FileStream(path, FileMode.Open, FileAccess.Read))
            {
                if (handlers != null)
                {
                    foreach (string ns in handlers.Keys)
                    {
                        reader.RegisterExtensionHandler(ns, handlers[ns]);
                    }
                }

                result = reader.Deserialize(stream);
            }

            Assert.IsNotNull(result, "Failed to deserialize.");

            return(result);
        }