def test_create_amp(self): beforeAmps = Amp.list(self.connection) amp = Amp("test-amp", "http://example.com", "/MarkLogic/test-amp.xqy", \ connection=self.connection) amp.create() afterAmps = Amp.list(self.connection) assert len(afterAmps) > len(beforeAmps) newAmp = Amp.lookup(self.connection, amp.local_name(), \ amp.namespace(), amp.document_uri()) assert isinstance(newAmp, Amp) for key in amp._config: assert newAmp._config[key] == amp._config[key] amp.set_role_names(["manage-admin"]) amp.update(connection=self.connection) newAmp.set_document_uri("/MarkLogic/no-can-do") try: newAmp.update(connection=self.connection) except UnexpectedManagementAPIResponse: pass except: raise amp.delete() afterAmps = Amp.list(self.connection) assert len(afterAmps) == len(beforeAmps) newAmp = Amp.lookup(self.connection, amp.local_name(), \ amp.namespace(), amp.document_uri()) assert newAmp is None
def create(self, args, config, connection): if args['json'] is not None: amp = self._read(args['json']) else: amp = Amp() self._handle_args(amp, args) self._handle_properties(amp, args) if amp.exists(connection=connection): print("Error: Amp already exists: {0}".format(amp.local_name())) sys.exit(1) amp.create(connection=connection) print("Created amp {}".format(amp.local_name()))