+# now create it as admin
+r = requests.post(USERS_API, data=newUser, auth=admin_auth)
+fail_unless(r.status_code==201, "failed to create %s as admin" % TEST_USER_EMAIL)
+
+user = requests.get(USERS_API +"?email=%s" % TEST_USER_EMAIL, auth=admin_auth).json()[0]
+r = requests.delete(USERS_API + str(user["id"]) + "/", auth=opencloud_auth)
+if myself["is_admin"]:
+ fail_unless(r.status_code==200, "failed to delete %s" % TEST_USER_EMAIL)
+else:
+ fail_unless(r.status_code!=200, "deleted %s but we shouldn't have been able to" % TEST_USER_EMAIL)
+
+# slice tests
+
+r = requests.get(SLICES_API, auth=opencloud_auth)
+mySlices = r.json()
+
+for slice in mySlices:
+ fail_unless(should_see_slice(myself, slice), "saw slice %s but we shouldn't have" % slice["name"])
+mySlicesIds = [r["id"] for r in mySlices]
+for slice in allSlices:
+ if should_see_slice(myself, slice):
+ fail_unless(slice["id"] in mySliceIds, "should have seen slice %s but didnt" % slice["name"])
+
+for slice in allSlices:
+ slice = requests.get(SLICES_API + str(slice["id"]) + "/", auth=admin_auth).json()
+ flip_desc(slice)
+ r = requests.put(SLICES_API + str(slice["id"]) +"/", data=slice, auth=opencloud_auth)
+ if should_see_slice(myself, slice):
+ fail_unless(r.status_code==200, "failed to change desc on %s" % slice["name"])
+ else:
+ fail_unless(r.status_code!=200, "was able to change desc on %s but shouldn't have" % slice["name"])