Source code for dataobj.sasconfig_test

# -*- coding: utf-8 -*-
# dataobj/sasconfig_test.py

from __future__ import absolute_import # PEP328
from functools import partial
from nose.tools import assert_raises
from dataobj.sasconfig import SASConfig

[docs]def assertDefaults(sc): # from dataconfig_test assert sc.x0Low() == 0.0 assert sc.x0High() >= 1e200 assert sc.x1Low() == 0.0 assert sc.x1High() >= 1e200 assert sc.fMaskZero() == False assert sc.fMaskNeg() == False
[docs]def testSerialize(): def dummyFunc(*args): pass sc = SASConfig() assertDefaults(sc) sc.x0Low.setValueRange((1, 12)) sc.x0Low.setValue(.5) sc.x0High.setValue(1.234e2) assert sc.x0Low() == 1 assert sc.x0High() == 1.234e2 sc.register("x0limits", dummyFunc) sc.register("x1limits", dummyFunc) sc.register("fMasks", dummyFunc) import pickle data = pickle.dumps(sc) sc2 = pickle.loads(data) assert sc == sc2 for key in sc.__dict__: if "callback" in key: continue v0, v1 = getattr(sc, key), getattr(sc2, key) assert v0 == v1, \ "{key} does not match!".format(key = key) if v0 is None: # None is a singleton: always same id() continue assert id(v0) != id(v1), \ "Same value Ids for {key}!".format(key = key)
# vim: set ts=4 sts=4 sw=4 tw=0: