Skip to main content

A testing library for Speckle models

Project description

Maple

Automate your model Quality Check with Speckle and Maple

About

Maple is a library designed to write simple code that can check different attributes of a Model in Speckle.

Using Maple you can write test specs that check any parameter or quantity inside the project model.

Maple can be integrated into Speckle Automate to run the quality check tests on a continuous integration and ensure project standards. See Maple-Automate-CI to check the full implementation of maple in Speckle Automate.

Get started

For a more detailed guide check out Getting started

Install the library from PyPi

pip install maple-spec

Then, create your main.py to test your specs locally

# main.py
import maple as mp

def spec_a():
    mp.it("checks window height is greater than 2600 mm")

    mp.get('category', 'Windows')\
        .where('speckle_type',
               'Objects.Other.Instance:Objects.Other.Revit.RevitInstance')\
        .its('Height')\
        .should('be.greater', 2600)

# Use the project and model id of one of your projects
mp.init_model(project_id="24fa0ed1c3", model_id="2696b4a381")
mp.run(spec_a)

For this to work out of the box, you should have the Speckle Manager installed and your account set-up, so Maple can fetch the data from your stream.

If not, alternatively you can set an environment variable called SPECKLE_TOKEN with a Speckle token that can read from streams, for example:

SPECKLE_TOKEN="your-secret-token"

Finally run the file with python like so:

python main.py

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

maple_spec-0.0.8.tar.gz (19.3 kB view details)

Uploaded Source

Built Distribution

maple_spec-0.0.8-py3-none-any.whl (14.6 kB view details)

Uploaded Python 3

File details

Details for the file maple_spec-0.0.8.tar.gz.

File metadata

  • Download URL: maple_spec-0.0.8.tar.gz
  • Upload date:
  • Size: 19.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.19

File hashes

Hashes for maple_spec-0.0.8.tar.gz
Algorithm Hash digest
SHA256 0681c19c1a508d78dd3e01fc1333c590d925f9e9392ef42ee7ff804a38b6ce7d
MD5 25c99b6e6c9c88cc3ab5373261bdfad9
BLAKE2b-256 9c951d2f416b8f4fa9d3befe446f471b92bb2f25f307a4ce8106350bc06cfda4

See more details on using hashes here.

File details

Details for the file maple_spec-0.0.8-py3-none-any.whl.

File metadata

  • Download URL: maple_spec-0.0.8-py3-none-any.whl
  • Upload date:
  • Size: 14.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.19

File hashes

Hashes for maple_spec-0.0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 d20850eb4aa7d55d511aced7a9df6c768a2fae69b8328daba7c871ce13676618
MD5 1682607d897e1f6001a2965367022bd3
BLAKE2b-256 66c5cfbc70eda2736ddec04168ff7d28d27ac469045415a2e69a6b11bef5067d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page