Esempio n. 1
0
        public void FlexiCardsBlockOptions_CanBePopulated(FlexiCardsBlockOptions dummyInitialOptions,
                                                          FlexiCardsBlockOptions dummyExpectedOptions,
                                                          string dummyJson)
        {
            // Act
            JsonConvert.PopulateObject(dummyJson, dummyInitialOptions);

            // Assert
            FlexiCardsBlockOptions result         = dummyInitialOptions;
            FlexiCardsBlockOptions expectedResult = dummyExpectedOptions;

            Assert.Equal(expectedResult.BlockName, result.BlockName);
            Assert.Equal(expectedResult.CardSize, result.CardSize);
            Assert.Equal(expectedResult.DefaultCardOptions.Url, result.DefaultCardOptions.Url);
            Assert.Equal(expectedResult.DefaultCardOptions.BackgroundIcon, result.DefaultCardOptions.BackgroundIcon);
            Assert.Equal(expectedResult.DefaultCardOptions.Attributes, result.DefaultCardOptions.Attributes);
            Assert.Equal(expectedResult.Attributes, result.Attributes);
        }
Esempio n. 2
0
        public void Clone_ShallowClonesDefaultCardOptions()
        {
            // Arrange
            const string dummyUrl                    = "dummyUrl";
            const string dummyBackgroundIcon         = "dummyBackgroundIcon";
            var          dummyAttributes             = new ReadOnlyDictionary <string, string>(new Dictionary <string, string>());
            var          dummyFlexiCardBlockOptions  = new FlexiCardBlockOptions(dummyUrl, dummyBackgroundIcon, dummyAttributes);
            var          dummyFlexiCardsBlockOptions = new FlexiCardsBlockOptions(defaultCardOptions: dummyFlexiCardBlockOptions);

            // Act
            var result = (FlexiCardsBlockOptions)dummyFlexiCardsBlockOptions.Clone();

            // Assert
            Assert.NotSame(dummyFlexiCardBlockOptions, result.DefaultCardOptions);
            Assert.Equal(dummyUrl, result.DefaultCardOptions.Url);
            Assert.Equal(dummyBackgroundIcon, result.DefaultCardOptions.BackgroundIcon);
            // This is fine since if attributes are specified in JSON, the entire collection is replaced -
            // i.e. we won't mess up the attributes collection of the original FlexiCardBlockOptions instance.
            Assert.Same(dummyAttributes, result.DefaultCardOptions.Attributes);
        }