Exemple #1
0
        public void CloneTest(List <string> keys, KeyedVectorFull <string> vec)
        {
            var cloned = vec.Clone();

            foreach (var key in keys)
            {
                Assert.Equal(vec[key], cloned[key]);
            }
        }
Exemple #2
0
        public void NegTest(List <string> keys, KeyedVectorFull <string> vec)
        {
            var originalVec = vec.Clone();

            vec.Neg();
            foreach (var key in keys)
            {
                Assert.Equal(-originalVec[key], vec[key]);
            }
        }
Exemple #3
0
        public void FilterSmallerTest(List <string> keys, KeyedVectorFull <string> vec, List <string> filterKeys)
        {
            var originalVec = vec.Clone();
            var newVec      = vec.FilterSmaller(filterKeys);

            Assert.Equal(filterKeys.Count, newVec.Count());
            foreach (var key in keys)
            {
                Assert.Equal(originalVec[key], vec[key]);
                if (filterKeys.Contains(key))
                {
                    Assert.Equal(vec[key], newVec[key]);
                }
            }
        }
Exemple #4
0
        public void SubTest(List <string> keys, KeyedVectorFull <string> vec1, KeyedVectorPartial <string> vec2)
        {
            var originalVec = vec1.Clone();
            var commonKeys  = vec2.Select(x => x.Key).ToHashSet();

            vec1.Sub(vec2);
            foreach (var key in keys)
            {
                if (commonKeys.Contains(key))
                {
                    Assert.Equal(originalVec[key] - vec2[key], vec1[key]);
                }
                else
                {
                    Assert.Equal(originalVec[key], vec1[key]);
                }
            }
        }