public void does_not_show_columns_for_invalid_identifier()
        {
            // ARRANGE
            var identifier1 = "Grid.1";
            var identifier2 = "Grid.2";
            var columns     = new[] { "Col1", "Col2", "Col3", "Col4" };

            ISettings settings1 = new Settings(Enumerable.Empty <Setting>(), new Subject <bool>());

            settings1[Constants.UI.Settings.Names.Columns]        = columns;
            settings1[Constants.UI.Settings.Names.VisibleColumns] = Array.Empty <string>();

            ISettings settings2 = null;

            _settingsService.Setup(x => x.TryGet(It.Is <string>(y => y == identifier1), out settings1))
            .Returns(true);

            _settingsService.Setup(x => x.TryGet(It.Is <string>(y => y == identifier2), out settings2))
            .Returns(false);

            var service = new ColumnsService(_settingsService.Object);

            string changedIdentifier = null;

            service.Changed
            .Subscribe(x => changedIdentifier = x);

            // ACT
            service.ShowColumns(identifier2, new[] { "Col1", "Col2" });

            // ASSERT
            Assert.That(changedIdentifier, Is.Null);
            Assert.That(settings1.Get <string[]>(Constants.UI.Settings.Names.VisibleColumns), Is.Empty);
        }
Ejemplo n.º 2
0
        public void shows_columns_for_identifier()
        {
            // ARRANGE
            var identifier = "Grid.1";
            var columns    = new[] { "Col1", "Col2", "Col3", "Col4" };

            ISettings settings = new Settings(Enumerable.Empty <Setting>(), new Subject <bool>());

            settings[Constants.UI.Settings.Names.Columns]        = columns;
            settings[Constants.UI.Settings.Names.VisibleColumns] = Enumerable.Empty <string>();

            _settingsService.Setup(x => x.TryGet(It.Is <string>(y => y == identifier), out settings))
            .Returns(true);

            var service = new ColumnsService(_settingsService.Object);

            string changedIdentifier = null;

            service.Changed
            .Subscribe(x => changedIdentifier = x);

            // ACT
            service.ShowColumns(identifier, new[] { "Col1", "Col2" });

            // ASSERT
            Assert.That(changedIdentifier, Is.EqualTo(identifier));
            Assert.That(settings.Get <IEnumerable <string> >(Constants.UI.Settings.Names.Columns).SequenceEqual(columns),
                        Is.True);
            Assert.That(
                settings.Get <IEnumerable <string> >(Constants.UI.Settings.Names.VisibleColumns).SequenceEqual(columns),
                Is.False);
            Assert.That(
                settings.Get <IEnumerable <string> >(Constants.UI.Settings.Names.VisibleColumns)
                .SequenceEqual(new[] { "Col1", "Col2" }), Is.True);
        }