Commit Graph

236 Commits

Author SHA1 Message Date
Carlos Ruiz 350f101d0c
IDEMPIERE-4289 Implement Support for JUnit5 Unit Testing (#447)
Fix launcher to avoid adding all custom plugins every time I try to execute it
2020-12-10 06:25:30 +08:00
Carlos Ruiz d654ed5791
IDEMPIERE-4587 Wrong ordered qty when reactivating a purchase order and setting a line to zero (#445) 2020-12-09 20:49:01 +01:00
hieplq 58c6716253
IDEMPIERE-4360 exclude generate and test code to speed up (#440)
* IDEMPIERE-4360 add sonarcloud.io

* IDEMPIERE-4360 add sonarcloud.io (update properties)

* IDEMPIERE-4360 add sonarcloud.io (optimize)

1. when use matrix for codeql-action then job of javascript run same job of java (mvn, sonar)
so don't use matrix do define separate job let javascript job faster a lot
2. reduce maven log and sonar log from info to warn
3. move project info from pom to yml let fork central place customize CI

* IDEMPIERE-4360 turn off sonar at PR because not yet support

https://stackoverflow.com/a/39720346

* IDEMPIERE-4360 exclude generate and test code to speed up

* IDEMPIERE-4360 add sonarcloud.io (optimize)

1. parallel sonar and code QL
2. parameter for repository owner (org)
2020-12-06 16:50:14 +01:00
Carlos Ruiz bf65636e22
IDEMPIERE-4577 Problem creating an invoice vendor negative after the … (#428)
* IDEMPIERE-4577 Problem creating an invoice vendor negative after the shipment

* IDEMPIERE-4577 Problem creating an invoice vendor negative after the shipment

Add unit test
2020-12-02 21:08:41 +08:00
Carlos Ruiz 0eb4986513
IDEMPIERE-4575 Cannot complete Material Receipt from negative PO (#419) 2020-11-28 07:09:39 +08:00
hengsin 0d381faf99
IDEMPIERE-4187 implement the usage of workflows in processes (#416)
- incorporate suggestion from Martin Schönbeck to unit test
2020-11-26 14:17:40 +01:00
Carlos Ruiz 460f7116a2
IDEMPIERE-4567 Resetting payment allocation to a charge leaves wrong … (#414)
* IDEMPIERE-4567 Resetting payment allocation to a charge leaves wrong BP Balance

MAllocationHdr.updateBP was broken, the form Payment Allocation worked just because it was calling bpartner.setTotalOpenBalance() at the end
so, I refactored the MAllocationHdr.updateBP and before/afterDelete to call bpartner.setTotalOpenBalance instead if the broken algorithm

Unit test added for allocating and deleting a customer invoice, a vendor invoice, and a charge

* IDEMPIERE-4567 Resetting payment allocation to a charge leaves wrong BP Balance

- Fix peer review changes requested by @hengsin
- Detected double call to bpartner.setTotalOpenBalance in WAllocation
- Detected some business partners in GardenWorld with wrong TotalOpenBalance or SO_CreditUsed, added migration script to fix it, it made more complicate to write unit tests as the data was wrong
2020-11-26 17:08:05 +08:00
Carlos Ruiz 210e54b05f IDEMPIERE-4521 Release 8.1 - RC
Change versions in pom and manifest files
2020-11-03 21:59:12 +01:00
hieplq 6e96c43303
IDEMPIERE-4492 fix for rest api (#343)
* IDEMPIERE-4492 update jetty to 9.4.33.v20201020 update atmosphere to 2.5.15

* IDEMPIERE-4492 update jetty to 9.4.33.v20201020 (update configuration)

update to default jetty configuration
delete unused configuration (alpn, http2,..)

* IDEMPIERE-4492 update orbit eclipse repository to 4.17

* IDEMPIERE-4492 update orbit eclipse repository to 4.17 (on parent pom)

* IDEMPIERE-4492 update jasper to 6.15.0

* IDEMPIERE-4492 update jasper to 6.15.0 (IDEMPIERE-4504)

get rid of bundle "org.w3c.dom.events version 3.0.0" by use old version of org.w3c.dom.smil

note: on target platform a bundle has multi version then tycho can pickup correct version define on feature (tab included plugins, field version)
but on eclipse when sync launching from .product it don't respect that value, always set highest version to bundle
workaround: on target platform manual un-select bundle org.w3c.dom.smil 1.0.1

* IDEMPIERE-4492 update atmosphere to 2.6.4

* IDEMPIERE-4492 refine target platform

use targetplatform-dsl to generate target platform https://github.com/eclipse-cbi/targetplatform-dsl
   + don't need to care update bundle version when update repository
   + at moment org.idempiere.eclipse.platform-feature include some feature form eclipse repository
     so target has to include that feature so target platform will include all bundler request by feature and bundle request by plugins of that feature and so on (ever optional
     so it make target content has more plugins than what we use on project
     next step will convert include feature to include plugins to define only what we used

* IDEMPIERE-4492 refine target platform (continue)

don't include framework feature, use include plugins to void load transitive dependency so minimize target flatform
remove some unused feature from idempiere product

* IDEMPIERE-4492 update c3p0 and database jdbc (patch from Carlos)

* IDEMPIERE-4492 improve target platform (continue)

provide test bundle require to repository for use on offline
remove some unused bundle
also fix for IDEMPIERE-4475

* IDEMPIERE-4492 improve target platform (continue IDEMPIERE-4475)

add launch for unittest
add more require bundle for unit test

* IDEMPIERE-4492 fix for rest api

refer:https://github.com/eclipse-ee4j/jersey/issues/3588#issuecomment-720033467

* IDEMPIERE-4492 fix for rest api

refer:https://github.com/eclipse-ee4j/jersey/issues/3588#issuecomment-720033467
2020-11-01 13:22:11 +01:00
hengsin b4c93c76b3
IDEMPIERE-4516 InvoiceCustomerTest show NPE at console (#342)
* IDEMPIERE-4516 InvoiceCustomerTest show NPE at console

add NPE check

* IDEMPIERE-4516 InvoiceCustomerTest show NPE at console

- add way to defer the immediate posting of doc that's means to be
posted in the processing of docpostprocess of the source document.
- add severe log check to InvoiceCustomerTest
- DocumentEngine should skip Doc from DocPostProcess that have been
posted
2020-11-01 12:43:36 +01:00
hieplq d2a2e3d19f
Idempiere 4492 improve target platform (continue) (#335)
* IDEMPIERE-4492 update jetty to 9.4.33.v20201020 update atmosphere to 2.5.15

* IDEMPIERE-4492 update jetty to 9.4.33.v20201020 (update configuration)

update to default jetty configuration
delete unused configuration (alpn, http2,..)

* IDEMPIERE-4492 update orbit eclipse repository to 4.17

* IDEMPIERE-4492 update orbit eclipse repository to 4.17 (on parent pom)

* IDEMPIERE-4492 update jasper to 6.15.0

* IDEMPIERE-4492 update jasper to 6.15.0 (IDEMPIERE-4504)

get rid of bundle "org.w3c.dom.events version 3.0.0" by use old version of org.w3c.dom.smil

note: on target platform a bundle has multi version then tycho can pickup correct version define on feature (tab included plugins, field version)
but on eclipse when sync launching from .product it don't respect that value, always set highest version to bundle
workaround: on target platform manual un-select bundle org.w3c.dom.smil 1.0.1

* IDEMPIERE-4492 update atmosphere to 2.6.4

* IDEMPIERE-4492 refine target platform

use targetplatform-dsl to generate target platform https://github.com/eclipse-cbi/targetplatform-dsl
   + don't need to care update bundle version when update repository
   + at moment org.idempiere.eclipse.platform-feature include some feature form eclipse repository
     so target has to include that feature so target platform will include all bundler request by feature and bundle request by plugins of that feature and so on (ever optional
     so it make target content has more plugins than what we use on project
     next step will convert include feature to include plugins to define only what we used

* IDEMPIERE-4492 refine target platform (continue)

don't include framework feature, use include plugins to void load transitive dependency so minimize target flatform
remove some unused feature from idempiere product

* IDEMPIERE-4492 update c3p0 and database jdbc (patch from Carlos)

* IDEMPIERE-4492 improve target platform (continue)

provide test bundle require to repository for use on offline
remove some unused bundle
also fix for IDEMPIERE-4475

* IDEMPIERE-4492 improve target platform (continue IDEMPIERE-4475)

add launch for unittest
add more require bundle for unit test
2020-10-31 13:48:16 +01:00
hieplq 58258ad506
Idempiere-4492 update library (eclipse-4.17, jasper 6-15, jetty-9.4.33, atmosphere-2.6.4) (#331)
* IDEMPIERE-4492 update jetty to 9.4.33.v20201020 update atmosphere to 2.5.15

* IDEMPIERE-4492 update jetty to 9.4.33.v20201020 (update configuration)

update to default jetty configuration
delete unused configuration (alpn, http2,..)

* IDEMPIERE-4492 update orbit eclipse repository to 4.17

* IDEMPIERE-4492 update orbit eclipse repository to 4.17 (on parent pom)

* IDEMPIERE-4492 update jasper to 6.15.0

* IDEMPIERE-4492 update jasper to 6.15.0 (IDEMPIERE-4504)

get rid of bundle "org.w3c.dom.events version 3.0.0" by use old version of org.w3c.dom.smil

note: on target platform a bundle has multi version then tycho can pickup correct version define on feature (tab included plugins, field version)
but on eclipse when sync launching from .product it don't respect that value, always set highest version to bundle
workaround: on target platform manual un-select bundle org.w3c.dom.smil 1.0.1

* IDEMPIERE-4492 update atmosphere to 2.6.4

* IDEMPIERE-4492 refine target platform

use targetplatform-dsl to generate target platform https://github.com/eclipse-cbi/targetplatform-dsl
   + don't need to care update bundle version when update repository
   + at moment org.idempiere.eclipse.platform-feature include some feature form eclipse repository
     so target has to include that feature so target platform will include all bundler request by feature and bundle request by plugins of that feature and so on (ever optional
     so it make target content has more plugins than what we use on project
     next step will convert include feature to include plugins to define only what we used

* IDEMPIERE-4492 refine target platform (continue)

don't include framework feature, use include plugins to void load transitive dependency so minimize target flatform
remove some unused feature from idempiere product

* IDEMPIERE-4492 update c3p0 and database jdbc (patch from Carlos)
2020-10-31 06:53:36 +08:00
hengsin 9162b60af7
IDEMPIERE-4498 Performance: add cache for osgi services factory (#321)
* IDEMPIERE-4498 Performance: add cache for osgi services factory

add cache for tableName -> IModelFactory

* IDEMPIERE-4498 Performance: add cache for osgi services factory

implement cache for the discovery of osgi services

* IDEMPIERE-4498 Performance: add cache for osgi services factory

added unit test
2020-10-26 18:53:10 +01:00
hengsin 6e9a547049
IDEMPIERE-4128 Matched invoice posting with wrong precision based on transaction currency instead of schema currency (#317)
- minor unit testing improvement
2020-10-26 18:24:57 +01:00
hengsin 57e4e3fceb
IDEMPIERE-4128 Matched invoice posting with wrong precision based on transaction currency instead of schema currency (#316)
- Fix error in setting the currency for source amount
- Improve unit test to check source amount precision as well
2020-10-22 20:48:07 +08:00
Elaine Tan c4b39eac8c
IDEMPIERE-4128 Matched invoice posting with wrong precision based on transaction currency instead of schema currency (#313)
* IDEMPIERE-4128 Matched invoice posting with wrong precision based on transaction currency instead of schema currency

* IDEMPIERE-4128 Matched invoice posting with wrong precision based on transaction currency instead of schema currency - Added MatchInvTest.testMatReceiptPostingWithDiffCurrencyPrecision test case
2020-10-22 15:40:42 +08:00
hengsin 4c1ba12a3f
IDEMPIERE-3212 Quantity MatchPO wrong validation (#269)
Fix auto matching for matchpo and matchinv
2020-09-21 20:00:31 +02:00
hengsin dd2ef468b0
IDEMPIERE 4287 (#247)
* IDEMPIERE-4287 Cache API not thread safe and inconsistent with Context
add support to make PO immutable

* IDEMPIERE-4287 Cache API not thread safe and inconsistent with Context
- added thread safe Immutable and Copy cache implementation for PO.
- migrate most of PO cache to immutable and copy cache.
- added pos sales order test.

* IDEMPIERE-4287 Cache API not thread safe and inconsistent with Context
- add test case for initial client setup and bank statement
- fix error for image editor, location editor, locator editor, initial
client setup, complete bank statement and migrate storage provider.

* IDEMPIERE-4287 Cache API not thread safe and inconsistent with Context
- added ImmutablePOSupport interface. Model class implement this
interface for immutable PO support.
- remove usage of cache for transaction table (rfq, invoice, inventory).
- add getCopy method to some model class to support getting an
updateable copy of PO from the otherwise immutable PO cache.
- the added getCopy method is use to return updateable PO for indirect
PO reference, for e.g MColumn.getAD_Table() and MOrderLine.getProduct.
2020-09-21 14:03:00 +08:00
Elaine Tan 79d6c1e903
IDEMPIERE-4263 Wrong matched invoice GL posting (currency balancing) in alternate schema for vendor credit memo if > 1 credit memo line (#250)
* IDEMPIERE-4263 Wrong matched invoice GL posting (currency balancing) in alternate schema for vendor credit memo if > 1 credit memo line
2020-09-18 20:58:14 +08:00
Carlos Ruiz 703ce7bda8
IDEMPIERE-4289 Implement Support for JUnit5 Unit Testing (#262)
Move the old Convert_PostgreSQLTest to the new structure
2020-09-18 12:17:40 +02:00
Elaine Tan 236729e3f5
IDEMPIERE-4173 Wrong GL postings for matched invoice in RMA/Vendor Re… (#239)
* IDEMPIERE-4173 Wrong GL postings for matched invoice in RMA/Vendor Return/Credit Memo

* IDEMPIERE-4173 Wrong GL postings for matched invoice in RMA/Vendor Return/Credit Memo - Added test case
2020-09-10 20:49:25 +08:00
hengsin 7324dde78e
IDEMPIERE-4187 implement the usage of workflows in processes (#236)
Implement chaining of workflow through the use of Process Action
Implement overwrite of Record_ID for Process through Node Parameter
2020-08-27 14:34:26 +02:00
hengsin 60f4ea4215
IDEMPIERE-4406 Performance: PO Cache should not always reset all entr… (#212)
* IDEMPIERE-4406 Performance: PO Cache should not always reset all entries after update of one record

PO update - reset cache by record id

* IDEMPIERE-4406 Performance: PO Cache should not always reset all entries after update of one record

refine unit test

* IDEMPIERE-4406 Performance: PO Cache should not always reset all entries after update of one record

add cache reset fix for delete

* IDEMPIERE-4406 Performance: PO Cache should not always reset all entries after update of one record

Fix exception when cache is empty
Expose hidden cache reset exception
2020-08-11 14:55:03 +02:00
hengsin c17f1ae733
IDEMPIERE-4389 (#206)
* IDEMPIERE-4389 Implement Copy Constructor support for PO

Implement PO support for copy constructor

* IDEMPIERE-4389 Implement Copy Constructor support for PO

deprecate clone
replace clone with copy constructor

* IDEMPIERE-4389 Implement Copy Constructor support for PO

add unit test for MPrintFormat copy constructor

* IDEMPIERE-4389 Implement Copy Constructor support for PO

fix wrong import
2020-08-05 21:03:40 +02:00
hengsin f010b10446
IDEMPIERE-4393 Replace Oracle outer join synax (+) with SQL standard outer join (#199)
add native postgresql unit test for GenericPaymentExport
remove unnecessary static and fix sql exception doesn't stop the export
replace Oracle (+) with standard sql outer joint
2020-08-03 12:04:53 +02:00
hengsin 40efcea51e
IDEMPIERE-4381 Order Line QtyReserved not updated correctly for negative shipment (#180)
Fix update of QtyReserved
2020-07-26 10:48:55 +02:00
Carlos Ruiz e057072bc7
IDEMPIERE-829 Implement MInvoice.getOpenAmt with paymentDate (#135) 2020-06-30 12:45:14 +02:00
Carlos Ruiz f19ac52dd5
Revert "IDEMPIERE-4319 Cascade workflow activities (#110)" (#124)
This reverts commit fb67a8f375.
2020-06-17 19:35:23 +02:00
Carlos Ruiz fb67a8f375
IDEMPIERE-4319 Cascade workflow activities (#110)
Test case is different now because raising the exception, the order is not Invalid, but Draft
Jenkins test job failing:
https://jenkins.idempiere.org/job/iDempiereDaily/239/org.idempiere$org.idempiere.test/testReport/org.idempiere.test.model/SalesOrderTest/testDatePromisedValidation/
2020-06-13 12:58:34 +08:00
hieplq 9a35f2054d
IDEMPIERE-4314:eclipse project setting independent JDK (#90) 2020-06-01 11:30:00 +08:00
hieplq 595e0df99c
Idempiere-4298:support update jdk (jdk 12 13 14) (#69)
* IDEMPIERE-4298: remove Bundle-RequiredExecutionEnvironment

when build by tycho value of Bundle-RequiredExecutionEnvironment and jdt need to compatibility
in case we use Bundle-RequiredExecutionEnvironment = 11 then can't build by jdk != 11
so stick on fix value isn't good

eclipse now also support Require-Capability, so don't need Bundle-RequiredExecutionEnvironment anymore

* IDEMPIERE-4298:support update jdk (jdk 12 13 14)

default environment still jdk-11 but you can build for any jdk by below command

export JAVA_HOME=path to jdk
mvn verify -Djdk.version=11

in case on JAVA_HOME is jdk 14 then can set jdk.version for 11, 12, 13, 14 and same for other jdk

at moment java 14 just support on eclipse 2020-03 with install plugin
Java 14 Support for Eclipse 2020-03 (4.15)
2020-05-20 11:18:31 +08:00
hengsin ad756782e7
IDEMPIERE-2699 Performance: Constant visits to database for MTable not cached (#63)
add unit testing
2020-05-19 10:05:56 +02:00
hengsin 77bf87f88a
IDEMPIERE-235 Generate Shipments is generating partial for complete orders (#64)
Add unit testing for DatePromised validation
2020-05-15 16:46:26 +02:00
hengsin 4487904bde
IDEMPIERE-4292 QueryTest.testOnlySelection fail on fresh db (#62)
Fix test failure on fresh db.
2020-05-15 10:19:07 +02:00
hengsin ce107f3678
IDEMPIERE-2698 Performance: Report checking for zoom condition on dat… (#59)
* IDEMPIERE-2698 Performance: Report checking for zoom condition on database - must be cached

Add unit testing

* IDEMPIERE-2699 Performance: Constant visits to database for MTable not cached

Should usually access from tenant instead system client.
2020-05-14 15:41:39 +02:00
hengsin 4c03fef8a8
IDEMPIERE-4289 Implement Support for JUnit5 Unit Testing (#53)
Add JUnit5 unit testing project org.idempiere.test
Add tycho sure fire test (skip by default)
2020-05-12 17:17:36 +02:00