Metadata-Version: 2.1
Name: bcdc-apitests
Version: 1.0.4
Summary: API testing for BC Data Catalog
Home-page: https://github.com/bcgov/bcdc-test
Author: Kevin Netherton
Author-email: kevin.netherton@gov.bc.ca
License: UNKNOWN
Description: # Automated BCDC API Testing 
        
        Intention is to test the CKAN API after deployment.
        
        Current tests include:
         - verification of preconfigured orgs required for testing
         - CRUD tests for packages.
         
        # OCP Build for BCDC-TEST
        
        pulls package from https://pypi.org/project/bcdc-apitests/
        new OC build triggered by github actions on commit to master branch
        
        how to create new build from build config
          
        ```
        oc create -f https://raw.githubusercontent.com/bcgov/bcdc-test/master/k8s/bcdc-test-buildconfig.yaml
        ```
        
        start build 
        
        ```
        oc start-build bcdc-test -n databcdc
        ```
        
        # OCP Job Template for BCDC-TEST
        
        example how to run job from template
        
        ```
        oc process -f https://raw.githubusercontent.com/bcgov/bcdc-test/master/k8s/bcdc-api-test-job-template.yaml -p BCDC_URL_CONFIG_NAME='cadi-bcdc-url' -p BCDC_API_SECRET_NAME='cadi-bcdc-api-key' -p ENV=dev | oc create -f -"
        
        ```
        Required parameters to override in template
        ```
        BCDC_URL_CONFIG_NAME = <Config Name in OCP to get URL of ckan instance to run against>
        BCDC_API_SECRET_NAME = <Secret Name in OCP to get ckan api key>
        ENV = <App Env to run in>
        ```
        
        # OCP Build for BCDC-TEST-DEV
        
        pulls from https://pypi.org/project/bcdc-apitests-dev/
        new OC build triggered by github actions on push to dev branch
        
        ```
        oc create -f https://raw.githubusercontent.com/bcgov/bcdc-test/master/k8s/bcdc-test-buildconfig-dev.yaml
        ```
        
        # OC Job Template for BCDC-TEST-DEV
        
        ```
        oc process -f https://raw.githubusercontent.com/bcgov/bcdc-test/master/k8s/bcdc-api-test-job-template-development.yaml -p BCDC_URL_CONFIG_NAME='cadi-bcdc-url' -p BCDC_API_SECRET_NAME='cadi-bcdc-api-key' -p ENV=dev | oc create -f -"
        ```
        ```
        Required parameters to override in template
        ```
        BCDC_URL_CONFIG_NAME = <Config Name in OCP to get URL of ckan instance to run against>
        BCDC_API_SECRET_NAME = <Secret Name in OCP to get ckan api key>
        ENV = <App Env to run in>
        ```
        
        # OC Job Cleanup 
        * to be performed on a regular basis to cleanup old pods created by jobs
        
        to view all jobs
        ```
        oc get job
        ```
        to delete all jobs by label
        ```
        oc delete job -l name=ckan-api-test
        ```
        # Run Tests locally
        
        ```
        pip install pypandoc 
        pip install bcdc_apitests
        export BCDC_API_KEY=<api-key>
        export BCDC_URL=<url-to-ckan>
        pytest --pyargs bcdc_apitests
        ```
          
        # Packaging
        
        ### disable teardown
        `--df` Include this switch if you want to disable teardown that deletes the test 
        data that gets generated by the test suite.  The various options basically tell the 
        test suite not to delete a particular type of data that are generated by the tests.
        
        Options include:
        * *orgs*
        * *groups*
        * *packages*
        * *resources*
        * *users*
        * *other*
        * *ALL*
        
        # Packaging
        
        Packaging is currently configured to be built automatically by github actions when 
        a pull request on master has been successfully merged.  
        
        ## packaging version numbers
        
        When a new package is built it will automatically check what the last version 
        is in PYPI for the package and increment that number.  
        
        Example if the version in pypi is 7.3.45, the next time the github action triggers
        it will be 7.3.46.  If you want the change either the major or the minor number
        set the number in packages __init__.py file, for example to increment the major
        version number to 8.
        
        ```
        ...
        version=8.0.0
        ...
        ```
        
        
        
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Framework :: Pytest
Classifier: Programming Language :: Python :: 2.7
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Topic :: Software Development :: Testing
Classifier: Operating System :: OS Independent
Requires-Python: >=2.6, !=3.0.*, !=3.1.*, !=3.2.*, <4
Description-Content-Type: text/markdown
