package jetbrains.mps.editorTest;

/*Generated by MPS */

import jetbrains.mps.MPSLaunch;
import jetbrains.mps.lang.test.runtime.BaseTransformationTest;
import org.junit.jupiter.api.extension.RegisterExtension;
import jetbrains.mps.lang.test.runtime.TestParametersCacheExtension;
import jetbrains.mps.lang.test.runtime.TestParametersCache;
import org.junit.jupiter.api.Test;
import jetbrains.mps.lang.test.runtime.BaseTestBody;
import jetbrains.mps.lang.test.runtime.TransformationTest;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.lang.test.runtime.CheckExpectedMessageRunnable;
import jetbrains.mps.errors.MessageStatus;
import jetbrains.mps.smodel.SNodePointer;
import jetbrains.mps.project.ProjectBase;
import jetbrains.mps.lang.test.runtime.CheckErrorMessagesRunnable;
import jetbrains.mps.internal.collections.runtime.ListSequence;
import java.util.ArrayList;

@MPSLaunch
public class BaseAssignmentToFinalVariable_Test extends BaseTransformationTest {
  @RegisterExtension
  private static final TestParametersCacheExtension ourParametersCacheExtension = new TestParametersCacheExtension(new TestParametersCache(BaseAssignmentToFinalVariable_Test.class, "${mps_home}", "r:914ee49a-537d-44b2-a5fb-bac87a54743d(jetbrains.mps.editorTest@tests)", false));

  public BaseAssignmentToFinalVariable_Test() {
    super(ourParametersCacheExtension.getParametersCache());
  }

  @Test
  public void test_NodeCannotAssignValueToFinalCheck5706606249111788699() throws Throwable {
    new TestBody(this).test_NodeCannotAssignValueToFinalCheck5706606249111788699();
  }
  @Test
  public void test_NodeCannotAssignValueToFinalCheck5706606249111798505() throws Throwable {
    new TestBody(this).test_NodeCannotAssignValueToFinalCheck5706606249111798505();
  }
  @Test
  public void test_NodeCannotAssignValueToFinalCheck6982528192101427028() throws Throwable {
    new TestBody(this).test_NodeCannotAssignValueToFinalCheck6982528192101427028();
  }
  @Test
  public void test_NodeCannotAssignValueToFinalCheck6982528192101427038() throws Throwable {
    new TestBody(this).test_NodeCannotAssignValueToFinalCheck6982528192101427038();
  }
  @Test
  public void test_NodeCannotAssignValueToFinalCheck6549739314330314428() throws Throwable {
    new TestBody(this).test_NodeCannotAssignValueToFinalCheck6549739314330314428();
  }
  @Test
  public void test_NodeVariableHasNotBeenInitializedErrorCheck6549739314330060411() throws Throwable {
    new TestBody(this).test_NodeVariableHasNotBeenInitializedErrorCheck6549739314330060411();
  }
  @Test
  public void test_ErrorMessagesCheck5706606249111739463() throws Throwable {
    new TestBody(this).test_ErrorMessagesCheck5706606249111739463();
  }

  /*package*/ static class TestBody extends BaseTestBody {

    /*package*/ TestBody(TransformationTest owner) {
      super(owner);
    }

    public void test_NodeCannotAssignValueToFinalCheck5706606249111788699() throws Exception {

      runWithinCommand(() -> {
        SNode nodeToCheck = getRealNodeById("5706606249110735306");
        SNode operation = getRealNodeById("5706606249111788699");
        new CheckExpectedMessageRunnable.CheckExpectedRuleMessageRunnable(nodeToCheck, MessageStatus.ERROR, new SNodePointer("r:00000000-0000-4000-0000-011c895902c5(jetbrains.mps.baseLanguage.typesystem)", "4705425356437995912"), "", myProject.getRepository(), ((ProjectBase) myProject).getPlatform()).run();
      });
    }
    public void test_NodeCannotAssignValueToFinalCheck5706606249111798505() throws Exception {

      runWithinCommand(() -> {
        SNode nodeToCheck = getRealNodeById("5706606249110712506");
        SNode operation = getRealNodeById("5706606249111798505");
        new CheckExpectedMessageRunnable.CheckExpectedRuleMessageRunnable(nodeToCheck, MessageStatus.ERROR, new SNodePointer("r:00000000-0000-4000-0000-011c895902c5(jetbrains.mps.baseLanguage.typesystem)", "4705425356437995912"), "", myProject.getRepository(), ((ProjectBase) myProject).getPlatform()).run();
      });
    }
    public void test_NodeCannotAssignValueToFinalCheck6982528192101427028() throws Exception {

      runWithinCommand(() -> {
        SNode nodeToCheck = getRealNodeById("6982528192101427026");
        SNode operation = getRealNodeById("6982528192101427028");
        new CheckExpectedMessageRunnable.CheckExpectedRuleMessageRunnable(nodeToCheck, MessageStatus.ERROR, new SNodePointer("r:00000000-0000-4000-0000-011c895902c5(jetbrains.mps.baseLanguage.typesystem)", "4705425356437995912"), "", myProject.getRepository(), ((ProjectBase) myProject).getPlatform()).run();
      });
    }
    public void test_NodeCannotAssignValueToFinalCheck6982528192101427038() throws Exception {

      runWithinCommand(() -> {
        SNode nodeToCheck = getRealNodeById("6982528192101427036");
        SNode operation = getRealNodeById("6982528192101427038");
        new CheckExpectedMessageRunnable.CheckExpectedRuleMessageRunnable(nodeToCheck, MessageStatus.ERROR, new SNodePointer("r:00000000-0000-4000-0000-011c895902c5(jetbrains.mps.baseLanguage.typesystem)", "4705425356437995912"), "", myProject.getRepository(), ((ProjectBase) myProject).getPlatform()).run();
      });
    }
    public void test_NodeCannotAssignValueToFinalCheck6549739314330314428() throws Exception {

      runWithinCommand(() -> {
        SNode nodeToCheck = getRealNodeById("6549739314330314426");
        SNode operation = getRealNodeById("6549739314330314428");
        new CheckExpectedMessageRunnable.CheckExpectedRuleMessageRunnable(nodeToCheck, MessageStatus.ERROR, new SNodePointer("r:00000000-0000-4000-0000-011c895902c5(jetbrains.mps.baseLanguage.typesystem)", "4705425356437995912"), "", myProject.getRepository(), ((ProjectBase) myProject).getPlatform()).run();
      });
    }
    public void test_NodeVariableHasNotBeenInitializedErrorCheck6549739314330060411() throws Exception {

      runWithinCommand(() -> {
        SNode nodeToCheck = getRealNodeById("6549739314330022596");
        SNode operation = getRealNodeById("6549739314330060411");
        new CheckExpectedMessageRunnable.CheckExpectedRuleMessageRunnable(nodeToCheck, MessageStatus.ERROR, new SNodePointer("r:00000000-0000-4000-0000-011c895902c5(jetbrains.mps.baseLanguage.typesystem)", "1529050434900907669"), "", myProject.getRepository(), ((ProjectBase) myProject).getPlatform()).run();
      });
    }
    public void test_ErrorMessagesCheck5706606249111739463() throws Exception {

      runWithinCommand(() -> {
        SNode nodeToCheck = getRealNodeById("5706606249111739408");
        SNode operation = getRealNodeById("5706606249111739463");
        new CheckErrorMessagesRunnable(nodeToCheck, false, false, ((ProjectBase) myProject).getPlatform()).includeSelf(false).exclude(ListSequence.fromListAndArray(new ArrayList<CheckExpectedMessageRunnable>(), new CheckExpectedMessageRunnable.CheckExpectedRuleMessageRunnable(getRealNodeById("5706606249110735306"), MessageStatus.ERROR, new SNodePointer("r:00000000-0000-4000-0000-011c895902c5(jetbrains.mps.baseLanguage.typesystem)", "4705425356437995912"), "", myProject.getRepository(), ((ProjectBase) myProject).getPlatform()), new CheckExpectedMessageRunnable.CheckExpectedRuleMessageRunnable(getRealNodeById("5706606249110712506"), MessageStatus.ERROR, new SNodePointer("r:00000000-0000-4000-0000-011c895902c5(jetbrains.mps.baseLanguage.typesystem)", "4705425356437995912"), "", myProject.getRepository(), ((ProjectBase) myProject).getPlatform()), new CheckExpectedMessageRunnable.CheckExpectedRuleMessageRunnable(getRealNodeById("6982528192101427026"), MessageStatus.ERROR, new SNodePointer("r:00000000-0000-4000-0000-011c895902c5(jetbrains.mps.baseLanguage.typesystem)", "4705425356437995912"), "", myProject.getRepository(), ((ProjectBase) myProject).getPlatform()), new CheckExpectedMessageRunnable.CheckExpectedRuleMessageRunnable(getRealNodeById("6982528192101427036"), MessageStatus.ERROR, new SNodePointer("r:00000000-0000-4000-0000-011c895902c5(jetbrains.mps.baseLanguage.typesystem)", "4705425356437995912"), "", myProject.getRepository(), ((ProjectBase) myProject).getPlatform()), new CheckExpectedMessageRunnable.CheckExpectedRuleMessageRunnable(getRealNodeById("6549739314330314426"), MessageStatus.ERROR, new SNodePointer("r:00000000-0000-4000-0000-011c895902c5(jetbrains.mps.baseLanguage.typesystem)", "4705425356437995912"), "", myProject.getRepository(), ((ProjectBase) myProject).getPlatform()), new CheckExpectedMessageRunnable.CheckExpectedRuleMessageRunnable(getRealNodeById("6549739314330022596"), MessageStatus.ERROR, new SNodePointer("r:00000000-0000-4000-0000-011c895902c5(jetbrains.mps.baseLanguage.typesystem)", "1529050434900907669"), "", myProject.getRepository(), ((ProjectBase) myProject).getPlatform()))).run();
      });
    }

  }
}
