public void RulesPluginBuilder_RulesFileValidation() { // Arrange MockJdkWrapper mockJdkWrapper = new MockJdkWrapper(); RulesPluginBuilder builder = new RulesPluginBuilder(mockJdkWrapper, new MockMavenArtifactHandler(), new TestLogger()); SetValidCoreProperties(builder); builder.SetLanguage("aLanguage"); // 1. Rules file not specified -> error AssertException.Expect <InvalidOperationException>(() => builder.Build()); // 2. Non-existent rules file specified -> error string testDir = TestUtils.EnsureTestDirectoryExists(this.TestContext); string rulesFile = Path.Combine(testDir, "missingFile.txt"); mockJdkWrapper.AssertCodeNotCompiled(); builder.SetRulesFilePath(rulesFile); FileNotFoundException ex = AssertException.Expect <FileNotFoundException>(() => builder.Build()); Assert.AreEqual(ex.FileName, rulesFile); mockJdkWrapper.AssertCodeNotCompiled(); // 3. Rules file exists -> succeeds AddValidDummyRulesFiles(builder); builder.Build(); // should succeed mockJdkWrapper.AssertJarBuilt(); }
public void RulesPluginBuilder_SqaleFileValidation() { // Arrange string testDir = TestUtils.EnsureTestDirectoryExists(this.TestContext); MockJdkWrapper mockJdkWrapper = new MockJdkWrapper(); RulesPluginBuilder builder = new RulesPluginBuilder(mockJdkWrapper, new MockMavenArtifactHandler(), new TestLogger()); SetValidCoreProperties(builder); builder.SetLanguage("aLanguage"); AddValidDummyRulesFiles(builder); // 1. Sqale file not specified -> ok builder.Build(); // 2. Non-existent Sqale file specified -> error mockJdkWrapper.ClearCalledMethodList(); string sqaleFile = Path.Combine(testDir, "missingFile.txt"); builder.SetSqaleFilePath(sqaleFile); FileNotFoundException ex = AssertException.Expect <FileNotFoundException>(() => builder.Build()); Assert.AreEqual(ex.FileName, sqaleFile); mockJdkWrapper.AssertCodeNotCompiled(); // 3. Sqale file exists -> succeeds sqaleFile = TestUtils.CreateTextFile("sqale.txt", testDir, "dummy sqale file"); builder.SetSqaleFilePath(sqaleFile); builder.Build(); // should succeed mockJdkWrapper.AssertJarBuilt(); }
public void RulesPluginBuilder_RulesFileValidation() { // Arrange MockJdkWrapper mockJdkWrapper = new MockJdkWrapper(); RulesPluginBuilder builder = new RulesPluginBuilder(mockJdkWrapper, new MockMavenArtifactHandler(), new TestLogger()); SetValidCoreProperties(builder); builder.SetLanguage("aLanguage"); // 1. Rules file not specified -> error AssertException.Expect<InvalidOperationException>(() => builder.Build()); // 2. Non-existent rules file specified -> error string testDir = TestUtils.EnsureTestDirectoryExists(this.TestContext); string rulesFile = Path.Combine(testDir, "missingFile.txt"); mockJdkWrapper.AssertCodeNotCompiled(); builder.SetRulesFilePath(rulesFile); FileNotFoundException ex = AssertException.Expect<FileNotFoundException>(() => builder.Build()); Assert.AreEqual(ex.FileName, rulesFile); mockJdkWrapper.AssertCodeNotCompiled(); // 3. Rules file exists -> succeeds AddValidDummyRulesFiles(builder); builder.Build(); // should succeed mockJdkWrapper.AssertJarBuilt(); }
public void RulesPluginBuilder_SqaleFileValidation() { // Arrange string testDir = TestUtils.EnsureTestDirectoryExists(this.TestContext); MockJdkWrapper mockJdkWrapper = new MockJdkWrapper(); RulesPluginBuilder builder = new RulesPluginBuilder(mockJdkWrapper, new MockMavenArtifactHandler(), new TestLogger()); SetValidCoreProperties(builder); builder.SetLanguage("aLanguage"); AddValidDummyRulesFiles(builder); // 1. Sqale file not specified -> ok builder.Build(); // 2. Non-existent Sqale file specified -> error mockJdkWrapper.ClearCalledMethodList(); string sqaleFile = Path.Combine(testDir, "missingFile.txt"); builder.SetSqaleFilePath(sqaleFile); FileNotFoundException ex = AssertException.Expect<FileNotFoundException>(() => builder.Build()); Assert.AreEqual(ex.FileName, sqaleFile); mockJdkWrapper.AssertCodeNotCompiled(); // 3. Sqale file exists -> succeeds sqaleFile = TestUtils.CreateTextFile("sqale.txt", testDir, "dummy sqale file"); builder.SetSqaleFilePath(sqaleFile); builder.Build(); // should succeed mockJdkWrapper.AssertJarBuilt(); }