﻿using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;
using System.Data.SqlClient;
using System.Windows.Controls;
using WPF_DB_Test;
using WpfApp_Test_Test;

namespace WPF_DB_Test.Tests
{
    [TestClass]
    public class MainWindowTests
    {
        private MainWindow mainWindow;

        [TestInitialize]
        public void Setup()
        {
            mainWindow = new MainWindow();
        }

        [TestMethod]
        public void TestInsertArtist()
        {
            // Arrange
            var connection = new SqlConnection(@"Data Source=L12299;Initial Catalog=db_test;Integrated Security=True;TrustServerCertificate=True");
            mainWindow.tb_LastName.Text = "Doe";
            mainWindow.tb_FirstName.Text = "John";
            mainWindow.tb_age.Text = "30";

            // Act
            mainWindow.Insert_Artist(connection);

            // Assert
            // Überprüfen Sie, ob der Künstler erfolgreich in die Datenbank eingefügt wurde.
            // Dies kann durch Abfragen der Datenbank und Überprüfen der Einträge erfolgen.
        }

        [TestMethod]
        public void TestReadArtist()
        {
            // Arrange
            var connection = new SqlConnection(@"Data Source=L12299;Initial Catalog=db_test;Integrated Security=True;TrustServerCertificate=True");

            // Act
            mainWindow.Read_Artist(connection);

            // Assert
            // Überprüfen Sie, ob die Künstlerliste korrekt geladen wurde.
            Assert.IsTrue(mainWindow.artists.Count > 0);
        }

        // Weitere Tests für die anderen Methoden...
    }
}
