Example #1
0
        private static TestDevice GetTestDevice(defectsdbContext dataBase, String deviceName, Dictionary <String, TestDevice> devices)
        {
            TestDevice device;

            if (false == devices.TryGetValue(deviceName, out device))
            {
                device = dataBase.TestDevice.FirstOrDefault(p => p.Name == deviceName);

                if (null == device)
                {
                    device      = new TestDevice();
                    device.Name = deviceName;

                    dataBase.TestDevice.Add(device);

                    dataBase.SaveChanges();
                }
                else
                {
                    devices[deviceName] = device;
                }
            }

            return(device);
        }
Example #2
0
        private static void SaveOkImages(defectsdbContext dataBase, String okFile, Dictionary <String, TestDevice> devices, String deviceName)
        {
            if (File.Exists(okFile))
            {
                using (var file = new StreamReader(okFile))
                {
                    String fileName;

                    while ((fileName = file.ReadLine()) != null)
                    {
                        if (fileName.Length > 0)
                        {
                            if (null == deviceName)
                            {
                                deviceName = fileName.Split('\\')[0];
                            }

                            var device = GetTestDevice(dataBase, deviceName, devices);

                            var screenShot = new ScreenShot();
                            screenShot.FileName   = deviceName + "\\" + fileName;
                            screenShot.TestDevice = device;

                            dataBase.ScreenShot.Add(screenShot);
                        }
                    }
                }

                dataBase.SaveChanges();
            }
        }
Example #3
0
        private static void ImportResults(defectsdbContext dataBase, String rootFolder, String deviceName)
        {
            var devices = new Dictionary <String, TestDevice>();

            SaveOkImages(dataBase, Path.Combine(rootFolder, "ok.txt"), devices, deviceName);
            SaveInvalidImages(dataBase, Path.Combine(rootFolder, "invalid.txt"), devices, deviceName);
            SaveDefectImages(dataBase, Path.Combine(rootFolder, "bad.txt"), devices, deviceName);
        }
Example #4
0
 static void Main(string[] args)
 {
     using (var dataBase = new defectsdbContext())
     {
         //ValidateImages(dataBase, "E:/gui/_r/");
         //ImportResults(dataBase, "E:/gui/_r/1080x1920-he/", "1080x1920-he");
     }
 }
Example #5
0
        private static void ValidateImages(defectsdbContext dataBase, String rootFolder)
        {
            var images = dataBase.ScreenShot;

            foreach (var image in images)
            {
                var fileName = Path.Combine(rootFolder, image.FileName);

                if (false == File.Exists(fileName))
                {
                    Console.WriteLine("Missing: " + image.Id + " " + fileName);
                }
            }
        }
Example #6
0
        private static void SaveDefectImages(defectsdbContext dataBase, string badFile, Dictionary <string, TestDevice> devices, String deviceName)
        {
            var defectTypes = new Dictionary <String, DefectType>();

            if (File.Exists(badFile))
            {
                using (var file = new StreamReader(badFile))
                {
                    String fileName;

                    while ((fileName = file.ReadLine()) != null)
                    {
                        if (fileName.Length > 0)
                        {
                            if (null == deviceName)
                            {
                                deviceName = fileName.Split('\\')[0];
                            }

                            var device = GetTestDevice(dataBase, deviceName, devices);

                            String[] img    = fileName.Split('|');
                            String   source = img[0];

                            var screenShot = new ScreenShot();
                            screenShot.FileName   = deviceName + "\\" + source;
                            screenShot.TestDevice = device;
                            screenShot.Invalid    = false;

                            dataBase.ScreenShot.Add(screenShot);

                            Console.WriteLine(source);

                            for (int i = 1; i < img.Length; i++)
                            {
                                var d = img[i].Split('@')[0];

                                DefectType defectType;

                                if (false == defectTypes.TryGetValue(d, out defectType))
                                {
                                    defectType = dataBase.DefectType.FirstOrDefault(p => p.Code == d);

                                    if (null == defectType)
                                    {
                                        defectType             = new DefectType();
                                        defectType.Code        = d;
                                        defectType.Description = d;

                                        dataBase.DefectType.Add(defectType);

                                        dataBase.SaveChanges();
                                    }
                                    else
                                    {
                                        defectTypes[d] = defectType;
                                    }
                                }

                                var defect = new Defect();
                                defect.DefectType = defectType;
                                defect.ScreenShot = screenShot;

                                dataBase.Defect.Add(defect);
                            }
                        }
                    }
                }

                dataBase.SaveChanges();
            }
        }