Coverage report: 83%

Files Functions Classes

coverage.py v7.16.2, created at 2026-10-19 02:58 +0000

      Statements   Branches   Total
File function   coverage statements missing excluded   coverage branches partial   coverage
lunar_toolkit/asp.py read_residual_norms   92% 13 1 0   75% 4 1   88%
lunar_toolkit/asp.py image_subset   88% 8 1 0   50% 4 2   75%
lunar_toolkit/asp.py raster_bounds   50% 6 3 0   50% 2 1   50%
lunar_toolkit/asp.py srs_proj4   0% 2 2 0   100% 0 0   0%
lunar_toolkit/asp.py parse_aaigrid   94% 18 1 0   67% 6 2   88%
lunar_toolkit/cli/__init__.py main   75% 8 2 0   75% 4 1   75%
lunar_toolkit/cli/__init__.py (no function)   89% 9 1 0   50% 2 1   82%
lunar_toolkit/cli/_jobs.py Job.on_bytes   69% 16 5 0   67% 6 2   68%
lunar_toolkit/cli/_jobs.py JobManager.submit   86% 14 2 0   75% 8 2   82%
lunar_toolkit/cli/_jobs.py JobManager._run   67% 15 5 0   75% 4 1   68%
lunar_toolkit/cli/_jobs.py JobManager.cancel   89% 9 1 0   75% 4 1   85%
lunar_toolkit/cli/_jobs.py _flag   75% 4 1 0   50% 2 1   67%
lunar_toolkit/cli/_jobs.py _str   75% 4 1 0   50% 2 1   67%
lunar_toolkit/cli/_jobs.py _strings   62% 8 3 0   50% 6 3   57%
lunar_toolkit/cli/_jobs.py _region   0% 8 8 0   0% 2 0   0%
lunar_toolkit/cli/_jobs.py _build_db.run   83% 12 2 0   50% 2 1   79%
lunar_toolkit/cli/_jobs.py _pgda   0% 14 14 0   0% 6 0   0%
lunar_toolkit/cli/_jobs.py _pgda.run   0% 11 11 0   0% 2 0   0%
lunar_toolkit/cli/_jobs.py _sdem   0% 4 4 0   100% 0 0   0%
lunar_toolkit/cli/_jobs.py _sdem.run   0% 26 26 0   0% 8 0   0%
lunar_toolkit/cli/_jobs.py _download   36% 14 9 0   17% 6 1   30%
lunar_toolkit/cli/_jobs.py _download.run   0% 23 23 0   0% 6 0   0%
lunar_toolkit/cli/_jobs.py submit   88% 8 1 0   75% 4 1   83%
lunar_toolkit/cli/_status.py _walk   67% 21 7 0   67% 12 2   67%
lunar_toolkit/cli/_status.py dir_size   78% 9 2 0   100% 2 0   82%
lunar_toolkit/cli/_status.py cache_summary   73% 11 3 0   75% 4 1   73%
lunar_toolkit/cli/_status.py _cache_name   0% 4 4 0   0% 2 0   0%
lunar_toolkit/cli/_status.py reference   90% 21 2 0   80% 10 2   87%
lunar_toolkit/cli/_status.py runs   68% 22 7 0   67% 6 2   68%
lunar_toolkit/cli/_status.py _environment   80% 15 3 0   50% 6 1   71%
lunar_toolkit/cli/_status.py cooldowns   100% 7 0 0   75% 4 1   91%
lunar_toolkit/cli/_status.py disks   81% 21 4 0   80% 10 2   81%
lunar_toolkit/cli/_status.py StatusCache.get   100% 7 0 0   50% 2 1   89%
lunar_toolkit/cli/_utils.py load_sources   33% 12 8 0   12% 8 1   25%
lunar_toolkit/cli/_utils.py extract_product_id   0% 6 6 0   0% 4 0   0%
lunar_toolkit/cli/_utils.py _looks_like_id   0% 2 2 0   100% 0 0   0%
lunar_toolkit/cli/_utils.py resolve_images   44% 16 9 0   38% 8 1   42%
lunar_toolkit/cli/_utils.py region_args   88% 8 1 0   83% 6 1   86%
lunar_toolkit/cli/_utils.py ode_filters   0% 1 1 0   100% 0 0   0%
lunar_toolkit/cli/_utils.py parse_options   86% 7 1 0   75% 4 1   82%
lunar_toolkit/cli/_utils.py _typed   69% 13 4 0   50% 8 4   62%
lunar_toolkit/cli/app.py webview_gui   92% 12 1 0   90% 10 1   91%
lunar_toolkit/cli/app.py _has   0% 4 4 0   100% 0 0   0%
lunar_toolkit/cli/app.py _gtk_webkit   0% 11 11 0   0% 2 0   0%
lunar_toolkit/cli/app.py chromium_binary   94% 18 1 0   83% 18 3   89%
lunar_toolkit/cli/app.py _quiet_qt_exit   0% 3 3 0   100% 0 0   0%
lunar_toolkit/cli/app.py _quiet_qt_exit.handler   0% 2 2 0   0% 2 0   0%
lunar_toolkit/cli/app.py _run_webview   0% 8 8 0   0% 2 0   0%
lunar_toolkit/cli/app.py _run_chromium   0% 5 5 0   100% 0 0   0%
lunar_toolkit/cli/app.py run   54% 37 17 0   40% 10 4   51%
lunar_toolkit/cli/build_db.py run   0% 22 22 0   0% 10 0   0%
lunar_toolkit/cli/download.py run   0% 32 32 0   0% 12 0   0%
lunar_toolkit/cli/kaguya.py run   54% 59 27 0   45% 20 5   52%
lunar_toolkit/cli/kaguya.py run.import_all   75% 4 1 0   75% 4 1   75%
lunar_toolkit/cli/ode_search.py run   0% 25 25 0   0% 8 0   0%
lunar_toolkit/cli/pairs.py run   74% 39 10 0   64% 14 5   72%
lunar_toolkit/cli/pairs.py _stereo_pairs   82% 17 3 0   100% 6 0   87%
lunar_toolkit/cli/process.py run   0% 37 37 0   0% 18 0   0%
lunar_toolkit/cli/query.py run   0% 20 20 0   0% 8 0   0%
lunar_toolkit/cli/reference.py _region_info   100% 6 0 0   50% 2 1   88%
lunar_toolkit/cli/reference.py run   90% 20 2 0   75% 12 1   84%
lunar_toolkit/cli/reference.py _list   78% 9 2 0   75% 4 1   77%
lunar_toolkit/cli/reference.py _crop   80% 10 2 0   67% 6 2   75%
lunar_toolkit/cli/reference.py _pgda   39% 18 11 0   36% 14 1   38%
lunar_toolkit/cli/reference.py _sdem   86% 22 3 0   79% 14 3   83%
lunar_toolkit/cli/search.py run   58% 19 8 0   50% 4 2   57%
lunar_toolkit/cli/serve.py _list_images   91% 11 1 0   88% 8 1   89%
lunar_toolkit/cli/serve.py _RelayRedirect.redirect_request   0% 3 3 0   0% 2 0   0%
lunar_toolkit/cli/serve.py _local_host_header   60% 5 2 0   100% 0 0   60%
lunar_toolkit/cli/serve.py LunarServer.__init__   91% 11 1 0   50% 2 1   85%
lunar_toolkit/cli/serve.py LunarHandler.do_HEAD   0% 1 1 0   100% 0 0   0%
lunar_toolkit/cli/serve.py LunarHandler.do_POST   65% 26 9 0   75% 8 2   68%
lunar_toolkit/cli/serve.py LunarHandler.do_DELETE   83% 12 2 0   83% 6 1   83%
lunar_toolkit/cli/serve.py LunarHandler._route   74% 50 13 0   75% 36 7   74%
lunar_toolkit/cli/serve.py LunarHandler._jobs_get   87% 15 2 0   80% 10 2   84%
lunar_toolkit/cli/serve.py LunarHandler._events   79% 29 6 0   80% 10 2   79%
lunar_toolkit/cli/serve.py LunarHandler._sdem_members   0% 15 15 0   0% 2 0   0%
lunar_toolkit/cli/serve.py LunarHandler._serve   88% 17 2 0   75% 8 2   84%
lunar_toolkit/cli/serve.py LunarHandler._json   100% 8 0 0   50% 2 1   90%
lunar_toolkit/cli/serve.py LunarHandler._relay   81% 21 4 0   75% 8 2   79%
lunar_toolkit/cli/serve.py LunarHandler._relay_once   77% 31 7 0   56% 18 4   69%
lunar_toolkit/cli/serve.py LunarHandler._send_bytes   69% 13 4 0   75% 4 1   71%
lunar_toolkit/cli/serve.py _regions   0% 2 2 0   100% 0 0   0%
lunar_toolkit/cli/serve.py make_server   93% 15 1 0   83% 6 1   90%
lunar_toolkit/cli/serve.py print_banner   58% 12 5 0   38% 8 3   50%
lunar_toolkit/cli/serve.py run   0% 16 16 0   0% 2 0   0%
lunar_toolkit/cli/sfs.py _reduce   44% 9 5 0   50% 4 2   46%
lunar_toolkit/cli/sfs.py run   78% 55 12 0   81% 16 1   79%
lunar_toolkit/cli/sfs_report.py _region_inputs   77% 13 3 0   67% 6 2   74%
lunar_toolkit/cli/sfs_report.py run   80% 15 3 0   75% 4 1   79%
lunar_toolkit/cli/shadowcam.py run   49% 53 27 0   39% 18 5   46%
lunar_toolkit/cli/shadowcam.py run.process_all   75% 4 1 0   75% 4 1   75%
lunar_toolkit/cli/stereo.py run   0% 16 16 0   0% 2 0   0%
lunar_toolkit/cli/workspace.py run   89% 35 4 0   86% 14 2   88%
lunar_toolkit/config.py _coerce   97% 29 1 0   96% 26 1   96%
lunar_toolkit/config.py pgda_file   91% 11 1 0   75% 4 1   87%
lunar_toolkit/config.py resolve   93% 28 2 0   100% 16 0   95%
lunar_toolkit/constants.py pds_url_from_file_spec   83% 6 1 0   50% 2 1   75%
lunar_toolkit/constants.py (no function)   96% 52 2 0   100% 0 0   96%
lunar_toolkit/csm.py parse_camera   85% 13 2 0   75% 8 2   81%
lunar_toolkit/csm.py transform_camera   100% 31 0 0   75% 12 3   93%
lunar_toolkit/csm.py reduce_camera   100% 8 0 0   75% 4 1   92%
lunar_toolkit/csm.py isis_reduce_with_csm   79% 14 3 0   75% 8 2   77%
lunar_toolkit/downloader.py PdsDownloader.ensure_cached   75% 4 1 0   50% 2 1   67%
lunar_toolkit/downloader.py PdsDownloader.download   0% 6 6 0   100% 0 0   0%
lunar_toolkit/downloader.py PdsDownloader.download_urls   83% 6 1 0   75% 4 1   80%
lunar_toolkit/downloader.py _Host.cool   100% 5 0 0   50% 2 1   86%
lunar_toolkit/downloader.py _Host.wait   100% 11 0 0   83% 6 1   94%
lunar_toolkit/downloader.py _Host.pace   83% 6 1 0   50% 2 1   75%
lunar_toolkit/downloader.py _save_cooldown   78% 9 2 0   100% 0 0   78%
lunar_toolkit/downloader.py _retry_after   82% 11 2 0   100% 2 0   85%
lunar_toolkit/downloader.py _download_once   98% 46 1 0   95% 20 1   97%
lunar_toolkit/downloader.py _download_one   67% 6 2 0   100% 2 0   75%
lunar_toolkit/geometry.py query_region   96% 27 1 0   90% 10 1   95%
lunar_toolkit/geometry.py _is_file   67% 6 2 0   100% 2 0   75%
lunar_toolkit/geometry.py load_aoi   93% 41 3 0   92% 26 2   93%
lunar_toolkit/geometry.py _geojson_geometries   88% 8 1 0   83% 6 1   86%
lunar_toolkit/geometry.py _covering_arc   95% 20 1 0   92% 12 1   94%
lunar_toolkit/geometry.py aoi_region   96% 25 1 0   90% 10 1   94%
lunar_toolkit/geometry.py _polar_hemi   83% 6 1 0   75% 4 1   80%
lunar_toolkit/geometry.py _ll_ring   50% 6 3 0   50% 2 1   50%
lunar_toolkit/geometry.py _make_polygon   62% 8 3 0   50% 6 3   57%
lunar_toolkit/geometry.py footprint_geometry   90% 10 1 0   83% 6 1   88%
lunar_toolkit/geometry.py footprint_rings   86% 22 3 0   80% 10 2   84%
lunar_toolkit/geometry.py aoi_mask   92% 13 1 0   83% 6 1   89%
lunar_toolkit/geometry.py filter_aoi   67% 3 1 0   50% 2 1   60%
lunar_toolkit/isis.py system_shape_available   60% 5 2 0   50% 2 1   57%
lunar_toolkit/isis.py map_project   75% 12 3 0   50% 4 2   69%
lunar_toolkit/isis.py prepare_lronac   90% 10 1 0   83% 6 1   88%
lunar_toolkit/kaguya/mi.py mi_products   83% 12 2 0   83% 6 1   83%
lunar_toolkit/kaguya/mi.py lookup_mi_products   0% 2 2 0   100% 0 0   0%
lunar_toolkit/kaguya/mi.py MiProcessor.process   0% 9 9 0   0% 6 0   0%
lunar_toolkit/kaguya/mi.py MiProcessor.process_batch   0% 11 11 0   0% 2 0   0%
lunar_toolkit/kaguya/mi.py MiProcessor.import_label   84% 32 5 0   70% 20 4   79%
lunar_toolkit/kaguya/mi.py import_mi   0% 2 2 0   100% 0 0   0%
lunar_toolkit/kaguya/tc.py select_tc_files   89% 19 2 0   90% 10 1   90%
lunar_toolkit/kaguya/tc.py tc_products   83% 12 2 0   83% 6 1   83%
lunar_toolkit/kaguya/tc.py lookup_products   0% 2 2 0   100% 0 0   0%
lunar_toolkit/kaguya/tc.py decompress   100% 10 0 0   50% 2 1   92%
lunar_toolkit/kaguya/tc.py download_product   88% 16 2 0   60% 10 2   77%
lunar_toolkit/kaguya/tc.py TcProcessor.process   0% 9 9 0   0% 6 0   0%
lunar_toolkit/kaguya/tc.py TcProcessor.process_batch   0% 10 10 0   0% 2 0   0%
lunar_toolkit/kaguya/tc.py TcProcessor.import_label   93% 27 2 0   75% 16 4   86%
lunar_toolkit/kaguya/tc.py TcProcessor._mapproject   75% 4 1 0   50% 2 1   67%
lunar_toolkit/kaguya/tc.py TcProcessor._remove_image   0% 6 6 0   0% 2 0   0%
lunar_toolkit/kaguya/tc.py import_tc   0% 2 2 0   100% 0 0   0%
lunar_toolkit/kaguya/tc.py _source_name   0% 1 1 0   100% 0 0   0%
lunar_toolkit/lroc/cumindex.py CumIndex.__init__   90% 10 1 0   50% 2 1   83%
lunar_toolkit/lroc/cumindex.py CumIndex.dataset   0% 1 1 0   100% 0 0   0%
lunar_toolkit/lroc/cumindex.py CumIndex.release   33% 6 4 0   25% 4 1   30%
lunar_toolkit/lroc/cumindex.py CumIndex.build_info   57% 7 3 0   50% 2 1   56%
lunar_toolkit/lroc/cumindex.py CumIndex.schema   0% 5 5 0   0% 2 0   0%
lunar_toolkit/lroc/cumindex.py CumIndex.meta   0% 3 3 0   0% 2 0   0%
lunar_toolkit/lroc/cumindex.py CumIndex.discover_volumes   0% 8 8 0   0% 2 0   0%
lunar_toolkit/lroc/cumindex.py CumIndex.latest_release   0% 6 6 0   100% 0 0   0%
lunar_toolkit/lroc/cumindex.py CumIndex.build_db   79% 24 5 0   50% 8 4   72%
lunar_toolkit/lroc/cumindex.py CumIndex.update_db   89% 38 4 0   67% 12 4   84%
lunar_toolkit/lroc/cumindex.py CumIndex._max_volume_in_parquet   0% 3 3 0   100% 0 0   0%
lunar_toolkit/lroc/cumindex.py CumIndex.search   96% 26 1 0   94% 18 1   95%
lunar_toolkit/lroc/cumindex.py CumIndex.load   75% 20 5 0   33% 6 2   65%
lunar_toolkit/lroc/cumindex.py CumIndex._enrich   100% 21 0 0   75% 12 3   91%
lunar_toolkit/lroc/cumindex.py build_parquet   82% 34 6 0   50% 10 3   75%
lunar_toolkit/lroc/cumindex.py column_sql   91% 22 2 0   100% 10 0   94%
lunar_toolkit/lroc/cumindex.py _corner_pairs   80% 5 1 0   50% 2 1   71%
lunar_toolkit/lroc/cumindex.py footprint_sql   89% 28 3 0   62% 8 3   83%
lunar_toolkit/lroc/cumindex.py footprint_wkt_sql   88% 8 1 0   75% 4 1   83%
lunar_toolkit/lroc/cumindex.py _volume_key   75% 4 1 0   50% 2 1   67%
lunar_toolkit/lroc/cumindex.py parse_s3_listing   89% 9 1 0   50% 4 2   77%
lunar_toolkit/lroc/cumindex.py list_store_volumes   0% 18 18 0   0% 6 0   0%
lunar_toolkit/lroc/cumindex.py probe_volumes   0% 21 21 0   0% 14 0   0%
lunar_toolkit/lroc/cumindex.py _url_exists   0% 6 6 0   100% 0 0   0%
lunar_toolkit/lroc/cumindex.py _fetch_head   0% 8 8 0   100% 0 0   0%
lunar_toolkit/lroc/cumindex.py clean_stale_build_files   77% 13 3 0   83% 6 1   79%
lunar_toolkit/lroc/cumindex.py parse_lbl_columns   87% 15 2 0   75% 8 2   83%
lunar_toolkit/lroc/cumindex.py _parse_pds_lbl_columns   100% 9 0 0   75% 4 1   92%
lunar_toolkit/lroc/cumindex.py _parse_lbl_meta   100% 10 0 0   88% 8 1   94%
lunar_toolkit/lroc/cumindex.py _angle_conditions   80% 5 1 0   75% 4 1   78%
lunar_toolkit/lroc/nac.py _raw   0% 1 1 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py IndexColumn.__get__   75% 4 1 0   50% 2 1   67%
lunar_toolkit/lroc/nac.py IndexColumn.__repr__   0% 1 1 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacImage.edr_id   0% 1 1 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacImage.is_left   0% 1 1 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacImage.is_right   0% 1 1 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacImage.is_nac   0% 1 1 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacImage.pair_id   67% 3 1 0   50% 2 1   60%
lunar_toolkit/lroc/nac.py NacImage.has_pair   0% 5 5 0   0% 2 0   0%
lunar_toolkit/lroc/nac.py NacImage.pair   0% 5 5 0   0% 2 0   0%
lunar_toolkit/lroc/nac.py NacImage._row   29% 7 5 0   25% 4 1   27%
lunar_toolkit/lroc/nac.py NacImage._get   56% 9 4 0   50% 4 2   54%
lunar_toolkit/lroc/nac.py NacImage.metadata_items   0% 6 6 0   0% 4 0   0%
lunar_toolkit/lroc/nac.py NacImage.edr_url   0% 10 10 0   0% 4 0   0%
lunar_toolkit/lroc/nac.py NacImage.cdr_url   0% 10 10 0   0% 4 0   0%
lunar_toolkit/lroc/nac.py NacImage.download_edr   0% 1 1 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacImage.download_cdr   0% 1 1 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacImage._download   0% 6 6 0   0% 4 0   0%
lunar_toolkit/lroc/nac.py NacImage.process   0% 4 4 0   0% 2 0   0%
lunar_toolkit/lroc/nac.py NacImage.to_png   0% 1 1 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacImage.show   0% 7 7 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacImage._get_cumindex   0% 4 4 0   0% 2 0   0%
lunar_toolkit/lroc/nac.py NacImage.__repr__   0% 1 1 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacImage.__eq__   0% 1 1 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacImage.__hash__   0% 1 1 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacImageCollection.from_sources   0% 26 26 0   0% 12 0   0%
lunar_toolkit/lroc/nac.py NacImageCollection.__iter__   0% 1 1 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacImageCollection.__repr__   0% 1 1 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacImageCollection.to_dataframe   0% 2 2 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacImageCollection.download_edrs   0% 1 1 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacImageCollection.download_cdrs   0% 1 1 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacImageCollection._bulk_download   0% 1 1 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacImageCollection.process   0% 6 6 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacImageCollection.to_pngs   0% 2 2 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py NacProcessor.process   74% 23 6 0   43% 14 4   62%
lunar_toolkit/lroc/nac.py NacProcessor.process_batch   0% 10 10 0   0% 2 0   0%
lunar_toolkit/lroc/nac.py to_png   0% 3 3 0   100% 0 0   0%
lunar_toolkit/lroc/nac.py _parallel   0% 7 7 0   0% 2 0   0%
lunar_toolkit/lroc/nac.py _parallel.call   0% 5 5 0   100% 0 0   0%
lunar_toolkit/observation.py empty_observations   0% 2 2 0   100% 0 0   0%
lunar_toolkit/observation.py normalize_observations   88% 8 1 0   75% 4 1   83%
lunar_toolkit/observation.py observations_from_cumindex   89% 9 1 0   75% 4 1   85%
lunar_toolkit/observation.py observations_from_cumindex.g   60% 5 2 0   100% 0 0   60%
lunar_toolkit/ode.py resolve_instrument   75% 12 3 0   50% 6 1   67%
lunar_toolkit/ode.py OdeClient.build_params   89% 18 2 0   79% 14 3   84%
lunar_toolkit/ode.py OdeClient.request   0% 16 16 0   0% 4 0   0%
lunar_toolkit/ode.py OdeClient.search   96% 26 1 0   79% 14 3   90%
lunar_toolkit/ode.py OdeClient.lookup   0% 8 8 0   0% 4 0   0%
lunar_toolkit/ode.py OdeClient.count   0% 3 3 0   100% 0 0   0%
lunar_toolkit/ode.py OdeClient.download   67% 6 2 0   50% 2 1   62%
lunar_toolkit/ode.py extract_products   86% 7 1 0   75% 4 1   82%
lunar_toolkit/ode.py parse_product   94% 32 2 0   75% 20 5   87%
lunar_toolkit/ode.py select_file_urls   95% 19 1 0   93% 14 1   94%
lunar_toolkit/provenance.py isis_version   75% 8 2 0   100% 2 0   80%
lunar_toolkit/provenance.py _output_paths   75% 8 2 0   67% 6 2   71%
lunar_toolkit/provenance.py compare   90% 30 3 0   86% 22 3   88%
lunar_toolkit/reference.py PsBox.intersects   0% 1 1 0   100% 0 0   0%
lunar_toolkit/reference.py Region.roi   67% 3 1 0   50% 2 1   60%
lunar_toolkit/reference.py get_region   95% 20 1 0   94% 18 1   95%
lunar_toolkit/reference.py _site_name   83% 6 1 0   75% 4 1   80%
lunar_toolkit/reference.py _get   38% 13 8 0   17% 6 1   32%
lunar_toolkit/reference.py pgda_index   45% 11 6 0   50% 6 1   47%
lunar_toolkit/reference.py pgda_urls   90% 20 2 0   83% 12 2   88%
lunar_toolkit/reference.py fetch   67% 18 6 0   50% 10 3   61%
lunar_toolkit/reference.py write_asp_csv   89% 9 1 0   50% 2 1   82%
lunar_toolkit/reference.py zenodo_files   57% 7 3 0   50% 2 1   56%
lunar_toolkit/reference.py HttpRangeFile.__init__   88% 8 1 0   50% 2 1   80%
lunar_toolkit/reference.py HttpRangeFile.readinto   88% 8 1 0   50% 2 1   80%
lunar_toolkit/reference.py parse_tiff_extent   90% 31 3 0   86% 14 2   89%
lunar_toolkit/reference.py _member_head   80% 15 3 0   50% 6 3   71%
lunar_toolkit/reference.py published_extents   100% 14 0 0   88% 8 1   95%
lunar_toolkit/reference.py published_cameras   94% 16 1 0   88% 8 1   92%
lunar_toolkit/reference.py published_camera_native   100% 7 0 0   50% 2 1   89%
lunar_toolkit/selection.py _quality   92% 13 1 0   88% 8 1   90%
lunar_toolkit/selection.py select_illumination_diverse   90% 31 3 0   81% 16 3   87%
lunar_toolkit/selection.py _grid   83% 12 2 0   75% 4 1   81%
lunar_toolkit/selection.py select_for_coverage   92% 51 4 0   86% 14 2   91%
lunar_toolkit/selection.py kmedoids   97% 36 1 0   90% 20 2   95%
lunar_toolkit/selection.py select_kmedoids   95% 60 3 0   83% 18 3   92%
lunar_toolkit/selection.py select_kmedoids.add   100% 6 0 0   50% 2 1   88%
lunar_toolkit/selection.py select_kmedoids_footprints   80% 15 3 0   50% 2 1   76%
lunar_toolkit/sfs.py SfsPipeline.run   83% 30 5 0   70% 10 1   80%
lunar_toolkit/sfs.py SfsPipeline.effective_config   75% 4 1 0   50% 2 1   67%
lunar_toolkit/sfs.py SfsPipeline._record_observations   75% 8 2 0   100% 2 0   80%
lunar_toolkit/sfs.py SfsPipeline.sort_by_sun   91% 11 1 0   88% 8 1   89%
lunar_toolkit/sfs.py SfsPipeline.register   93% 14 1 0   90% 10 1   92%
lunar_toolkit/sfs.py SfsPipeline._stereo_mosaic   71% 24 7 0   75% 8 2   72%
lunar_toolkit/sfs.py SfsPipeline.qa_mosaics   100% 13 0 0   88% 8 1   95%
lunar_toolkit/sfs.py SfsPipeline.select_images   100% 31 0 0   92% 12 1   98%
lunar_toolkit/sfs.py SfsPipeline._sfs_eligible   95% 19 1 0   92% 12 1   94%
lunar_toolkit/sfs.py SfsPipeline.sfs_inputs   100% 28 0 0   94% 16 1   98%
lunar_toolkit/sfs.py SfsPipeline.use_published_cameras   50% 24 12 0   42% 12 3   47%
lunar_toolkit/sfs.py SfsPipeline.shape_from_shading   82% 11 2 0   50% 4 2   73%
lunar_toolkit/sfs.py SfsPipeline.ensemble   83% 18 3 0   50% 6 3   75%
lunar_toolkit/sfs.py prefilter_candidates   91% 11 1 0   67% 6 2   82%
lunar_toolkit/sfs.py cap_candidates   100% 20 0 0   67% 6 2   92%
lunar_toolkit/sfs.py _candidate_pairs   0% 5 5 0   0% 2 0   0%
lunar_toolkit/sfs.py _numeric   75% 4 1 0   50% 2 1   67%
lunar_toolkit/sfs.py search_images   0% 10 10 0   0% 2 0   0%
lunar_toolkit/sfs.py aoi_projwin   100% 8 0 0   50% 2 1   90%
lunar_toolkit/sfs_products.py illumination_maps   96% 26 1 0   92% 12 1   95%
lunar_toolkit/sfs_products.py copy_height_error   100% 3 0 0   50% 2 1   80%
lunar_toolkit/sfs_products.py difference   88% 8 1 0   75% 4 1   83%
lunar_toolkit/sfs_products.py orthomosaic   93% 14 1 0   75% 8 2   86%
lunar_toolkit/sfs_products.py illumination_products   92% 13 1 0   83% 6 1   89%
lunar_toolkit/sfs_products.py make_products   77% 22 5 0   60% 10 2   72%
lunar_toolkit/sfs_products.py ensemble_uncertainty   86% 7 1 0   50% 2 1   78%
lunar_toolkit/sfs_report.py ReportInputs.from_work_dir   100% 18 0 0   67% 6 2   92%
lunar_toolkit/sfs_report.py _work_dir_config   67% 9 3 0   100% 2 0   73%
lunar_toolkit/sfs_report.py split_stats   100% 6 0 0   50% 2 1   88%
lunar_toolkit/sfs_report.py normal_summary   83% 6 1 0   50% 2 1   75%
lunar_toolkit/sfs_report.py coverage_fractions   86% 7 1 0   50% 2 1   78%
lunar_toolkit/sfs_report.py read_ba_reports   100% 17 0 0   83% 12 2   93%
lunar_toolkit/sfs_report.py ba_summary   100% 14 0 0   62% 8 3   86%
lunar_toolkit/sfs_report.py _cause   75% 4 1 0   75% 4 1   75%
lunar_toolkit/sfs_report.py _Terrain.slope.make   80% 5 1 0   50% 2 1   71%
lunar_toolkit/sfs_report.py _ba_section   100% 36 0 0   82% 22 4   93%
lunar_toolkit/sfs_report.py open_workspace   70% 10 3 0   100% 2 0   75%
lunar_toolkit/sfs_report.py _coverage_section   100% 20 0 0   90% 10 1   97%
lunar_toolkit/sfs_report.py _prior_section   100% 12 0 0   67% 6 2   89%
lunar_toolkit/sfs_report.py _lola_section   83% 18 3 0   67% 6 2   79%
lunar_toolkit/sfs_report.py _ensemble_section   100% 26 0 0   60% 10 4   89%
lunar_toolkit/sfs_report.py _uncertainty_section   100% 22 0 0   80% 10 2   94%
lunar_toolkit/sfs_report.py _published_section   100% 12 0 0   75% 4 1   94%
lunar_toolkit/sfs_report.py _jsonable   82% 11 2 0   80% 10 2   81%
lunar_toolkit/sfs_report.py figures   100% 53 0 0   89% 28 3   96%
lunar_toolkit/sfs_report.py _ba_figures   100% 30 0 0   67% 6 2   94%
lunar_toolkit/sfs_report.py _dict_table   100% 8 0 0   83% 6 1   93%
lunar_toolkit/sfs_report.py _caption   75% 4 1 0   75% 4 1   75%
lunar_toolkit/sfs_report.py write_html   100% 35 0 0   96% 26 1   98%
lunar_toolkit/shadowcam/sc.py select_sc_files   100% 18 0 0   90% 10 1   96%
lunar_toolkit/shadowcam/sc.py sc_products   83% 12 2 0   83% 6 1   83%
lunar_toolkit/shadowcam/sc.py lookup_products   0% 3 3 0   100% 0 0   0%
lunar_toolkit/shadowcam/sc.py download_product   100% 10 0 0   83% 6 1   94%
lunar_toolkit/shadowcam/sc.py ScProcessor.__init__   93% 15 1 0   50% 2 1   88%
lunar_toolkit/shadowcam/sc.py ScProcessor.process   0% 9 9 0   0% 6 0   0%
lunar_toolkit/shadowcam/sc.py ScProcessor.process_batch   0% 10 10 0   0% 2 0   0%
lunar_toolkit/shadowcam/sc.py ScProcessor.process_cube   95% 21 1 0   75% 16 4   86%
lunar_toolkit/shadowcam/sc.py ScProcessor._cam_test   80% 5 1 0   50% 2 1   71%
lunar_toolkit/shadowcam/sc.py ScProcessor._mapproject   88% 8 1 0   75% 4 1   83%
lunar_toolkit/shadowcam/sc.py import_sc   0% 2 2 0   100% 0 0   0%
lunar_toolkit/shadowcam/sc.py _source_name   0% 1 1 0   100% 0 0   0%
lunar_toolkit/stereo.py convergence_angles   100% 11 0 0   50% 4 2   87%
lunar_toolkit/stereo.py observation_footprints   75% 8 2 0   75% 4 1   75%
lunar_toolkit/stereo.py _column   75% 4 1 0   50% 2 1   67%
lunar_toolkit/stereo.py find_stereo_pairs   99% 89 1 0   92% 24 2   97%
lunar_toolkit/stereo_dem.py stereo_dem   100% 42 0 0   81% 26 5   93%
lunar_toolkit/tools.py tool_env   100% 13 0 0   88% 8 1   95%
lunar_toolkit/workspace.py spatial_available   100% 7 0 0   50% 2 1   89%
lunar_toolkit/workspace.py _load_spatial   33% 12 8 0   100% 0 0   33%
lunar_toolkit/workspace.py Workspace.add_observations   91% 64 6 0   75% 20 5   87%
lunar_toolkit/workspace.py Workspace.add_index_rows   62% 8 3 0   50% 2 1   60%
lunar_toolkit/workspace.py Workspace.pairs   100% 81 0 0   96% 26 1   99%
lunar_toolkit/workspace.py Workspace.load_bundle_adjust   90% 30 3 0   100% 10 0   92%
lunar_toolkit/workspace.py Workspace._insert_ba   100% 16 0 0   90% 10 1   96%
lunar_toolkit/workspace.py Workspace.ba_report   88% 8 1 0   75% 4 1   83%
lunar_toolkit/workspace.py _great_circle_rings   93% 28 2 0   90% 10 1   92%
lunar_toolkit/workspace.py _read_raw_pixels   91% 11 1 0   50% 2 1   85%
lunar_toolkit/workspace.py find_stereo_pairs_duckdb   88% 17 2 0   67% 6 2   83%
Total     86% 8988 1263 43   75% 2636 376   83%

No items found using the specified filter.

514 functions skipped due to complete coverage.