.


:




:

































 

 

 

 





, 1, 3, 6. , .NET Framework, :

if (openBracket == -1) throw new DictionaryException(_dictionaryType, DictionaryExceptionReason.);

, , :

1) openBracket -1, ( ( ). DictionaryException, .

2) openBracket , -1. .

 

DU- , (. 5).

 

5. DictionaryParser.Parse

 

:

1) [line, 4, 8]

2) [line, 4, 10]

3) [openBracket, 5, 6]

4) [openBracket, 5, 10]

5) [initialForm, 8, 10]

 

, ( ). openBracket line, initialForm line openBracket, line:

1) null

2)

3) (, , , )

4)

 

<> <>.

:

1)

2)

3) .

, .

 

.

XML-, .

#region Parser itself /// <summary>/// : /// </summary>[Test]public static void Dictionary_FileNotFound_ExceptionCaught(){ File.Move("Data/.txt", "Data/1.txt"); Assert.Throws<DictionaryException>(() => new DictionaryParser(DictionaryType.)); File.Move("Data/1.txt", "Data/.txt");} /// <summary>/// : /// </summary>[Test]public static void Dictionary_EmptyFile_NoExceptions(){ File.Move("Data/.txt", "Data/1.txt"); File.Delete("Data/.txt"); var writer = File.CreateText("Data/.txt"); writer.Close(); DictionaryParser parser = null; Assert.DoesNotThrow(() => parser = new DictionaryParser(DictionaryType.)); Dictionary<string, List<string>> dictionary = new Dictionary<string, List<string>>(); CollectionAssert.AreEquivalent(parser.Dictionary, dictionary); File.Delete("Data/.txt"); File.Move("Data/1.txt", "Data/.txt");} /// <summary>/// : /// </summary>[Test]public static void Dictionary_AllLinesParsedSuccessfully_NoExceptions(){ CreateFake(); DictionaryParser parser = null; Assert.DoesNotThrow(() => parser = new DictionaryParser(DictionaryType.)); Dictionary<string, List<string>> dictionary = new Dictionary<string, List<string>>(); dictionary[""] = new List<string>() {"", "", "", "", ""}; dictionary[""] = new List<string>() {"", "", "", "", ""}; foreach (var key in dictionary.Keys) { CollectionAssert.AreEquivalent(parser.Dictionary[key].OrderBy(x => x), dictionary[key].OrderBy(x => x)); } File.Delete("Data/.txt"); File.Move("Data/1.txt", "Data/.txt");} /// <summary>/// : /// </summary>[Test]public static void Dictionary_InvalidRecord_ExceptionCaught(){ File.Move("Data/.txt", "Data/1.txt"); File.Delete("Data/.txt"); var writer = File.CreateText("Data/.txt"); writer.WriteLine(" , , , )"); writer.Close(); DictionaryParser parser = null; Assert.Throws<DictionaryException>(() => parser = new DictionaryParser(DictionaryType.)); File.Delete("Data/.txt"); File.Move("Data/1.txt", "Data/.txt");} #endregion #region Containing /// <summary>/// : /// </summary>[Test]public static void Dictionary_ContainsSpecificForm_NoExceptions(){ CreateFake(); DictionaryParser parser = new DictionaryParser(DictionaryType.); Assert.AreEqual(true, parser.Contains("")); File.Delete("Data/.txt"); File.Move("Data/1.txt", "Data/.txt");} /// <summary>/// : /// </summary>[Test]public static void Dictionary_DoesNotContainSpecificForm_ExceptionCaught(){ CreateFake(); DictionaryParser parser = new DictionaryParser(DictionaryType.); Assert.AreEqual(false, parser.Contains("")); File.Delete("Data/.txt"); File.Move("Data/1.txt", "Data/.txt");} #endregion #region Initial form /// <summary>/// : /// </summary>[Test]public static void Dictionary_InitialFormRevealed_NoExceptions(){ CreateFake(); DictionaryParser parser = new DictionaryParser(DictionaryType.); Assert.AreEqual("".ToUpper(), parser.GetInitialForm("")); File.Delete("Data/.txt"); File.Move("Data/1.txt", "Data/.txt");} /// <summary>/// : /// </summary>[Test]public static void Dictionary_InitialFormDidNotReveal_ExceptionCaught(){ CreateFake(); DictionaryParser parser = new DictionaryParser(DictionaryType.); Assert.AreEqual("", parser.GetInitialForm("")); File.Delete("Data/.txt"); File.Move("Data/1.txt", "Data/.txt");} /// <summary>/// : /// </summary>[Test]public static void Dictionary_InitialFormDidNotRevealFromEmptyFile_ExceptionCaught(){ File.Move("Data/.txt", "Data/1.txt"); File.Delete("Data/.txt"); var writer = File.CreateText("Data/.txt"); writer.Close(); DictionaryParser parser = new DictionaryParser(DictionaryType.); Assert.AreEqual("", parser.GetInitialForm("")); File.Delete("Data/.txt"); File.Move("Data/1.txt", "Data/.txt");} #endregion /// <summary>/// /// </summary>private static void CreateFake(){ File.Move("Data/.txt", "Data/1.txt"); File.Delete("Data/.txt"); var writer = File.CreateText("Data/.txt"); writer.WriteLine(" (, , , )"); writer.WriteLine(" (, , , )"); writer.Close();}




:


: 2017-02-28; !; : 408 |


:

:

, , .
==> ...

1723 - | 1427 -


© 2015-2024 lektsii.org - -

: 0.009 .