Edge Rewrite
// HTMLRewriter · presentation

This page was redesigned at the edge.

Cloudflare fetched the original article and streamed it through HTMLRewriter to apply an entirely new visual system without rebuilding the source page.

Jump to content

Module:CineMol/fitting/testcases

From Wikipedia, the free encyclopedia
-- Unit tests for [[Module:CineMol/fitting]]. Click talk page to run tests.

-- This is a port of CineMol to lua
-- CineMol https://github.com/moltools/CineMol was written by David Meijer, Marnix H. Medema & Justin J. J. van der Hooft and is MIT licensed
-- Please consider any edits I make to this page also dual licensed MIT & CC-BY-SA 4.0

require('strict')
local p = require('Module:UnitTests')
local calculate_convex_hull = require('Module:CineMol/fitting').calculate_convex_hull
local Point2D = require('Module:CineMol/geometry').Point2D


function p:test_calculate_convex_hull_basic()
        local points = {Point2D(0, 0), Point2D(1, 1), Point2D(2, 0), Point2D(1, -1)}
        local result = calculate_convex_hull(points)
        self:equals_deep("basic", result, {1, 4, 3, 2}) 
end

function p:test_calculate_convex_hull_including_centroid()
        local points = {Point2D(0, 0), Point2D(1, 1), Point2D(2, 0), Point2D(1, -1), Point2D(1, 0)}
        local result = calculate_convex_hull(points)
        self:equals_deep("basic", result, {1, 4, 3, 2}) 
end

return p