Ejemplo n.º 1
0
        public void Format2()
        {
            string test = new Lily(@"D:\programmation\c#\TFE\python\Lily\good.ly").Format(new List <Note>()
            {
                new Note("A#"), new Note("A#"), new Note("A#"), new Note("A#"), new Note("Bb"), new Note("Bb"), new Note("Bb")
            });

            Assert.AreEqual(test, " ais8 bes8");
        }
Ejemplo n.º 2
0
 public void ReadFileWrongExtension()
 {
     try
     {
         List <string> test = new Lily("test").ReadFile();
         Assert.Fail();
     }
     catch (Exception e)
     {
         Assert.AreEqual("Une erreur d'E/S s'est produite.", e.Message);
     }
 }
Ejemplo n.º 3
0
 public void ReadFileWrongPath()
 {
     try
     {
         List <string> test = new Lily(@"D:\programmation\c#\TFE\python\pdf.cs").ReadFile();
         Assert.Fail();
     }
     catch (Exception e)
     {
         Assert.AreEqual("Une erreur d'E/S s'est produite.", e.Message);
     }
 }
Ejemplo n.º 4
0
        public void TestPriceLily()
        {
            //тест 0: для лилий на скидке
            Lily lily0     = new Lily(76, Freshness.SaleFreshness, 32);
            int  expected0 = 61; //76-15=61
            int  actual0   = lily0.Price;

            Assert.AreEqual(expected0, actual0);

            //тест 1: для лилий плохого качества
            Lily lily1     = new Lily(76, Freshness.LowFreshness, 32);
            int  expected1 = 66; //76-10=66
            int  actual1   = lily1.Price;

            Assert.AreEqual(expected1, actual1);

            //тест 2: для лилий ниже среднего качества
            Lily lily2     = new Lily(76, Freshness.BelowAverageFreshness, 32);
            int  expected2 = 67; //76-9=67
            int  actual2   = lily2.Price;

            Assert.AreEqual(expected2, actual2);

            //тест 3: для лилий среднего качества
            Lily lily3     = new Lily(79, Freshness.MediumFreshness, 27);
            int  expected3 = 72; //79-7=72
            int  actual3   = lily3.Price;

            Assert.AreEqual(expected3, actual3);

            //тест 4: для лилий выше среднего качества
            Lily lily4     = new Lily(79, Freshness.AboveAverageFreshness, 27);
            int  expected4 = 75; //79-4=75
            int  actual4   = lily4.Price;

            Assert.AreEqual(expected4, actual4);

            //тест 5: для лилий наилучшего качества
            Lily lily5     = new Lily(76, Freshness.HighestFreshness, 32);
            int  expected5 = 76;
            int  actual5   = lily5.Price;

            Assert.AreEqual(expected5, actual5);
        }
Ejemplo n.º 5
0
        /// <summary>
        /// select a lilypond file and save note into it
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ToLilypond_Click(object sender, RoutedEventArgs e)
        {
            SaveFileDialog saveFileDialog = new SaveFileDialog();

            saveFileDialog.Filter           = "Lilypond Files (*.ly)|*.ly";
            saveFileDialog.InitialDirectory = ReadConf("LilyFolder");
            if (saveFileDialog.ShowDialog() != true)
            {
                return;
            }

            Lily Lilypond = new Lily(saveFileDialog.FileName);

            Lilypond.Customise(titre.Text, sTitre.Text, piece.Text, pdPage.Text);
            lilyFile.Text = Lilypond.SetNotes(_notes);
            _log.Info("Ask for midi génération");
            if (midi.IsChecked.Value)
            {
                if (!lilyFile.Text.Contains(@"\layout{}") && !lilyFile.Text.Contains(@"\midi{}"))
                {
                    List <string> temp = lilyFile.Text.Split(new string[] { "\n" }, StringSplitOptions.None).ToList();
                    if (!lilyFile.Text.Contains(@"\score{"))
                    {
                        temp.Insert(temp.FindIndex(x => x.Contains(@"\relative")) - 1, @"\score{");
                        temp.AddRange(new List <string> {
                            @"\layout{}", @"\midi{}", "}"
                        });
                    }
                    else
                    {
                        temp.InsertRange(temp.Count - 1, new List <string> {
                            @"\layout{}", @"\midi{}"
                        });
                    }
                    lilyFile.Text = string.Join("\n", temp);
                }
            }  // if midi is checked
            _log.Debug("Create lilypond file: " + saveFileDialog.FileName);
            MessageBox.Show("Fichier lilypond généré avec succès", "Génération Lylipond", MessageBoxButton.OK, MessageBoxImage.Information);
            ToLaTex.IsEnabled = true;
            ToPdf.IsEnabled   = true;
            _LyliPath         = new Uri(saveFileDialog.FileName);
        }
Ejemplo n.º 6
0
        /// <summary>
        /// save changes effected in the textbox of lilypond
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void SvgLily(object sender = null, RoutedEventArgs e = null)
        {
            SaveFileDialog saveFileDialog = new SaveFileDialog();

            saveFileDialog.Filter           = "Lilypond Files (*.ly)|*.ly";
            saveFileDialog.InitialDirectory = ReadConf("LilyFolder");
            if (saveFileDialog.ShowDialog() != true)
            {
                return;
            }

            Lily          Lilypond = new Lily(saveFileDialog.FileName);
            List <string> Data     = lilyFile.Text.Split('\n').ToList();

            lilyFile.Text = Lilypond.Save(Data);
            _log.Info("Save Lilypond file: " + saveFileDialog.FileName);
            _LyliPath = new Uri(saveFileDialog.FileName);
            MessageBox.Show("Fichier lilypond sauvegardé avec succès", "Génération Lylipond", MessageBoxButton.OK, MessageBoxImage.Information);
        }
Ejemplo n.º 7
0
        /// <summary>
        /// load a lilypond file
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OpenLily(object sender, RoutedEventArgs e)
        {
            OpenFileDialog openFileDialog = new OpenFileDialog();

            openFileDialog.Filter           = "Lilypond Files (*.ly)|*.ly";
            openFileDialog.InitialDirectory = ReadConf("LilyFolder");
            if (openFileDialog.ShowDialog() != true)
            {
                return;
            }

            Lily Lilypond = new Lily(openFileDialog.FileName);

            lilyFile.Text = string.Join("\n", Lilypond.ReadFile());
            _log.Info("Load lilypond file: " + openFileDialog.FileName);
            ToLaTex.IsEnabled = true;
            ToPdf.IsEnabled   = true;
            titre.Text        = Lilypond.getTitre();
            sTitre.Text       = Lilypond.getSousTitre();
            piece.Text        = Lilypond.getPiece();
            pdPage.Text       = Lilypond.getTagLine();
            midi.IsChecked    = Lilypond.MidiGeneration;
            _LyliPath         = new Uri(openFileDialog.FileName);
        }
Ejemplo n.º 8
0
        public void FormatEmpty()
        {
            string test = new Lily(@"D:\programmation\c#\TFE\python\Lily\good.ly").Format(new List <Note>());

            Assert.AreEqual(test, "");
        }