public void BasicUsagePasses() { var query = ".style1"; var layoutValueDict = new ViewLayoutValueDictionary() .AddValue("key", 100) .AddValue("key2", 200); var layoutValueDict2 = new ViewLayoutValueDictionary() .AddValue("apple", -100) .AddValue("orange", -200); var layoutOverwriter = new ViewLayoutOverwriter(); layoutOverwriter .Add(new ViewLayoutSelector(query, ""), layoutValueDict) .Add(new ViewLayoutSelector($"Model {query}", ""), layoutValueDict2); var model = new Model() { Name = "Model" } .AddStylingID(query); AssertionUtils.AssertEnumerable( new ViewLayoutValueDictionary[] { layoutValueDict2, layoutValueDict, } , layoutOverwriter.MatchLayoutValueDicts(model, null) , ""); }
public void AddSameKeywordValueFail() { var layoutValueDict = new ViewLayoutValueDictionary(); var key = "layoutName"; var value = 100; layoutValueDict.AddValue(key, value); Assert.Throws <System.ArgumentException>(() => { layoutValueDict.AddValue(key, 1.23f); }, $"Don't add same key..."); }
public void BasicUsagePasses() { var layoutValueDict = new ViewLayoutValueDictionary(); var key = "layoutName"; var value = 100; layoutValueDict.AddValue(key, value); Assert.IsTrue(layoutValueDict.ContainsKey(key), $"Don't have key({key})..."); Assert.AreEqual(value, layoutValueDict.GetValue(key), $"Don't equal value... key={key}, correct={value}, got={layoutValueDict.GetValue(key)}"); Assert.AreEqual(1, layoutValueDict.Count); layoutValueDict.RemoveValue(key); Assert.IsFalse(layoutValueDict.ContainsKey(key), $"Already have key({key})..."); Assert.AreEqual(0, layoutValueDict.Count); }
public void ClearPasses() { var layoutValueDict = new ViewLayoutValueDictionary(); var key = "layoutName"; var key2 = "layoutName2"; var key3 = "layoutName3"; layoutValueDict .AddValue(key, 100) .AddValue(key2, "apple") .AddValue(key3, 1.23f); layoutValueDict.Clear(); Assert.AreEqual(0, layoutValueDict.Count); Assert.IsFalse(layoutValueDict.ContainsKey(key), $"Don't clear Key({key})"); Assert.IsFalse(layoutValueDict.ContainsKey(key2), $"Don't clear Key({key2})"); Assert.IsFalse(layoutValueDict.ContainsKey(key3), $"Don't clear Key({key3})"); }
public void BasicUsageWithViewObjPasses() { var query = ".style1"; var viewID = "view1"; var viewID2 = "view2"; var layoutValueDict = new ViewLayoutValueDictionary() .AddValue("key", 100) .AddValue("key2", 200); var layoutValueDict2 = new ViewLayoutValueDictionary() .AddValue("apple", -100) .AddValue("orange", -200); var layoutValueDict3 = new ViewLayoutValueDictionary() .AddValue("grape", -100); var layoutOverwriter = new ViewLayoutOverwriter(); layoutOverwriter .Add(new ViewLayoutSelector(query, viewID), layoutValueDict) .Add(new ViewLayoutSelector($"Model {query}", viewID), layoutValueDict2) .Add(new ViewLayoutSelector($"Model {query}", viewID2), layoutValueDict3); var model = new Model() { Name = "Model" } .AddStylingID(query); var viewObj = new EmptyViewObject(); viewObj.Bind(model, new ModelViewBinder.BindInfo(viewID, typeof(EmptyViewObject)), null); AssertionUtils.AssertEnumerable( new ViewLayoutValueDictionary[] { layoutValueDict2, layoutValueDict, } , layoutOverwriter.MatchLayoutValueDicts(model, viewObj) , ""); }
public static ViewLayoutValueDictionary AddKeyAndValues(this ViewLayoutValueDictionary target, params (System.Enum key, object value)[] keyAndValues)