blob: 74adca3b2c5447463697cee04b6746f38241bf7a [file] [log] [blame]
Carl Shapiro1fb86202011-06-27 17:43:13 -07001// Copyright 2011 Google Inc. All Rights Reserved.
2
3#include "src/dex_file.h"
4#include "src/scoped_ptr.h"
5
6#include <stdio.h>
7#include "gtest/gtest.h"
8
9namespace art {
10
11static const char* filename =
12 "/usr/local/google/work/dalvik-dev-git/Nested.dex";
13
14TEST(DexFile, Open) {
15 scoped_ptr<DexFile> dex(DexFile::Open(filename));
16 ASSERT_TRUE(dex != NULL);
17}
18
19TEST(DexFile, LoadNonexistent) {
20 scoped_ptr<DexFile> dex(DexFile::Open(filename));
21 ASSERT_TRUE(dex != NULL);
22
23 Class* klass = dex->LoadClass("NoSuchClass");
24 ASSERT_TRUE(klass == NULL);
25}
26
27TEST(DexFile, Load) {
28 scoped_ptr<DexFile> dex(DexFile::Open(filename));
29 ASSERT_TRUE(dex != NULL);
30
31 Class* klass = dex->LoadClass("LNested;");
32 ASSERT_TRUE(klass != NULL);
Carl Shapiro3ee755d2011-06-28 12:11:04 -070033
34 uint32_t vmeth = klass->NumVirtualMethods();
35 EXPECT_EQ(vmeth, 0U);
36
37 uint32_t dmeth = klass->NumDirectMethods();
38 EXPECT_EQ(dmeth, 1U);
Carl Shapiro1fb86202011-06-27 17:43:13 -070039}
40
41} // namespace art