Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(119)

Unified Diff: third_party/protobuf/java/compatibility_tests/README.md

Issue 2495533002: third_party/protobuf: Update to HEAD (83d681ee2c) (Closed)
Patch Set: Make chrome settings proto generated file a component Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/protobuf/java/compatibility_tests/README.md
diff --git a/third_party/protobuf/java/compatibility_tests/README.md b/third_party/protobuf/java/compatibility_tests/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..72c6034c99bc9fb51d9362498a774392873be0f3
--- /dev/null
+++ b/third_party/protobuf/java/compatibility_tests/README.md
@@ -0,0 +1,50 @@
+# Protobuf Java Compatibility Tests
+
+This directory contains tests to ensure protobuf library is compatible with
+previously released versions.
+
+## Directory Layout
+
+For each released protobuf version we are testing compatibility with, there
+is a sub-directory with the following layout (take v2.5.0 as an example):
+
+ * v2.5.0
+ * test.sh
+ * pom.xml
+ * protos/ - unittest protos.
+ * more_protos/ - unittest protos that import the ones in "protos".
+ * tests/ - actual Java test classes.
+
+The testing code is extracted from regular protobuf unittests by removing:
+
+ * tests that access package private methods/classes.
+ * tests that are known to be broken by an intended behavior change (e.g., we
+ changed the parsing recursion limit from 64 to 100).
+ * all lite runtime tests.
+
+It's also divided into 3 submodule with tests depending on more_protos and
+more_protos depending on protos. This way we can test scenarios where only part
+of the dependency is upgraded to the new version.
+
+## How to Run The Tests
+
+We use a shell script to drive the test of different scenarios so the test
+will only run on unix-like environments. The script expects a few command
+line tools to be available on PATH: git, mvn, wget, grep, sed, java.
+
+Before running the tests, make sure you have already built the protoc binary
+following [the C++ installation instructions](../../src/README.md). The test
+scripts will use the built binary located at ${protobuf}/src/protoc.
+
+To start a test, simply run the test.sh script in each version directory. For
+example:
+
+ $ v2.5.0/test.sh
+
+For each version, the test script will test:
+
+ * only upgrading protos to the new version
+ * only upgrading more_protos to the new version
+
+and see whether everything builds/runs fine. Both source compatibility and
+binary compatibility will be tested.
« no previous file with comments | « third_party/protobuf/java/README.md ('k') | third_party/protobuf/java/compatibility_tests/v2.5.0/deps/pom.xml » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698