Example #1
0
def getters():

    connect = Connect("http", "localhost:8000", "camd", "abc123", DEBUG=True)
#    connect = Connect("http", "moztrap.allizom.org", "camd", "07cb6df4-3879-45f1-9764-224775fed1e6", DEBUG=True)


#    products = connect.get_products()
#    print jstr(products)
#
#    products = connect.get_products(name="MozTrap")
#    print jstr(products)
#
#    runs = connect.get_runs(productversion_id=7)
#    print jstr(runs)
#
#    env = connect.get_run_environments(run_id=1)
#    print jstr(env)

#    penv = connect.get_product_environments(productversion_id=7)
#    print penv

#    pcases = connect.get_product_cases(productversion_id=7, environment_id=62)
#
#    rcases = connect.get_run_cases(run_id=1, environment_id=22)
    rcases = connect.get_run_cases(run_id=47, environment_id=32)
    print jstr(rcases)
Example #2
0
def getters():

    connect = Connect("http", "localhost:8000", "camd", "abc123", DEBUG=True)
    #    connect = Connect("http", "moztrap.allizom.org", "camd", "07cb6df4-3879-45f1-9764-224775fed1e6", DEBUG=True)

    #    products = connect.get_products()
    #    print jstr(products)
    #
    #    products = connect.get_products(name="MozTrap")
    #    print jstr(products)
    #
    #    runs = connect.get_runs(productversion_id=7)
    #    print jstr(runs)
    #
    #    env = connect.get_run_environments(run_id=1)
    #    print jstr(env)

    #    penv = connect.get_product_environments(productversion_id=7)
    #    print penv

    #    pcases = connect.get_product_cases(productversion_id=7, environment_id=62)
    #
    #    rcases = connect.get_run_cases(run_id=1, environment_id=22)
    rcases = connect.get_run_cases(run_id=47, environment_id=32)
    print jstr(rcases)
Example #3
0
 def test_connect_limits(self, testmoztrap):
     unlimited = testmoztrap.connect.get_products()
     limited = Connect("https",
                       testmoztrap.url,
                       testmoztrap.username,
                       testmoztrap.apikey,
                       limit=3).get_products()
     assert len(limited) == 3
     assert len(unlimited) > len(limited)
Example #4
0
def submit_results_ui_way():

    connect = Connect("http", "localhost:8000", "camd", "abc123", DEBUG=True)


    runs = connect.get_runs()
    print jstr(runs)

    # here pick the run you want
    run_id = runs[0]["id"]

    envs = connect.get_run_environments(run_id=run_id)
    print jstr(envs)

    # here pick the env you want
    env_id = envs[22]["id"]

    tests = connect.get_run_cases(run_id=run_id, environment_id=env_id)
    print jstr(tests)


    results = TestResults()

    results.addpass(
        case_id=tests[0]["caseversion"]["case"]["id"],
        environment_id=env_id,
    )

    results.addinvalid(
        case_id=tests[1]["caseversion"]["case"]["id"],
        environment_id=env_id,
        comment="why u no make sense??"
    )

    results.addfail(
        case_id=tests[2]["caseversion"]["case"]["id"],
        environment_id=env_id,
        comment="why u no pass?",
        bug="http://www.deathvalleydogs.com",
        stepnumber=1,
    )

    r = connect.submit_results(run_id=run_id, testresults=results)
    print r.text
Example #5
0
def submit_results_auto_way():
    connect = Connect("http", "localhost:8000", "camd", "abc123", DEBUG=True)

    products = connect.get_products(name="Zurago")
    print(jstr(products))

    pv_id = products[0]["productversions"][0]["id"]

    envs = connect.get_product_environments(productversion_id=pv_id)
    print(jstr(envs))

    lin_id = envs[0]["id"]
    win_id = envs[1]["id"]
    span_id = envs[2]["id"]

    spancases = connect.get_product_cases(productversion_id=pv_id,
                                          environment_id=span_id)
    wincases = connect.get_product_cases(productversion_id=pv_id,
                                         environment_id=win_id)
    lincases = connect.get_product_cases(productversion_id=pv_id,
                                         environment_id=lin_id)
    print(jstr(wincases))

    results = TestResults()

    for caseversion in spancases:
        results.addinvalid(case_id=caseversion["case"]["id"],
                           environment_id=span_id,
                           comment="what the hellfire?")

    for caseversion in wincases:
        results.addpass(
            case_id=caseversion["case"]["id"],
            environment_id=win_id,
        )

    for caseversion in lincases:
        results.addfail(
            case_id=caseversion["case"]["id"],
            environment_id=lin_id,
            comment="dang thing...",
            bug="http://www.deathvalleydogs.com",
            stepnumber=1,
        )

    res = connect.submit_run(
        "first run: {0}".format(datetime.datetime.now()),
        "a description",
        productversion_id=pv_id,
        testresults=results,
    )
    print(res.text)
Example #6
0
def pytest_runtest_setup(item):
    TestSetup.username = item.config.option.test_moztrap_username
    TestSetup.apikey = item.config.option.test_moztrap_apikey
    TestSetup.url = item.config.option.test_moztrap_url

    TestSetup.connect = Connect(
        "https",
        TestSetup.url,
        TestSetup.username,
        TestSetup.apikey,
    )
Example #7
0
def submit_results_auto_way():
    connect = Connect("http", "localhost:8000", "camd", "abc123", DEBUG=True)

    products = connect.get_products(name="Zurago")
    print(jstr(products))

    pv_id = products[0]["productversions"][0]["id"]

    envs = connect.get_product_environments(productversion_id=pv_id)
    print(jstr(envs))

    lin_id = envs[0]["id"]
    win_id = envs[1]["id"]
    span_id = envs[2]["id"]

    spancases = connect.get_product_cases(
        productversion_id=pv_id, environment_id=span_id)
    wincases = connect.get_product_cases(
        productversion_id=pv_id, environment_id=win_id)
    lincases = connect.get_product_cases(
        productversion_id=pv_id, environment_id=lin_id)
    print(jstr(wincases))

    results = TestResults()


    for caseversion in spancases:
        results.addinvalid(
            case_id=caseversion["case"]["id"],
            environment_id=span_id,
            comment="what the hellfire?"
            )

    for caseversion in wincases:
        results.addpass(
            case_id=caseversion["case"]["id"],
            environment_id=win_id,
            )

    for caseversion in lincases:
        results.addfail(
            case_id=caseversion["case"]["id"],
            environment_id=lin_id,
            comment="dang thing...",
            bug="http://www.deathvalleydogs.com",
            stepnumber=1,
            )

    res = connect.submit_run(
        "first run: {0}".format(datetime.datetime.now()),
        "a description",
        productversion_id=pv_id,
        testresults=results,
        )
    print(res.text)
Example #8
0
def getters():

    connect = Connect("http", "localhost:8000", "camd", "abc123", DEBUG=True)


    products = connect.get_products()
    print jstr(products)

    products = connect.get_products(name="MozTrap")
    print jstr(products)

    runs = connect.get_runs(productversion_id=7)
    print jstr(runs)

    env = connect.get_run_environments(run_id=1)
    print jstr(env)

    penv = connect.get_product_environments(productversion_id=7)

    pcases = connect.get_product_cases(productversion_id=7, environment_id=62)

    rcases = connect.get_run_cases(run_id=1, environment_id=22)
def main():
    if len(sys.argv) == 5:
        suite_name = sys.argv[1]
        username = sys.argv[2]
        api_key = sys.argv[3]
        file_name = sys.argv[4]

        conn = Connect(
            "https",
            "moztrap.mozilla.org",
            # "http",
            # "localhost:8000",
            username,
            api_key,
            DEBUG=True,
            )

        suite = create_suite(conn, suite_name)
        cases = get_cases(file_name)
        add_cases(conn, suite=suite, cases=cases)

    else:
        print "Usage: create_suite <suitename> <username> <api_key> <filename.csv>"
Example #10
0
def submit_results_ui_way():

    connect = Connect("http", "localhost:8000", "camd", "abc123", DEBUG=True)

    runs = connect.get_runs()
    print jstr(runs)

    # here pick the run you want
    run_id = runs[0]["id"]

    envs = connect.get_run_environments(run_id=run_id)
    print jstr(envs)

    # here pick the env you want
    env_id = envs[22]["id"]

    tests = connect.get_run_cases(run_id=run_id, environment_id=env_id)
    print jstr(tests)

    results = TestResults()

    results.addpass(
        case_id=tests[0]["caseversion"]["case"]["id"],
        environment_id=env_id,
    )

    results.addinvalid(case_id=tests[1]["caseversion"]["case"]["id"],
                       environment_id=env_id,
                       comment="why u no make sense??")

    results.addfail(
        case_id=tests[2]["caseversion"]["case"]["id"],
        environment_id=env_id,
        comment="why u no pass?",
        bug="http://www.deathvalleydogs.com",
        stepnumber=1,
    )

    r = connect.submit_results(run_id=run_id, testresults=results)
    print r.text
Example #11
0
 def setup(self):
     self.connect = Connect("https", "moztrap.allizom.org", "klrmn", "3150247f-0a62-4662-ab26-1bcb01238f5f")
Example #12
0
class TestConnect:
    def setup(self):
        self.connect = Connect("https", "moztrap.allizom.org", "klrmn", "3150247f-0a62-4662-ab26-1bcb01238f5f")

    # get_products
    def test_get_products_no_filter(self):
        prods = self.connect.get_products()
        print "products:\n%s" % prods
        found = False
        for prod in prods:
            if prod['name'] == 'Macaron':
                found = True
        assert found, "product Macaron not found in %s" % prods

    def test_get_products_filter_by_name(self):
        prods = self.connect.get_products(name="Macaron")
        print "products:\n%s" % prods
        assert len(prods) == 1
        assert prods[0]['id'] == '15'

    # get_product_environments
    def test_get_product_environments_by_productversion_id(self):
        envs = self.connect.get_product_environments(productversion_id="33")
        print "environments:\n%s" % envs
        found = False
        for env in envs:
            for element in env['elements']:
                if element['name'] == "OS X 10.5":
                    found = True

        assert found, "OS X 10.5 was not found in %s" % envs

    # get_runs
    def test_get_runs_filter_by_product_id(self):
        runs = self.connect.get_runs(product_id=15)
        print "runs:\n%s" % runs
        run_names = [r['name'] for r in runs]
        assert "Vanilla mousse" in run_names

    def test_get_runs_filter_by_product_name(self):
        runs = self.connect.get_runs(product="Macaron")
        print "runs:\n%s" % runs
        run_names = [r['name'] for r in runs]
        assert "Vanilla mousse" in run_names

    def test_get_runs_filter_by_productversion_id(self):
        runs = self.connect.get_runs(productversion_id=31)
        print "runs:\n%s" % runs
        run_names = [r['name'] for r in runs]
        assert "Vanilla mousse" in run_names

    def test_get_runs_filter_by_product_and_version(self):
        runs = self.connect.get_runs(product="pytest_moztrap", version="0.1a", )
        print "runs:\n%s" % runs
        run_names = [r['name'] for r in runs]
        assert "this_is_a_test" in run_names

    # get_run_environments
    def test_get_run_environments_by_run_id(self):
        runs = self.connect.get_runs(product="Macaron", version="1")
        print "runs:\n%s" % runs
        run_id = runs[0]['id']
        run_envs = self.connect.get_run_environments(run_id)
        print "environments:\n%s" % run_envs
        assert run_envs[0]['elements'][0]['name'] != ""

    # get_run_cases
    def test_get_run_cases(self):
        runs = self.connect.get_runs(product="Macaron", version="1")
        print "runs:\n%s" % runs
        run_id = runs[0]['id']
        run_envs = self.connect.get_run_environments(run_id)
        print "environments:\n%s" % run_envs
        env_id = run_envs[0]['id']

        cases = self.connect.get_run_cases(run_id, env_id)
        print "cases:\n%s" % cases
        assert cases[0]['caseversion']['case']['id'] > "0"

    # test other stuff
    @pytest.mark.xfail(reason="not implemented yet")
    def test_submit_in_two_parts(self):
        """
        Test that you can submit for a user/run/env the first 3 results, then
        submit just the second 3 results and not have it blow away the first.

        Existing results should be downloaded with test cases, if they already
        exist.
        """
        assert False, "test not yet implemented"