def test_write_read_colq(self): store = FilePersist("tmp") store.write('test', value='1') store.write('test', 'colf', value='2') store.write('test', 'colf', 'colq', value='3') nt.assert_equal('1', store.read('test')) nt.assert_equal('2', store.read('test', 'colf')) nt.assert_equal('3', store.read('test', 'colf', 'colq'))
def setUp(self): self.setup_zookeeper() zoo_host = ":".join(str(x) for x in self.client.hosts[0]) ezConfig = EzConfiguration().getProperties() ezConfig[ EzBakePropertyConstants.ZOOKEEPER_CONNECTION_STRING] = zoo_host ezConfig[caservice.EzCAHandler.CLIENT_CERTS] = "client" ezConfig[caservice.EzCAHandler.CLIENT_CERT_O] = "tmpcerts" # make direcotry for client certs try: os.mkdir('tmpcerts') os.mkdir('tmpcerts/server') os.mkdir('tmpcerts/client') except OSError as e: if e.errno != errno.EEXIST: raise e #caservice.setup_logging(True, ezConfig) # Start the server self.serverProcess = Process(target=caservice.ca_server, args=(ezConfig, ), kwargs={ 'port': 5049, 'host': 'localhost', 'verify_pattern': r"client", "ssldir": "tmpcerts/server" }) self.serverProcess.start() # Starting the server takes a while time.sleep(5) # Write out the client certs ca.EzbakeCA.setup(FilePersist(caservice.EzCAHandler.TABLE_NAME)) cert.Cert.setup(FilePersist(caservice.EzCAHandler.TABLE_NAME)) try: ca_certs = ca.EzbakeCA.get_named("ezbakeca") except KeyError: ca_certs = ca.EzbakeCA(name="ezbakeca") ca_certs.save() client_certs = cert.Cert.get_named("client") with open(os.path.join("tmpcerts/client", "ezbakeca.crt"), 'w') as f: f.write(ca_certs.cert_string()) with open(os.path.join("tmpcerts/client", "application.crt"), 'w') as f: f.write(client_certs.cert_string()) with open(os.path.join("tmpcerts/client", "application.priv"), 'w') as f: f.write(client_certs.pkey_string())
def ezpersist_instance(mode): if mode == "file": store = FilePersist(EzCAHandler.TABLE_NAME) elif mode == "accumulo": raise NotImplementedError("accumulo persistance not supported by EzCA yet") else: store = MemoryPersist() return store
def test_table_delete_doesnt_affect_other(self): store = FilePersist("tmp", ["table1", "table2"]) store.write("test", "colf", "colq", "table1", '12345') store.write("test", "colf", "colq", "table2", '12345') store.delete("test", "table1") nt.assert_equal('12345', store.read("test", "colf", "colq", "table2")) nt.assert_raises(KeyError, store.read, 'test', table='table1')
def __init__(self, ca_name, ezconfig=EzConfiguration().getProperties()): mode = ezconfig.get(EzCAHandler.PERSIST_MODE, "file") if mode == "file": store = FilePersist(EzCAHandler.TABLE_NAME) elif mode == "accumulo": raise NotImplementedError("accumulo persistance not supported by EzCA yet") else: store = MemoryPersist() EzbakeCA.setup(store=store) Cert.setup(store=store) self.store = store try: logger.info("Reading CA certificate {}".format(ca_name)) self.ca = EzbakeCA.get_named(ca_name) except KeyError: self.ca = EzbakeCA(name=ca_name) self.ca.save()
def test_all(self): store = FilePersist("tmp", ["default", "test2table"]) store.write('test', value='1') store.write('test', 'colf', value='2') store.write('test', 'colf', 'colq', value='3') store.write('test2', table="test2table", value='1') store.write('test2', 'colf2', table="test2table", value='2') store.write('test2', 'colf2', 'colq2', table="test2table", value='3') # TODO: some assertions
def test_table_name(self): store = FilePersist("tmp", "table1") store.write("test", "colf", "colq", "table1", '12345') nt.assert_equal('12345', store.read("test", "colf", "colq", "table1"))
def test_write_read_delete(self): store = FilePersist("tmp") store.write('test', value='1') nt.assert_equal('1', store.read('test')) store.delete('test') nt.assert_raises(KeyError, store.read, 'test')
def test_write_read(self): store = FilePersist("tmp") store.write('test', value="1") nt.assert_equal("1", store.read('test'))
def test_all(self): store = FilePersist("tmp", ["default", "test2table"]) store.write('test', value='1') store.write('test', 'colf', value='2') store.write('test', 'colf', 'colq', value='3') store.write('test2', table="test2table", value='1') store.write('test2', 'colf2', table="test2table", value='2') store.write('test2', 'colf2', 'colq2', table="test2table", value='3')
def setUp(self): if not os.path.isdir("test/tmp"): os.mkdir("test/tmp") fs = FilePersist("test/tmp") ezbakeca.EzbakeCA.setup(fs)