示例#1
0
	def testTwo(self):
		self.graph = Graph()
		self.obj_itemlist, self.cxn_itemlist, self.models_lists = converter.parse("test_file.xml")
		for m in self.models_lists:
			model = m.attributes['Name'].value + "/"
		objects = converter.obj_parser(model, self.obj_itemlist, self.graph, self.cxn_itemlist)
		name1 = 'our_model: Login Business process/Enter credentials'
		type1 = "http://www.w3.org/1999/02/22-rdf-syntax-ns#type"
		arg1 = "sepc: Function"		
		self.failUnless(str_comp(name1, objects[0][0]))
		self.failUnless(str_comp(type1, objects[0][1]))
		self.failUnless(str_comp(arg1, objects[0][2]))
		
		name2 = "our_model: Login Business process/Enter credentials"
		type2 = "sepc: hasOutput"
		arg2 = "our_model: Login Business process/Admin access"
		self.failUnless(str_comp(name2, objects[1][0]))
		self.failUnless(str_comp(type2, objects[1][1]))
		self.failUnless(str_comp(arg2, objects[1][2]))
		
		name3 = "our_model: Login Business process/Enter credentials"
		type3 = "sepc: hasInput"
		arg3 = "our_model: Login Business process/Enter credentials"
		self.failUnless(str_comp(name3, objects[2][0]))
		self.failUnless(str_comp(type3, objects[2][1]))
		self.failUnless(str_comp(arg3, objects[2][2]))
示例#2
0
def create_or_update_page(page_path, args, confluence_api):
    _, ext = os.path.splitext(page_path)
    if ext not in SUPPORTED_EXTENSIONS:
        log.info('Skipping {} since not a supported format'.format(page_path))
        return

    try:
        metadata, markdown = parse(page_path)
    except Exception as e:
        log.error('Error when processing {}: {}'.format(page_path, e))
        return

    if 'confluence' not in metadata or not metadata['confluence'].get('share'):
        log.info(
            'Page {} not set to be uploaded to Confluence'.format(page_path))
        return

    # TODO: Check author from metadata and confluence

    html, attachments = convert_to_confluence(markdown, metadata=metadata)
    for i, attachment in enumerate(attachments):
        filename = os.path.basename(attachment.lstrip('/'))
        attachments[i] = os.path.join(args.attachment_static_path, filename)
        print(attachments[i])

    page_slug = get_slug(page_path)

    ancestor_id = metadata['confluence'].get('ancestor_id', args.ancestor_id)
    space = metadata['confluence'].get('space', args.space)

    page = confluence_api.exists(slug=page_slug,
                                 ancestor_id=ancestor_id,
                                 space=space)

    if page:
        confluence_api.update(page['id'],
                              content=html,
                              title=metadata['title'],
                              slug=page_slug,
                              space=space,
                              ancestor_id=ancestor_id,
                              page=page,
                              attachments=attachments)
    else:
        confluence_api.create(content=html,
                              title=metadata['title'],
                              slug=page_slug,
                              space=space,
                              ancestor_id=ancestor_id,
                              attachments=attachments)
示例#3
0
	def testOne(self):
	    self.graph = Graph()
	    self.obj_itemlist, self.cxn_itemlist, self.models_lists = converter.parse("test_file.xml")
	    self.failUnless(len(self.obj_itemlist)>0)
	    self.failUnless(len(self.cxn_itemlist)>0)
	    self.failUnless(len(self.models_lists)>0)