Skip to content

Commit

Permalink
Mutation evaluation, java only
Browse files Browse the repository at this point in the history
  • Loading branch information
javiertuya committed Aug 11, 2024
1 parent d419342 commit 1fd57f9
Show file tree
Hide file tree
Showing 36 changed files with 517 additions and 163 deletions.
46 changes: 46 additions & 0 deletions net/QACover/Giis.Qacover.Driver/QueryReader.N.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
using Giis.Qacover.Core;
using Giis.Qacover.Portable;
using System;
using System.Collections.Generic;
using System.Data.Common;

namespace Giis.Qacover.Driver
{
public class QueryReader : IQueryReader
{
DbCommand cmd;

// This implementation does not takes a connection and sql,
// included both and was created by the StatementAdapter
// because the way in which parameters were replaced
public QueryReader(DbCommand cmd)
{
this.cmd = cmd;
}
public bool HasRows()
{
try
{
DbDataReader reader = cmd.ExecuteReader();
bool hasNext = reader.Read();
reader.Close();
return hasNext;
}
catch (Exception e) // just to produce same exception than java version
{
throw new QaCoverException("QueryReader.hasRows", e);
}
}

public IList<string[]> GetRows()
{
throw new System.NotImplementedException();
}

public bool EqualRows(IList<string[]> expected)
{
throw new System.NotImplementedException();
}

}
}
19 changes: 4 additions & 15 deletions net/QACover/Giis.Qacover.Driver/StatementAdapter.N.cs
Original file line number Diff line number Diff line change
Expand Up @@ -64,13 +64,9 @@ public override Connection GetConnection()
{
return new Connection(nativeConn);
}
/**
* Determina si la ejecucion del sql devuelve alguna fila (usada para evaluar reglas fpc)
*/
public override bool HasRows(string sql)

public override IQueryReader GetQueryReader(String sql)
{
try
{
DbCommand cmd = this.nativeConn.CreateCommand();
//El remplazo de parametros tiene tres situaciones:
//-no hay parametros
Expand All @@ -86,15 +82,7 @@ public override bool HasRows(string sql)
else if (this.parameters != null && this.parameters.Size() > 0)
cmd.CommandText = GetSqlWithValues(sql);

DbDataReader reader = cmd.ExecuteReader();
bool hasNext = reader.Read();
reader.Close();
return hasNext;
}
catch (Exception e)
{
throw new QaCoverException("SpyStatementAdapter.hasRows", e);
}
return new QueryReader(cmd);
}
private void AddParameters(DbCommand cmd, DbParameterCollection parameters)
{
Expand All @@ -114,6 +102,7 @@ private void AddParameters(DbCommand cmd, DbParameterCollection parameters)
cmd.Parameters.Add(param);
}
}

}

}
14 changes: 14 additions & 0 deletions net/QACover/Translated/Giis.Qacover.Core.Services/Configuration.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions net/QACover/Translated/Giis.Qacover.Core/CoverageManager.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

24 changes: 24 additions & 0 deletions net/QACover/Translated/Giis.Qacover.Core/IQueryReader.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

63 changes: 2 additions & 61 deletions net/QACover/Translated/Giis.Qacover.Core/QueryStatement.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions net/QACover/Translated/Giis.Qacover.Core/RuleDriver.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 10 additions & 1 deletion net/QACover/Translated/Giis.Qacover.Core/RuleDriverFactory.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 7 additions & 2 deletions net/QACover/Translated/Giis.Qacover.Core/RuleDriverFpc.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

34 changes: 34 additions & 0 deletions net/QACover/Translated/Giis.Qacover.Core/RuleDriverMutation.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions net/QACover/Translated/Giis.Qacover.Report/ClassHtmlWriter.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 1fd57f9

Please sign in to comment.