public void TestCustomer()
        {
            var connector = new CustomerConnector();

            connector.AccessToken  = at;
            connector.ClientSecret = cs;

            var customer = connector.Get("0022");

            customer.GLN         = "123";
            customer.GLNDelivery = "12345";
            customer.Active      = "false";
            customer             = connector.Update(customer);

            Assert.IsFalse(connector.HasError);
            Assert.IsTrue(customer.Active == "false");

            connector.FilterBy = Filter.Customer.Inactive;
            var customers = connector.Find();

            Assert.IsFalse(connector.HasError);
            Assert.IsTrue(customers.TotalResources == "1");

            customer.Active = "true";
            connector.Update(customer);

            Assert.IsFalse(connector.HasError);
            Assert.IsTrue(customer.Active == "true");
        }
Beispiel #2
0
        public void TestCustomer()
        {
            var connector = new CustomerConnector();

            connector.Authorization = new StaticTokenAuth(at, cs);

            var customer = connector.Get("0022");

            customer.GLN         = "123";
            customer.GLNDelivery = "12345";
            customer.Active      = "false";
            customer             = connector.Update(customer);

            Assert.IsFalse(connector.HasError);
            Assert.IsTrue(customer.Active == "false");

            connector.FilterBy = Filter.Customer.Inactive;
            var customers = connector.Find();

            Assert.IsFalse(connector.HasError);
            Assert.IsTrue(customers.CustomerSubset.Any(c => c.CustomerNumber == "0022"));

            customer.Active = "true";
            connector.Update(customer);

            Assert.IsFalse(connector.HasError);
            Assert.IsTrue(customer.Active == "true");
            customers = connector.Find();
            Assert.IsFalse(customers.CustomerSubset.Any(c => c.CustomerNumber == "0022"));
        }
Beispiel #3
0
        public void Test_Customer_Update_UndefinedProperties()
        {
            var connector = new CustomerConnector();

            //Arrange - Create customer
            var existingCustomer = connector.Create(new Customer()
            {
                Name     = "TestCustomer",
                Address1 = "TestStreet 1",
                Type     = CustomerType.PRIVATE,
                VATType  = VATType.EUVAT
            });

            MyAssert.HasNoError(connector);

            //Act - Update customer
            var updatedCustomerData = new Customer()
            {
                CustomerNumber = existingCustomer.CustomerNumber,
                Address1       = "Updated Address"
            };

            var updatedCustomer = connector.Update(updatedCustomerData);

            MyAssert.HasNoError(connector);
            Assert.AreEqual("Updated Address", updatedCustomer.Address1);
            Assert.AreEqual("TestCustomer", updatedCustomer.Name);
            Assert.AreEqual(CustomerType.PRIVATE, updatedCustomer.Type);
            Assert.AreEqual(VATType.EUVAT, updatedCustomer.VATType);

            //Clean
            connector.Delete(existingCustomer.CustomerNumber);
            MyAssert.HasNoError(connector);
        }
Beispiel #4
0
        public void Test_Customer_CRUD()
        {
            #region Arrange
            //Add code to create required resources
            #endregion Arrange

            ICustomerConnector connector = new CustomerConnector();

            #region CREATE
            var newCustomer = new Customer()
            {
                Name        = "TestCustomer",
                Address1    = "TestStreet 1",
                Address2    = "TestStreet 2",
                ZipCode     = "01010",
                City        = "Testopolis",
                CountryCode = "SE", //CountryCode needs to be valid
                Email       = "*****@*****.**",
                Type        = CustomerType.Private,
                Active      = false
            };

            var createdCustomer = connector.Create(newCustomer);
            MyAssert.HasNoError(connector);
            Assert.AreEqual("TestCustomer", createdCustomer.Name);

            #endregion CREATE

            #region UPDATE

            createdCustomer.Name = "UpdatedTestCustomer";

            var updatedCustomer = connector.Update(createdCustomer);
            MyAssert.HasNoError(connector);
            Assert.AreEqual("UpdatedTestCustomer", updatedCustomer.Name);

            #endregion UPDATE

            #region READ / GET

            var retrievedCustomer = connector.Get(createdCustomer.CustomerNumber);
            MyAssert.HasNoError(connector);
            Assert.AreEqual("UpdatedTestCustomer", retrievedCustomer.Name);

            #endregion READ / GET

            #region DELETE

            connector.Delete(createdCustomer.CustomerNumber);
            MyAssert.HasNoError(connector);

            retrievedCustomer = connector.Get(createdCustomer.CustomerNumber);
            Assert.AreEqual(null, retrievedCustomer, "Entity still exists after Delete!");

            #endregion DELETE

            #region Delete arranged resources
            //Add code to delete temporary resources
            #endregion Delete arranged resources
        }
        public void Test_FailedUpdate_NoEntity()
        {
            var connector = new CustomerConnector();

            var createdCustomer = connector.Update(new Customer()
            {
                Name = "TestCustomer", CustomerNumber = "NotExistingCustomerNumber"
            });

            Assert.IsNull(createdCustomer);
        }
Beispiel #6
0
        public void Test_issue50_fixed() // Origins from https://github.com/FortnoxAB/csharp-api-sdk/issues/50
        {
            var connector   = new CustomerConnector();
            var newCustomer = connector.Create(new Customer()
            {
                Name = "TestCustomer", City = "Växjö", Type = CustomerType.Company
            });

            var updatedCustomer = connector.Update(new Customer()
            {
                CustomerNumber = newCustomer.CustomerNumber, City = "Stockholm"
            });

            Assert.AreEqual(CustomerType.Company, updatedCustomer.Type);

            connector.Delete(newCustomer.CustomerNumber);
        }
        public void Test_ReadOnlyProperty_NotSerialized()
        {
            var connector = new CustomerConnector();

            var createdCustomer = connector.Create(new Customer()
            {
                Name = "TestCustomer", CountryCode = "SE"
            });

            MyAssert.HasNoError(connector);

            connector.Update(createdCustomer);
            MyAssert.HasNoError(connector);
            Assert.IsFalse(connector.RequestContent.Contains("\"Country\":"), "Read-only property exists in Update request!");
            //Country is read-only, should not be send in update request even if its unchanged

            connector.Delete(createdCustomer.CustomerNumber);
            MyAssert.HasNoError(connector);
        }