// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
using System;
using System.Collections.Generic;
///
/// TryGetValue(TKey,TValue@)
///
public class DictionaryTryGetValue
{
#region Public Methods
public bool RunTests()
{
bool retVal = true;
TestLibrary.TestFramework.LogInformation("[Positive]");
retVal = PosTest1() && retVal;
//
// TODO: Add your negative test cases here
//
// TestLibrary.TestFramework.LogInformation("[Negative]");
retVal = NegTest1() && retVal;
return retVal;
}
#region Positive Test Cases
public bool PosTest1()
{
bool retVal = true;
// Add your scenario description here
TestLibrary.TestFramework.BeginScenario("PosTest1: Verify method TryGetValue when the specified key existed .");
try
{
Dictionary dictionary = new Dictionary();
dictionary.Add("txt", "notepad.exe");
dictionary.Add("bmp", "paint.exe");
dictionary.Add("dib", "paint.exe");
dictionary.Add("rtf", "wordpad.exe");
string value = "";
if (dictionary.TryGetValue("txt", out value) != true)
{
TestLibrary.TestFramework.LogError("001.1", "Method TryGetValue Err .");
retVal = false;
}
}
catch (Exception e)
{
TestLibrary.TestFramework.LogError("001.2", "Unexpected exception: " + e);
TestLibrary.TestFramework.LogInformation(e.StackTrace);
retVal = false;
}
return retVal;
}
#endregion
#region Nagetive Test Cases
public bool NegTest1()
{
bool retVal = true;
TestLibrary.TestFramework.BeginScenario("NegTest1: ArgumentNullException is not thrown.");
try
{
Dictionary dictionary = new Dictionary();
dictionary.Add("txt", "notepad.exe");
dictionary.Add("bmp", "paint.exe");
dictionary.Add("dib", "paint.exe");
dictionary.Add("rtf", "wordpad.exe");
string key = null;
string value = "";
bool b = dictionary.TryGetValue(key, out value);
TestLibrary.TestFramework.LogError("101.1", "ArgumentNullException is not thrown.");
retVal = false;
}
catch (ArgumentNullException) { }
catch (Exception e)
{
TestLibrary.TestFramework.LogError("101.2", "Unexpected exception: " + e);
TestLibrary.TestFramework.LogInformation(e.StackTrace);
retVal = false;
}
return retVal;
}
#endregion
#endregion
public static int Main()
{
DictionaryTryGetValue test = new DictionaryTryGetValue();
TestLibrary.TestFramework.BeginTestCase("DictionaryTryGetValue");
if (test.RunTests())
{
TestLibrary.TestFramework.EndTestCase();
TestLibrary.TestFramework.LogInformation("PASS");
return 100;
}
else
{
TestLibrary.TestFramework.EndTestCase();
TestLibrary.TestFramework.LogInformation("FAIL");
return 0;
}
}
}