public void TestCaseInsensitivity()
{
// Try all uppercase, should work fine.
new Config(VALID_APPNAME.ToUpper());
// Try all lowercase, should also work fine.
Config cfg = new Config(VALID_APPNAME.ToLower());
// Try getting parameters using different cases.
for (int comp = 1; comp < 3; comp++)
{
for (int parm = 1; parm < 4; parm++)
{
Assert.AreEqual(comp + "_" + parm,
cfg.GetParameter("COMP" + comp, "PARAM" + parm),
"Wrong value for uppercase comp " + comp + " param " + parm);
Assert.AreEqual(comp + "_" + parm,
cfg.GetParameter("comp" + comp, "param" + parm),
"Wrong value for lowercase comp " + comp + " param " + parm);
Assert.AreEqual(comp + "_" + parm,
cfg.GetParameter("cOmP" + comp, "pArAm" + parm),
"Wrong value for mixed case comp " + comp + " param " + parm);
}
}
}