#!/usr/bin/env python

import common
import os
import sys

class CrashModem(common.Modem):
    def ConnectDone(self, old, new, why):
        sys.exit(0)

def setup():
    os.system("/usr/local/lib/flimflam/test/connect-service 'Test Network' "
              "2>/dev/null &")
    return 0

common.setup(setup)
mm = common.ModemManager(common.bus, common.OCMM)
tm0 = CrashModem(mm, '/TestModem/3')
common.cleanup(lambda: sys.exit(1))
common.run()
