Mercurial > gemma
view pkg/common/time_test.go @ 3622:30a9fdac70f0
client: configuration: prepared fetching morphology classbreaks and ecdis url from backend
author | Markus Kottlaender <markus@intevation.de> |
---|---|
date | Wed, 05 Jun 2019 16:38:26 +0200 |
parents | ecb4baa2be1a |
children |
line wrap: on
line source
// This is Free Software under GNU Affero General Public License v >= 3.0 // without warranty, see README.md and license for details. // // SPDX-License-Identifier: AGPL-3.0-or-later // License-Filename: LICENSES/AGPL-3.0.txt // // Copyright (C) 2018, 2019 by via donau // – Österreichische Wasserstraßen-Gesellschaft mbH // Software engineering by Intevation GmbH // // Author(s): // * Sascha L. Teichmann <sascha.teichmann@intevation.de> package common import ( "testing" "time" ) func TestInterpolateTimeByValue(t *testing.T) { t1 := time.Now().UTC() t2 := t1.Add(time.Hour).UTC() f := InterpolateTime(t1, 10, t2, 20) v1 := f(10) v2 := f(20) v3 := f(15) t3 := t1.Add(time.Hour / 2) d1 := v1.Sub(t1) d2 := v2.Sub(t2) d3 := v3.Sub(t3) if d1 < 0 { d1 = -d1 } if d1 > 100*time.Microsecond { t.Errorf("difference too big t1: %v\n", d1) } if d2 < 0 { d2 = -d2 } if d2 > 100*time.Microsecond { t.Errorf("difference too big t2: %v\n", d2) } if d3 < 0 { d3 = -d3 } if d3 > 100*time.Microsecond { t.Errorf("difference too big t3: %v\n", d3) } }