microting/eform-sdk-dotnet

View on GitHub

Showing 3,203 of 3,219 total issues

Method Units_Delete_DoesSetWorkflowStateToRemoved has 70 lines of code (exceeds 25 allowed). Consider refactoring.
Open

        [Test]
        public async Task Units_Delete_DoesSetWorkflowStateToRemoved()
        {
            //Arrange

Severity: Major
Found in eFormSDK.Base.Tests/UnitsUTest.cs - About 2 hrs to fix

    Similar blocks of code found in 2 locations. Consider refactoring.
    Open

            public Task<bool> EntitySearchItemUpdate(string entitySearchGroupId, string entitySearchItemId, string name,
                string description, string id)
            {
                _log.LogEverything("Communicator.EntitySearchItemUpdate", "called");
                _log.LogVariable("Communicator.EntitySearchItemUpdate", nameof(entitySearchGroupId), entitySearchGroupId);
    Severity: Major
    Found in eFormCore/Communication/Communicator.cs and 1 other location - About 2 hrs to fix
    eFormCore/Communication/Communicator.cs on lines 754..765

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 197.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 2 locations. Consider refactoring.
    Open

            public Task<bool> EntitySelectItemUpdate(string entitySearchGroupId, string entitySearchItemId, string name,
                int displayOrder, string ownUUID)
            {
                _log.LogEverything("Communicator.EntitySelectItemUpdate", "called");
                _log.LogVariable("Communicator.EntitySelectItemUpdate", nameof(entitySearchGroupId), entitySearchGroupId);
    Severity: Major
    Found in eFormCore/Communication/Communicator.cs and 1 other location - About 2 hrs to fix
    eFormCore/Communication/Communicator.cs on lines 707..718

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 197.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 2 locations. Consider refactoring.
    Open

        public class SingleSelect : DataItem
        {
            internal SingleSelect()
            {
                KeyValuePairList = new List<KeyValuePair>();
    Severity: Major
    Found in eFormCore/Infrastructure/Models/DataItem.cs and 1 other location - About 2 hrs to fix
    eFormCore/Infrastructure/Models/DataItem.cs on lines 331..358

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 196.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 2 locations. Consider refactoring.
    Open

        public class MultiSelect : DataItem
        {
            internal MultiSelect()
            {
                KeyValuePairList = new List<KeyValuePair>();
    Severity: Major
    Found in eFormCore/Infrastructure/Models/DataItem.cs and 1 other location - About 2 hrs to fix
    eFormCore/Infrastructure/Models/DataItem.cs on lines 474..501

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 196.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Method Core_eForm_SimplePictureFormCreateInDB_ReturnseFormId has 69 lines of code (exceeds 25 allowed). Consider refactoring.
    Open

            [Test]
            public async Task Core_eForm_SimplePictureFormCreateInDB_ReturnseFormId()
            {
                // Arrange
                string xmlstring = @"
    Severity: Major
    Found in eFormSDK.Integration.CheckLists.CoreTests/CoreTesteFormCreateInDB.cs - About 2 hrs to fix

      Method Core_eFormSimpleTextSingleLineFormFromXML_ReturnseMainElement has 69 lines of code (exceeds 25 allowed). Consider refactoring.
      Open

              [Test] // Text
              public async Task Core_eFormSimpleTextSingleLineFormFromXML_ReturnseMainElement()
              {
                  string xmlstring = @"
                      <?xml version='1.0' encoding='UTF-8'?>
      Severity: Major
      Found in eFormSDK.Integration.CheckLists.CoreTests/CoreTesteFormFromXML.cs - About 2 hrs to fix

        Method SettingCheckAll has 69 lines of code (exceeds 25 allowed). Consider refactoring.
        Open

                public async Task<List<string>> SettingCheckAll()
                {
                    string methodName = "SqlController.SettingCheckAll";
                    List<string> result = new List<string>();
                    try
        Severity: Major
        Found in eFormCore/Infrastructure/SqlController.cs - About 2 hrs to fix

          Method EformCreateDb has 69 lines of code (exceeds 25 allowed). Consider refactoring.
          Open

                  private async Task<int> EformCreateDb(MainElement mainElement)
                  {
                      string methodName = "SqlController.EformCreateDb";
                      try
                      {
          Severity: Major
          Found in eFormCore/Infrastructure/SqlController.cs - About 2 hrs to fix

            Method AddImageToBody has 69 lines of code (exceeds 25 allowed). Consider refactoring.
            Open

                    private static void AddImageToBody(WordprocessingDocument wordDoc, string relationshipId, Int64Value cx,
                        Int64Value cy, Paragraph paragraph = null)
                    {
                        WriteDebugConsoleLogEntry(new LogEntry(2, "ReportHelper", "AddImageToBody called"));
                        // Define the reference of the image.
            Severity: Major
            Found in eFormCore/Helpers/ReportHelper.cs - About 2 hrs to fix

              Method JasperToPdf has 69 lines of code (exceeds 25 allowed). Consider refactoring.
              Open

                      private async Task<string> JasperToPdf(int caseId, string jasperTemplate, string timeStamp)
                      {
                          string methodName = "Core.JasperToPdf";
                          // run jar
                          // Start the child process.
              Severity: Major
              Found in eFormCore/Core.cs - About 2 hrs to fix

                Method ReplaceDataElementsAndDataItems has a Cognitive Complexity of 35 (exceeds 20 allowed). Consider refactoring.
                Open

                        private async Task<List<Element>> ReplaceDataElementsAndDataItems(int caseId, List<Element> elementList,
                            List<FieldValue> lstAnswers)
                        {
                            List<Element> elementListReplaced = new List<Element>();
                
                
                Severity: Minor
                Found in eFormCore/Core.cs - About 2 hrs to fix

                Cognitive Complexity

                Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                A method's cognitive complexity is based on a few simple rules:

                • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                • Code is considered more complex for each "break in the linear flow of the code"
                • Code is considered more complex when "flow breaking structures are nested"

                Further reading

                Method GetQuestionSet has a Cognitive Complexity of 35 (exceeds 20 allowed). Consider refactoring.
                Open

                        public async Task<bool> GetQuestionSet(int microtingUid, int questionSetId, int threadNumber)
                        {
                            var jsonSerializerSettings = new JsonSerializerSettings
                            {
                                NullValueHandling = NullValueHandling.Ignore,
                Severity: Minor
                Found in eFormCore/Core.cs - About 2 hrs to fix

                Cognitive Complexity

                Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                A method's cognitive complexity is based on a few simple rules:

                • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                • Code is considered more complex for each "break in the linear flow of the code"
                • Code is considered more complex when "flow breaking structures are nested"

                Further reading

                Similar blocks of code found in 2 locations. Consider refactoring.
                Open

                            if (field.FieldType == "SingleSelect")
                            {
                                var singleSelectFieldOptions =
                                    await db.FieldOptions.AsNoTracking().Where(x => x.FieldId == field.Id)
                                        .Join(db.FieldOptionTranslations,
                Severity: Major
                Found in eFormCore/Infrastructure/SqlController.cs and 1 other location - About 2 hrs to fix
                eFormCore/Infrastructure/SqlController.cs on lines 1958..1980

                Duplicated Code

                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                Tuning

                This issue has a mass of 194.

                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                Refactorings

                Further Reading

                Similar blocks of code found in 2 locations. Consider refactoring.
                Open

                            if (field.FieldType == "MultiSelect")
                            {
                                var multiSelectFieldOptions =
                                    await db.FieldOptions.AsNoTracking().Where(x => x.FieldId == field.Id)
                                        .Join(db.FieldOptionTranslations,
                Severity: Major
                Found in eFormCore/Infrastructure/SqlController.cs and 1 other location - About 2 hrs to fix
                eFormCore/Infrastructure/SqlController.cs on lines 1934..1956

                Duplicated Code

                Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                Tuning

                This issue has a mass of 194.

                We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                Refactorings

                Further Reading

                Method SQL_PostCase_CaseReadFull has 68 lines of code (exceeds 25 allowed). Consider refactoring.
                Open

                        [Test]
                        public async Task SQL_PostCase_CaseReadFull()
                        {
                            // Arrance
                
                
                Severity: Major
                Found in eFormSDK.Integration.Case.SqlControllerTests/SqlControllerTestCase.cs - About 2 hrs to fix

                  Method Core_eFormSimpleSaveButtonFormCreateInDB_ReturnseFormId has 68 lines of code (exceeds 25 allowed). Consider refactoring.
                  Open

                          [Test]
                          public async Task Core_eFormSimpleSaveButtonFormCreateInDB_ReturnseFormId()
                          {
                              string xmlstring = @"
                                  <?xml version='1.0' encoding='UTF-8'?>
                  Severity: Major
                  Found in eFormSDK.Integration.CheckLists.CoreTests/CoreTesteFormCreateInDB.cs - About 2 hrs to fix

                    Method Core_eFormSimpleTextMultiLineFormFromXML_ReturnseMainElement has 68 lines of code (exceeds 25 allowed). Consider refactoring.
                    Open

                            [Test] // Comment
                            public async Task Core_eFormSimpleTextMultiLineFormFromXML_ReturnseMainElement()
                            {
                                string xmlstring = @"
                                    <?xml version='1.0' encoding='UTF-8'?>
                    Severity: Major
                    Found in eFormSDK.Integration.CheckLists.CoreTests/CoreTesteFormFromXML.cs - About 2 hrs to fix

                      Method Down has 68 lines of code (exceeds 25 allowed). Consider refactoring.
                      Open

                              protected override void Down(MigrationBuilder migrationBuilder)
                              {
                                  migrationBuilder.AlterColumn<string>(
                                      name: "MicrotingUid",
                                      table: "notifications",
                      Severity: Major
                      Found in eFormCore/Migrations/20190923100451_ChangeStringToInt.cs - About 2 hrs to fix

                        Method Up has 68 lines of code (exceeds 25 allowed). Consider refactoring.
                        Open

                                protected override void Up(MigrationBuilder migrationBuilder)
                                {
                                    migrationBuilder.AddColumn<int>(
                                        name: "MicrotingUid",
                                        table: "survey_configurations",
                        Severity: Major
                        Found in eFormCore/Migrations/20200120093951_CleanupInSight.cs - About 2 hrs to fix
                          Severity
                          Category
                          Status
                          Source
                          Language