Party
In the following you will find some DELETE examples related to the party.
Example Code
Delete a party (only possible if no invoice is linked to this party).
[TestMethod]
public void REST_Party_delete()
{
state = new ErrorState();
Party party = GET.party_by_name("Hunkeler", manager);
state.passed = false;
if (party != null)
{
state.passed = DELETE.party(party, manager);
}
Assert.AreEqual(true, state.passed, state.message);
}
class DELETE
{
public static bool party(Party party, Manager manager)
{
var currentClient = manager.getCurrentClient();
ErrorState state = new ErrorState { passed = false };
if (party != null)
{
string request = "clients/{0}/parties/{1}";
var response = manager.httpClient.DeleteAsync(string.Format(request, currentClient.id, party.id)).Result;
state.passed = response.IsSuccessStatusCode;
}
return state.passed;
}
}
class DELETE:
#region party
@staticmethod
def party(manager, party):
_currentClient = manager.getCurrentClient()
status = False
url = '{0}clients/{1}/parties/{2}'.format(manager.baseURL(), _currentClient['id'], party['id'])
try:
response = requests.delete(url, headers = manager.headers())
if response.status_code == 200:
status = True
except Exception as err:
print("Error: {0}".format(err))
status = False
return status
A party is either a creditor, a debtor or both. It might occur that a creditor/debtor needs to be deleted (only possible if no invoice is linked to this party).
#Code reference - GET.party_by_id
#Code reference - DELETE.party
[TestMethod]
public void REST_Party_creditor_DELETE()
{
ErrorState state = new ErrorState { passed = false };
Party party = GET.party_by_name("Hunkeler", manager);
if (party != null)
{
state.passed = DELETE.party("Hunkeler", manager);
Assert.AreEqual(true, state.passed, state.message);
}
party = GET.party_by_name("Hunkeler", manager);
party = GET.party_by_id(party.id, manager);
state.passed = false;
Creditor creditor = Create.creditor(party.id, manager);
state.passed = POST.creditor(creditor, party, manager);
Assert.AreEqual(true, state.passed, state.message);
party = GET.party_by_name("Hunkeler", manager);
party = GET.party_by_id(party.id, manager);
party = GET.party_by_name("Hunkeler", manager);
if (party != null)
{
state.passed = false;
state.passed = DELETE.party("Hunkeler", manager);
Assert.AreEqual(true, state.passed, state.message);
}
}
class DELETE
{
public static bool creditor(Party party, Manager manager)
{
var currentClient = manager.getCurrentClient();
ErrorState state = new ErrorState { passed = false };
if (party != null)
{
string request = "clients/{0}/parties/{1}/creditor";
var response = manager.httpClient.DeleteAsync(string.Format(request, currentClient.id, party.id)).Result;
if (response.StatusCode != HttpStatusCode.OK)
{
ResponseDetails details = new ResponseDetails(response);
}
state.passed = response.IsSuccessStatusCode;
}
return state.passed;
}
}
class DELETE:
@staticmethod
def creditor(manager, party):
_currentClient = manager.getCurrentClient()
status = False
url = '{0}clients/{1}/parties/{2}/creditor'.format(manager.baseURL(), _currentClient['id'], party['id'])
try:
response = requests.delete(url, headers = manager.headers())
if response.status_code == 200:
status = True
except Exception as err:
print("Error: {0}".format(err))
status = False
return status
A party is either a creditor, a debtor or both. It might occur that a creditor/debtor needs to be deleted (only possible if no invoice is linked to this party).
#Code reference - GET.party_by_id
#Code reference - DELETE.party
[TestMethod]
public void REST_Party_debitor_DELETE()
{
ErrorState state = new ErrorState { passed = false };
Party party = GET.party_by_name("Hunkeler", manager);
if (party != null)
{
state.passed = DELETE.party("Hunkeler", manager);
Assert.AreEqual(true, state.passed, state.message);
}
state.passed = false;
party = Create.party(manager);
state.passed = POST.party(party, manager);
Assert.AreEqual(true, state.passed, state.message);
party = GET.party_by_name("Hunkeler", manager);
state.passed = false;
Debtor debtor = Create.debtor(party.id, manager);
state.passed = POST.debtor(debtor, party, manager);
Assert.AreEqual(true, state.passed, state.message);
party = GET.party_by_name("Hunkeler", manager);
if (party != null)
{
state.passed = DELETE.debtor(party, manager);
Assert.AreEqual(true, state.passed, state.message);
}
party = GET.party_by_name("Hunkeler", manager);
if (party != null)
{
state.passed = DELETE.party("Hunkeler", manager);
}
Assert.AreEqual(true, state.passed, state.message);
}
class DELETE
{
public static bool debtor(Party party, Manager manager)
{
var currentClient = manager.getCurrentClient();
ErrorState state = new ErrorState { passed = false };
if (party != null)
{
string request = "clients/{0}/parties/{1}/debtor";
var response = manager.httpClient.DeleteAsync(string.Format(request, currentClient.id, party.id)).Result;
state.passed = response.IsSuccessStatusCode;
}
return state.passed;
}
}
// Helper method
private bool add_debtor_to_party(Manager manager)
{
state = new ErrorState();
Party party = GET.party_by_name("Hunkeler", manager);
if (party == null)
{
party = Create.party(manager);
state.passed = POST.party(party, manager);
party = GET.party_by_name("Hunkeler", manager);
}
Assert.AreEqual(true, state.passed, state.message);
Debtor debtor = Create.debtor(party.id, manager);
state.passed = POST.debtor(debtor, party, manager);
Assert.AreEqual(true, state.passed, state.message);
return state.passed;
}
class DELETE:
# TODO recheck
@staticmethod
def debtor(manager, party):
_currentClient = manager.getCurrentClient()
status = False
url = '{0}clients/{1}/parties/{2}/debtor'.format(manager.baseURL(), _currentClient['id'], party['id'])
try:
if party != None:
response = requests.delete(url, headers = manager.headers())
if response.status_code == 200:
status = True
except Exception as err:
print("Error: {0}".format(err))
status = False
return status