Exemplo n.º 1
0
def test_datetime_no_timezone():
    prop = DateTimeProperty()
    prop.name = 'foo'
    prop.owner = FooBar
    try:
        prop.deflate(datetime.now())
    except DeflateError as e:
        assert str(e).index('have a timezone')
    else:
        assert False
Exemplo n.º 2
0
def test_datetime_exceptions():
    prop = DateTimeProperty()
    prop.name = 'created'
    prop.owner = FooBar
    faulty = 'dgdsg'

    try:
        prop.inflate(faulty)
    except InflateError as e:
        assert True
        assert str(e).index('inflate property')
    else:
        assert False

    try:
        prop.deflate(faulty)
    except DeflateError as e:
        assert True
        assert str(e).index('deflate property')
    else:
        assert False

    # Test naive datetime
    naive = datetime.now()
    try:
        prop.deflate(naive, 4)
    except DeflateError as e:
        assert True
        assert str(e).index('deflate property')
        assert str(e).index('node 4')
    else:
        assert False
Exemplo n.º 3
0
def test_datetimes_timezones():
    prop = DateTimeProperty()
    prop.name = 'foo'
    prop.owner = FooBar
    t = datetime.utcnow()
    gr = timezone('Europe/Athens')
    gb = timezone('Europe/London')
    dt1 = gr.localize(t)
    dt2 = gb.localize(t)
    time1 = prop.inflate(prop.deflate(dt1))
    time2 = prop.inflate(prop.deflate(dt2))
    assert time1.utctimetuple() == dt1.utctimetuple()
    assert time1.utctimetuple() < time2.utctimetuple()
    assert time1.tzname() == 'UTC'
class BillingAction(StructuredRel):
    """
    A relationship definition who related cards and Purchases,
    once the purchase may be done in more than a card, this class
    defines how much was payid in which card.
    """
    value = FloatProperty(required=True)
    date_time = DateTimeProperty(default_now=True)
class Payment(BaseModel):
    """
    Payment object represents a payment for a card
    contained in a wallet
    """
    value = FloatProperty()
    date_time = DateTimeProperty(default_now=True)
    card = RelationshipTo('.card.Card', 'FOR', cardinality=One)
    wallet = RelationshipFrom('.wallet.Wallet', 'FOR', cardinality=One)

    def to_dict(self):
        return dict(value=self.value,
                    cid=self.card.single().uid,
                    date_time=self.date_time,
                    wid=self.wallet.single().uid)
Exemplo n.º 6
0
def test_datetime_exceptions():
    prop = DateTimeProperty()
    prop.name = 'created'
    prop.owner = FooBar
    faulty = 'dgdsg'

    try:
        prop.inflate(faulty)
    except InflateError as e:
        assert 'inflate property' in str(e)
    else:
        assert False, "InflateError not raised."

    try:
        prop.deflate(faulty)
    except DeflateError as e:
        assert 'deflate property' in str(e)
    else:
        assert False, "DeflateError not raised."
Exemplo n.º 7
0
def test_datetime_exceptions():
    prop = DateTimeProperty()
    prop.name = 'created'
    prop.owner = FooBar
    faulty = 'dgdsg'

    try:
        prop.inflate(faulty)
    except InflateError as e:
        assert True
        assert str(e).index('inflate property')
    else:
        assert False

    try:
        prop.deflate(faulty)
    except DeflateError as e:
        assert True
        assert str(e).index('deflate property')
    else:
        assert False
Exemplo n.º 8
0
def test_datetimes_timezones():
    prop = DateTimeProperty()
    prop.name = 'foo'
    prop.owner = FooBar
    t = datetime.utcnow()
    gr = timezone('Europe/Athens')
    gb = timezone('Europe/London')
    dt1 = gr.localize(t)
    dt2 = gb.localize(t)
    time1 = prop.inflate(prop.deflate(dt1))
    time2 = prop.inflate(prop.deflate(dt2))
    assert time1.utctimetuple() == dt1.utctimetuple()
    assert time1.utctimetuple() < time2.utctimetuple()
    assert time1.tzname() == 'UTC'
Exemplo n.º 9
0
def test_datetime_exceptions():
    prop = DateTimeProperty()
    prop.name = 'created'
    prop.owner = FooBar
    faulty = 'dgdsg'

    try:
        prop.inflate(faulty)
    except InflateError as e:
        assert 'inflate property' in str(e)
    else:
        assert False, "InflateError not raised."

    try:
        prop.deflate(faulty)
    except DeflateError as e:
        assert 'deflate property' in str(e)
    else:
        assert False, "DeflateError not raised."
Exemplo n.º 10
0
def test_datetime_exceptions():
    prop = DateTimeProperty()
    prop.name = "created"
    prop.owner = FooBar
    faulty = "dgdsg"

    try:
        prop.inflate(faulty)
    except InflateError as e:
        assert True
        assert str(e).index("inflate property")
    else:
        assert False

    try:
        prop.deflate(faulty)
    except DeflateError as e:
        assert True
        assert str(e).index("deflate property")
    else:
        assert False