示例#1
0
 public bool JsonExport(IEnumerable <Tour> tours, IEnumerable <TourLog> tourLogs)
 {
     _saveFileDialog.Filter = "Json Files (*.json) | *.json";
     _saveFileDialog.ShowDialog();
     if (!_saveFileDialog.FileName.Equals(""))
     {
         Tour_LogJson data = new Tour_LogJson(tours, tourLogs);
         string       json = JsonConvert.SerializeObject(data, Formatting.Indented);
         File.WriteAllText(_saveFileDialog.FileName, json);
         return(true);
     }
     return(false);
 }
示例#2
0
        public void JsonImport_NoFilename_Cancelled()
        {
            _expectedFileName = "";

            var saveDialogMock = new Mock <ISaveFile>();
            var openDialogMock = new Mock <IOpenFile>();

            saveDialogMock.Setup(x => x.ShowDialog()).Returns(true).Verifiable();
            saveDialogMock.Setup(x => x.FileName).Returns(_expectedFileName).Verifiable();

            openDialogMock.Setup(x => x.ShowDialog()).Returns(true).Verifiable();
            openDialogMock.Setup(x => x.FileName).Returns(_expectedFileName).Verifiable();


            _jsonManager = new JsonManager(saveDialogMock.Object, openDialogMock.Object);

            Tour_LogJson erg = _jsonManager.JsonImport();

            openDialogMock.Verify();
            Assert.Null(erg);
        }
示例#3
0
        public void JsonImport_2Tours_3TourLogs()
        {
            _expectedFileName = @"C:\Users\Flori\source\repos\SWE2_Repos\TourPlanner\Test\TestJsonImport.json";

            var saveDialogMock = new Mock <ISaveFile>();
            var openDialogMock = new Mock <IOpenFile>();

            saveDialogMock.Setup(x => x.ShowDialog()).Returns(true).Verifiable();
            saveDialogMock.Setup(x => x.FileName).Returns(_expectedFileName).Verifiable();

            openDialogMock.Setup(x => x.ShowDialog()).Returns(true).Verifiable();
            openDialogMock.Setup(x => x.FileName).Returns(_expectedFileName).Verifiable();


            _jsonManager = new JsonManager(saveDialogMock.Object, openDialogMock.Object);

            Tour_LogJson erg = _jsonManager.JsonImport();

            openDialogMock.Verify();
            Assert.True(erg.Tours.ToList().Count == 2);
            Assert.True(erg.TourLogs.ToList().Count == 3);
        }
示例#4
0
        public bool JsonImport()
        {
            IJsonManager jsonManager = new JsonManager(new SaveFile(), new OpenFile());
            Tour_LogJson jsonData    = jsonManager.JsonImport();

            if (jsonData != null)
            {
                foreach (var tour in jsonData.Tours)
                {
                    Tour newTour = AddNewItem(tour.Name, tour.Description, tour.Start, tour.End, tour.Distance);
                    foreach (var tourLog in jsonData.TourLogs)
                    {
                        if (tour.Id == tourLog.TourId)
                        {
                            AddNewTourLog(tourLog.Name, tourLog.Description, tourLog.Report, tourLog.Vehicle,
                                          tourLog.DateTime, newTour.Id, tourLog.Distance, tourLog.TotalTime, tourLog.Rating);
                        }
                    }
                }
                return(true);
            }
            return(false);
        }