Skip to content

aehrc/smart-health-checks-inferno

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Smart Health Checks Inferno

A testing suite for validating FHIR servers against the Smart Health Checks Implementation Guide. This project is built on the Inferno testing framework and provides automated tests to ensure compliance with the Smart Health Checks IG.

Overview

Smart Health Checks Inferno is designed to validate FHIR servers that implement the Smart Health Checks Implementation Guide. It tests various FHIR resources including:

  • Patient
  • Practitioner
  • Observations (Blood Pressure, Body Height, Body Weight, etc.)
  • Questionnaire Responses
  • Conditions
  • Immunizations
  • Medication Statements
  • Allergy Intolerances

The test suite validates resource conformance, search capabilities, and reference resolution according to the implementation guide specifications.

Prerequisites

Installation

Using Docker (Recommended)

  1. Clone the repository:

    git clone https://github.com/aehrc/smart-health-checks-inferno.git
    cd smart-health-checks-inferno
  2. Set up the project:

    make setup

    This command will:

    • Pull the necessary Docker images
    • Build the project
    • Run database migrations

Running the Application

Using Docker

Start the application:

make run

This will build and start all the necessary services. Once running, you can access the application at http://localhost.

Development

Generating Test Files

To generate or regenerate test files from the implementation guide:

make generate

Running Tests

To run the test suite:

make tests

Code Linting

To check code style:

make rubocop

To automatically fix code style issues:

make rubocop-fix

Full Development Restart

To stop, rebuild, and restart the application with fresh generated files:

make full_develop_restart

Configuration

The project configuration is stored in config.json. Key configuration options include:

  • Implementation Guide (IG) details
  • Terminology server URL
  • Profile configurations
  • Resource configurations

Project Structure

  • lib/smart_health_checks_test_kit/: Main test kit code
    • generated/: Generated test files based on the implementation guide
    • version.rb: Version information

Docker Services

The project uses several Docker services:

  • inferno: The main application
  • inferno-worker: Background worker using Sidekiq
  • validator-api: Dockerized official validator wrapper
  • nginx: Web server that proxies requests
  • redis: Used for caching and background job queuing
  • postgres: Database for storing test results

License

This project is licensed under the Apache License, Version 2.0 - see the LICENSE file for details.

Links

About

Inferno test kit for testing API interactions with respect to Smart Health Checks capability statements.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •