Ejemplo n.º 1
0
    def test_package_xml_from_dict(self):
        items = {"ApexClass": ["TestClass"]}
        result = utils.package_xml_from_dict(items,
                                             api_version="43.0",
                                             package_name="TestPackage")
        assert ("""<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://soap.sforce.com/2006/04/metadata">
    <fullName>TestPackage</fullName>
    <types>
        <members>TestClass</members>
        <name>ApexClass</name>
    </types>
    <version>43.0</version>
</Package>""" == result)
Ejemplo n.º 2
0
    def test_package_xml_from_dict(self):
        items = {
            'ApexClass': ['TestClass'],
        }
        result = utils.package_xml_from_dict(
            items, api_version='43.0', package_name='TestPackage')
        self.assertEqual("""<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://soap.sforce.com/2006/04/metadata">
    <fullName>TestPackage</fullName>
    <types>
        <members>TestClass</members>
        <name>ApexClass</name>
    </types>
    <version>43.0</version>
</Package>""", result)
Ejemplo n.º 3
0
    def test_package_xml_from_dict(self):
        items = {"ApexClass": ["TestClass"]}
        result = utils.package_xml_from_dict(
            items, api_version="43.0", package_name="TestPackage"
        )
        self.assertEqual(
            """<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://soap.sforce.com/2006/04/metadata">
    <fullName>TestPackage</fullName>
    <types>
        <members>TestClass</members>
        <name>ApexClass</name>
    </types>
    <version>43.0</version>
</Package>""",
            result,
        )
Ejemplo n.º 4
0
    def _get_api(self):
        metadata = {}
        if 'report_folders' in self.options:
            for folder in self.options['report_folders']:
                api_reports = ApiListMetadata(
                    self,
                    'Report',
                    metadata=metadata,
                    folder=folder,
                    as_of_version=self.options['api_version'],
                )
                metadata = api_reports()
        if 'dashboard_folders' in self.options:
            for folder in self.options['dashboard_folders']:
                api_dashboards = ApiListMetadata(
                    self,
                    'Dashboard',
                    metadata=metadata,
                    folder=folder,
                    as_of_version=self.options['api_version'],
                )
                metadata = api_dashboards()

        items = {}
        if 'Report' in metadata:
            items['Report'] = []
            items['Report'].extend(self.options['report_folders'])
            for report in metadata['Report']:
                items['Report'].append(report['fullName'])
        if 'Dashboard' in metadata:
            items['Dashboard'] = []
            items['Dashboard'].extend(self.options['dashboard_folders'])
            for dashboard in metadata['Dashboard']:
                items['Dashboard'].append(dashboard['fullName'])

        api_version = self.project_config.project__package__api_version
        package_xml = package_xml_from_dict(items, api_version)
        print package_xml
        return self.api_class(
            self,
            package_xml,
            api_version,
        )
Ejemplo n.º 5
0
    def _get_api(self):
        metadata = {}
        if "report_folders" in self.options:
            for folder in self.options["report_folders"]:
                api_reports = ApiListMetadata(
                    self,
                    "Report",
                    metadata=metadata,
                    folder=folder,
                    as_of_version=self.options["api_version"],
                )
                metadata = api_reports()
        if "dashboard_folders" in self.options:
            for folder in self.options["dashboard_folders"]:
                api_dashboards = ApiListMetadata(
                    self,
                    "Dashboard",
                    metadata=metadata,
                    folder=folder,
                    as_of_version=self.options["api_version"],
                )
                metadata = api_dashboards()

        items = {}
        if "Report" in metadata:
            items["Report"] = []
            items["Report"].extend(self.options["report_folders"])
            for report in metadata["Report"]:
                items["Report"].append(report["fullName"])
        if "Dashboard" in metadata:
            items["Dashboard"] = []
            items["Dashboard"].extend(self.options["dashboard_folders"])
            for dashboard in metadata["Dashboard"]:
                items["Dashboard"].append(dashboard["fullName"])

        api_version = self.project_config.project__package__api_version
        package_xml = package_xml_from_dict(items, api_version)
        print(package_xml)
        return self.api_class(self, package_xml, api_version)
    def _get_api(self):
        metadata = {}
        if "report_folders" in self.options:
            for folder in self.options["report_folders"]:
                api_reports = self.list_metadata_api_class(
                    self,
                    "Report",
                    metadata=metadata,
                    folder=folder,
                    as_of_version=self.options["api_version"],
                )
                metadata = api_reports()
        if "dashboard_folders" in self.options:
            for folder in self.options["dashboard_folders"]:
                api_dashboards = self.list_metadata_api_class(
                    self,
                    "Dashboard",
                    metadata=metadata,
                    folder=folder,
                    as_of_version=self.options["api_version"],
                )
                metadata = api_dashboards()

        items = {}
        if "Report" in metadata:
            items["Report"] = []
            items["Report"].extend(self.options["report_folders"])
            for report in metadata["Report"]:
                items["Report"].append(report["fullName"])
        if "Dashboard" in metadata:
            items["Dashboard"] = []
            items["Dashboard"].extend(self.options["dashboard_folders"])
            for dashboard in metadata["Dashboard"]:
                items["Dashboard"].append(dashboard["fullName"])

        api_version = self.options["api_version"]
        package_xml = package_xml_from_dict(items, api_version)
        return self.api_class(self, package_xml, api_version)
 def _render_xml_from_items_dict(self, items):
     return package_xml_from_dict(
         items,
         api_version=self.project_config.project__package__api_version)