Giter VIP home page Giter VIP logo

virtual-schema-shared-integration-tests's Introduction

Virtual Schema Shared Integration Tests

Build Status Maven Central โ€“ virtual-schema-shared-integration-tests

Quality Gate Status

Security Rating Reliability Rating Maintainability Rating Technical Debt

Code Smells Coverage Duplicated Lines (%) Lines of Code

This repository contains abstract integration tests for Exasol Virtual Schemas.

The tests check that Exasol functions behave in the same way on a Virtual Schema table and on a regular Exasol table.

Usage

You can use these tests by subclassing ScalarFunctionsTestBase in your project's tests. Your test will then inherit the shared tests.

Excludes

For some dialects some tests might not be relevant or applicable. That's why this test suite allows you to exclude certain tests:

@Override
public Set<String> getDialectSpecificExcludes(){
    return Set.of("neg");
}

You can also exclude certain parameter combinations for the automatic tests.

Additional Information

virtual-schema-shared-integration-tests's People

Contributors

chiaradiamarcelo avatar jakobbraun avatar kaklakariada avatar pj-spoelders avatar redcatbear avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

rohankumardubey

virtual-schema-shared-integration-tests's Issues

๐Ÿ” CVE-2024-26308: org.apache.commons:commons-compress:jar:1.24.0:test

Summary

Allocation of Resources Without Limits or Throttling vulnerability in Apache Commons Compress.This issue affects Apache Commons Compress: from 1.21 before 1.26.

Users are recommended to upgrade to version 1.26, which fixes the issue.

CVE: CVE-2024-26308
CWE: CWE-770

References

Make testScalarFunctions directly executable in test runners.

Currently you need to run the whole encompassing ScalarFunctionsTestBase derived test class to also run the nested WithAutomaticParameterDiscovery class and its very convoluted testScalarFunctions test from test runner UIs (tried intellij's and eclipse's).
The nested class and its method do not show up there. Probably because these are part of the abstract ScalarFunctionsTestBase class, which is an abstract class (as this test framework was designed).

This could be improved.

As a bonus: the current testScalarFunctions test uses a caching system which is overly complex. It should be seen if this can somehow be improved. Probably not a simple task as it depends on trying out various combinations and then caching those that DO work on the Exasol database to retry later to speed up things.

Add a DECIMAL column with decimal places

Testing table only contains a DECIMAL column without decimal places. To also test with decimal places we should add a column DECIMAL column with decimal places.

Fix CVE-2023-42503 in `org.apache.commons:commons-compress`

Error:  Failed to execute goal org.sonatype.ossindex.maven:ossindex-maven-plugin:3.2.0:audit (default-cli) on project virtual-schema-shared-integration-tests: Detected 1 vulnerable components:
Error:    org.apache.commons:commons-compress:jar:1.22:test; https://ossindex.sonatype.org/component/pkg:maven/org.apache.commons/[email protected]?utm_source=ossindex-client&utm_medium=integration&utm_content=1.8.1
Error:      * [CVE-2023-42503] CWE-20: Improper Input Validation (5.5); https://ossindex.sonatype.org/vulnerability/CVE-2023-42503?component-type=maven&component-name=org.apache.commons%2Fcommons-compress&utm_source=ossindex-client&utm_medium=integration&utm_content=1.8.1

Upgrade dependencies

Error:  Failed to execute goal org.sonatype.ossindex.maven:ossindex-maven-plugin:3.1.0:audit (default-cli) on project virtual-schema-common-document-files: Detected 1 vulnerable components:
Error:    org.postgresql:postgresql:jar:42.2.23.jre7:test; https://ossindex.sonatype.org/component/pkg:maven/org.postgresql/[email protected]?utm_source=ossindex-client&utm_medium=integration&utm_content=1.1.1
Error:      * [CVE-2022-21724] pgjdbc is the offical PostgreSQL JDBC Driver. A security hole was found in the j... (9.8); https://ossindex.sonatype.org/vulnerability/0f319d1b-e964-4471-bded-db3aeb3c3a29?component-type=maven&component-name=org.postgresql.postgresql&utm_source=ossindex-client&utm_medium=integration&utm_content=1.1.1

๐Ÿ” CVE-2024-25710: org.apache.commons:commons-compress:jar:1.24.0:test

Summary

Loop with Unreachable Exit Condition ('Infinite Loop') vulnerability in Apache Commons Compress.This issue affects Apache Commons Compress: from 1.3 through 1.25.0.

Users are recommended to upgrade to version 1.26.0 which fixes the issue.

CVE: CVE-2024-25710
CWE: CWE-835

References

Refactor WithAutomaticParameterDiscovery

Currently, the scalar function tests with automatic parameter discovery use a nested test class for having a common beforeAll in order to improve performance.
We should however user nested class in a way to group tests in a meaningful way.
Solution:

  • Refactor to create the same test setup again and again
  • Add a cache for test setups

Dependency check fails

Error:  Failed to execute goal org.sonatype.ossindex.maven:ossindex-maven-plugin:3.2.0:audit (default-cli) on project virtual-schema-shared-integration-tests: Detected 1 vulnerable components:
Error:    org.yaml:snakeyaml:jar:1.31:compile; https://ossindex.sonatype.org/component/pkg:maven/org.yaml/[email protected]?utm_source=ossindex-client&utm_medium=integration&utm_content=1.8.1
Error:      * [CVE-2022-38751] CWE-787: Out-of-bounds Write (6.5); https://ossindex.sonatype.org/vulnerability/CVE-2022-38751?component-type=maven&component-name=org.yaml%2Fsnakeyaml&utm_source=ossindex-client&utm_medium=integration&utm_content=1.8.1
Error:      * [CVE-2022-38752] CWE-787: Out-of-bounds Write (6.5); https://ossindex.sonatype.org/vulnerability/CVE-2022-38752?component-type=maven&component-name=org.yaml%2Fsnakeyaml&utm_source=ossindex-client&utm_medium=integration&utm_content=1.8.1

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.