public void GivenValidWmtsConnectionInfos_WhenConstructedWithMapData_ThenExpectedProperties() { // Given mockRepository.ReplayAll(); const string mapDataName = "Zeegraskartering"; const string mapDataUrl = "https://geodata.nationaalgeoregister.nl/zeegraskartering/wfs?request=GetCapabilities"; var mapData = new WmtsMapData(mapDataName, mapDataUrl, "capability", "image/png"); var settingsHelper = new TestSettingsHelper { ApplicationLocalUserSettingsDirectory = TestHelper.GetTestDataPath(testPath) }; settingsHelper.SetApplicationVersion("twoValidWmtsConnectionInfos"); using (new UseCustomTileSourceFactoryConfig(tileFactory)) using (new UseCustomSettingsHelper(settingsHelper)) { // When using (var control = new WmtsLocationControl(mapData, wmtsCapabilityFactory)) using (var form = new Form()) { form.Controls.Add(control); form.Show(); // Then ComboBox urlLocations = form.Controls.Find("urlLocationComboBox", true).OfType<ComboBox>().First(); var dataSource = (IList<WmtsConnectionInfo>) urlLocations.DataSource; Assert.AreEqual(2, dataSource.Count); var firstWmtsConnectionInfo = (WmtsConnectionInfo) urlLocations.Items[0]; Assert.AreEqual("Actueel Hoogtebestand Nederland (AHN1)", firstWmtsConnectionInfo.Name); Assert.AreEqual("https://geodata.nationaalgeoregister.nl/tiles/service/wmts/ahn1?request=GetCapabilities", firstWmtsConnectionInfo.Url); var secondWmtsConnectionInfo = (WmtsConnectionInfo) urlLocations.Items[1]; Assert.AreEqual(mapDataName, secondWmtsConnectionInfo.Name); Assert.AreEqual(mapDataUrl, secondWmtsConnectionInfo.Url); Assert.AreSame(urlLocations.SelectedItem, secondWmtsConnectionInfo); DataGridViewControl dataGridViewControl = form.Controls.Find("dataGridViewControl", true).OfType<DataGridViewControl>().First(); CollectionAssert.IsEmpty(dataGridViewControl.Rows); } } }
public void GivenInvalidWmtsConnectionInfos_WhenConstructed_ThenLogGenerated() { // Given mockRepository.ReplayAll(); var settingsHelper = new TestSettingsHelper { ApplicationLocalUserSettingsDirectory = TestHelper.GetTestDataPath(testPath) }; settingsHelper.SetApplicationVersion("WmtsConnectionInfosWithoutWmtsConnectionsElement"); using (new UseCustomTileSourceFactoryConfig(tileFactory)) using (new UseCustomSettingsHelper(settingsHelper)) { // When Action action = () => { using (var control = new WmtsLocationControl(null, wmtsCapabilityFactory)) using (var form = new Form()) { form.Controls.Add(control); // Then ComboBox urlLocations = form.Controls.Find("urlLocationComboBox", true).OfType<ComboBox>().First(); var dataSource = (IList<WmtsConnectionInfo>) urlLocations.DataSource; Assert.AreEqual(0, dataSource.Count); } }; string wmtsConnectionInfoConfig = Path.Combine(TestHelper.GetTestDataPath( testPath, "WmtsConnectionInfosWithoutWmtsConnectionsElement"), "wmtsConnectionInfo.config"); string expectedMessage = $"Fout bij het lezen van bestand '{wmtsConnectionInfoConfig}': " + "het bestand kon niet worden geopend. Mogelijk is het bestand corrupt of in gebruik door een andere applicatie."; TestHelper.AssertLogMessageWithLevelIsGenerated(action, Tuple.Create(expectedMessage, LogLevelConstant.Error)); } }