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

Issue 122443003: Added PkgBuildTestSuite (aka 'pkgbuild') (Closed)

Created:
6 years, 11 months ago by kustermann
Modified:
6 years, 11 months ago
Reviewers:
ricow1, Bob Nystrom
CC:
reviews_dartlang.org
Visibility:
Public.

Description

Added PkgBuildTestSuite (aka 'pkgbuild') This CL adds - support for fetching dependencies via 'pub get' of samples/packages - support for building applications/samples via 'pub build' (or a custom build.dart file) - pkg/pkgbuild.status: Status files for all package checkouts/builds - the '--use-public-packages' option to test.dart - the CleanDirectoryCopyCommand, PubCommand, ModifyPubspecYamlCommand commands The test suite can be executed with: $ ./tools/test.py -mrelease --use-sdk pkgbuild $ ./tools/test.py -mrelease --use-sdk --use-public-packages pkgbuild R=ricow@google.com Committed: https://code.google.com/p/dart/source/detail?r=31535

Patch Set 1 #

Total comments: 10

Patch Set 2 : #

Patch Set 3 : #

Total comments: 10

Patch Set 4 : #

Total comments: 7
Unified diffs Side-by-side diffs Delta from patch set Stats (+539 lines, -44 lines) Patch
A + dart/pkg/pkgbuild.status View 1 2 1 chunk +7 lines, -8 lines 0 comments Download
M dart/tools/test.dart View 1 chunk +10 lines, -0 lines 2 comments Download
M dart/tools/testing/dart/status_file_parser.dart View 1 2 chunks +3 lines, -0 lines 0 comments Download
M dart/tools/testing/dart/test_options.dart View 1 2 3 2 chunks +10 lines, -0 lines 0 comments Download
M dart/tools/testing/dart/test_runner.dart View 1 2 3 6 chunks +190 lines, -1 line 3 comments Download
M dart/tools/testing/dart/test_suite.dart View 1 2 3 6 chunks +306 lines, -35 lines 2 comments Download
M dart/tools/testing/dart/utils.dart View 1 chunk +13 lines, -0 lines 0 comments Download

Messages

Total messages: 11 (0 generated)
kustermann
6 years, 11 months ago (2014-01-02 16:11:09 UTC) #1
kustermann
I've added the PubCommand (from CL https://codereview.chromium.org/98183009/) to this one, so pkg/pkgbuild.status can have more ...
6 years, 11 months ago (2014-01-06 16:21:23 UTC) #2
ricow1
https://codereview.chromium.org/122443003/diff/1/dart/tools/testing/dart/test_runner.dart File dart/tools/testing/dart/test_runner.dart (right): https://codereview.chromium.org/122443003/diff/1/dart/tools/testing/dart/test_runner.dart#newcode396 dart/tools/testing/dart/test_runner.dart:396: // FIXME: This is linux only. move this to ...
6 years, 11 months ago (2014-01-07 07:38:29 UTC) #3
kustermann
PTAL https://codereview.chromium.org/122443003/diff/1/dart/tools/testing/dart/test_runner.dart File dart/tools/testing/dart/test_runner.dart (right): https://codereview.chromium.org/122443003/diff/1/dart/tools/testing/dart/test_runner.dart#newcode396 dart/tools/testing/dart/test_runner.dart:396: // FIXME: This is linux only. On 2014/01/07 ...
6 years, 11 months ago (2014-01-07 08:24:12 UTC) #4
ricow1
LGTM, maybe get Bob to take a look as well to make sure we don't ...
6 years, 11 months ago (2014-01-07 09:11:25 UTC) #5
kustermann
@bob: If you have comments, I'll address them in another CL. https://codereview.chromium.org/122443003/diff/190001/dart/tools/testing/dart/test_options.dart File dart/tools/testing/dart/test_options.dart (right): ...
6 years, 11 months ago (2014-01-07 09:36:07 UTC) #6
kustermann
6 years, 11 months ago (2014-01-07 09:36:15 UTC) #7
kustermann
Committed patchset #4 manually as r31535 (presubmit successful).
6 years, 11 months ago (2014-01-07 09:36:39 UTC) #8
Bob Nystrom
I didn't scrutinize the patch in detail but I really like what I see. A ...
6 years, 11 months ago (2014-01-07 17:13:43 UTC) #9
kustermann
https://codereview.chromium.org/122443003/diff/280001/dart/tools/test.dart File dart/tools/test.dart (right): https://codereview.chromium.org/122443003/diff/280001/dart/tools/test.dart#newcode200 dart/tools/test.dart:200: exit(1); On 2014/01/07 17:13:43, Bob Nystrom wrote: > Instead ...
6 years, 11 months ago (2014-01-10 15:48:04 UTC) #10
Bob Nystrom
6 years, 11 months ago (2014-01-10 17:54:58 UTC) #11
Message was sent while issue was closed.
https://codereview.chromium.org/122443003/diff/280001/dart/tools/testing/dart...
File dart/tools/testing/dart/test_runner.dart (right):

https://codereview.chromium.org/122443003/diff/280001/dart/tools/testing/dart...
dart/tools/testing/dart/test_runner.dart:477: "dependency_overrides:\n");
On 2014/01/10 15:48:05, kustermann wrote:
> - pkg/yaml didn't provide a way to save it again

Yeah, that's an open issue, but just serializing to JSON is a valid way to save
back to YAML. It's just not the same YAML you originally parsed.

> - manipulating json is not what I want:
>   * what I would like to have is a 'class PubspecYaml' represents exactly what
> is allowed in pubspec.yaml files

Yeah, that would be nice, I agree.

> I don't understand why yaml should be a subset/superset of json. Looking at
> syntax it's just different.

YAML has a pretty flexible syntax. Maps and lists can be created using
whitespace for indentation, but it also allows {} and []. When you do that, you
effectively have JSON. From the YAML spec:

1.3. Relation to JSON

Both JSON and YAML aim to be human readable data interchange formats. However,
JSON and YAML have different priorities. JSON’s foremost design goal is
simplicity and universality. Thus, JSON is trivial to generate and parse, at the
cost of reduced human readability. It also uses a lowest common denominator
information model, ensuring any JSON data can be easily processed by every
modern programming environment.

In contrast, YAML’s foremost design goals are human readability and support for
serializing arbitrary native data structures. Thus, YAML allows for extremely
readable files, but is more complex to generate and parse. In addition, YAML
ventures beyond the lowest common denominator data types, requiring more complex
processing when crossing between different programming environments.

YAML can therefore be viewed as a natural superset of JSON, offering improved
human readability and a more complete information model. This is also the case
in practice; every JSON file is also a valid YAML file. This makes it easy to
migrate from JSON to YAML if/when the additional features are required.

Powered by Google App Engine
This is Rietveld 408576698