func TestCreatePlanScript(t *testing.T) { var ( d *I3STest c *i3s.I3SClient testName string ) if os.Getenv("I3S_TEST_ACCEPTANCE") == "true" { d, c = getTestDriverA("test_plan_script") if c == nil { t.Fatalf("Failed to execute getTestDriver() ") } // find out if the test plan script already exist testName = d.Tc.GetTestData(d.Env, "Name").(string) testPlanScript, err := c.GetPlanScriptByName(testName) assert.NoError(t, err, "CreatePlanScript get the PlanScript error -> %s", err) if testPlanScript.URI.IsNil() { testPlanScript = i3s.PlanScript{ Name: testName, Type: d.Tc.GetTestData(d.Env, "Type").(string), PlanType: d.Tc.GetTestData(d.Env, "PlanType").(string), Description: d.Tc.GetTestData(d.Env, "Description").(string), Content: d.Tc.GetTestData(d.Env, "Content").(string), } err := c.CreatePlanScript(testPlanScript) assert.NoError(t, err, "CreatePlanScript error -> %s", err) log.Infof("Submitting the same plan script to confirm I3S will error") err = c.CreatePlanScript(testPlanScript) assert.Error(t, err, "CreatePlanScript should error because the PlanScript already exists, err-> %s", err) } else { log.Warnf("The planScript already exist, so skipping CreatePlanScript test for %s", testName) } // reload the test profile that we just created testPlanScript, err = c.GetPlanScriptByName(testName) assert.NoError(t, err, "GetPlanScript error -> %s", err) } }