blob: 1c59244d8b0fc4bb0f42a8d18159397e9cec9560 [file] [log] [blame]
Paul Duffin8150da62019-12-16 17:21:27 +00001// Copyright 2019 Google Inc. All rights reserved.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15package sdk
16
17import (
18 "testing"
19)
20
21// Ensure that module_exports generates a module_exports_snapshot module.
22func TestModuleExportsSnapshot(t *testing.T) {
23 packageBp := `
24 module_exports {
25 name: "myexports",
26 java_libs: [
27 "myjavalib",
28 ],
29 }
30
31 java_library {
32 name: "myjavalib",
33 srcs: ["Test.java"],
34 system_modules: "none",
35 sdk_version: "none",
36 }
37 `
38
39 result := testSdkWithFs(t, ``,
40 map[string][]byte{
41 "package/Test.java": nil,
42 "package/Android.bp": []byte(packageBp),
43 })
44
Paul Duffin1356d8c2020-02-25 19:26:33 +000045 result.CheckSnapshot("myexports", "package",
Paul Duffin8150da62019-12-16 17:21:27 +000046 checkAndroidBpContents(`
47// This is auto-generated. DO NOT EDIT.
48
49java_import {
50 name: "myexports_myjavalib@current",
51 sdk_member_name: "myjavalib",
Paul Duffind99d9972020-09-29 16:00:55 +010052 visibility: ["//visibility:public"],
Martin Stjernholm1e041092020-11-03 00:11:09 +000053 apex_available: ["//apex_available:platform"],
Paul Duffin8150da62019-12-16 17:21:27 +000054 jars: ["java/myjavalib.jar"],
55}
56
57java_import {
58 name: "myjavalib",
59 prefer: false,
Paul Duffind99d9972020-09-29 16:00:55 +010060 visibility: ["//visibility:public"],
Martin Stjernholm1e041092020-11-03 00:11:09 +000061 apex_available: ["//apex_available:platform"],
Paul Duffin8150da62019-12-16 17:21:27 +000062 jars: ["java/myjavalib.jar"],
63}
64
65module_exports_snapshot {
66 name: "myexports@current",
Paul Duffind99d9972020-09-29 16:00:55 +010067 visibility: ["//visibility:public"],
Paul Duffin8150da62019-12-16 17:21:27 +000068 java_libs: ["myexports_myjavalib@current"],
69}
70`))
71}