// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// Test for [OriginTrialEnabled] extended attribute applied to a partial
// interface. This is separate from TestInterfacePartial, as the
// [OriginTrialEnabled] attribute cannot be applied with [RuntimeEnabled].

[
    ImplementedAs=TestInterfacePartial4,
    OriginTrialEnabled=OriginTrialPartialFeature // Conflicts with RuntimeEnabled
] partial interface TestInterface {
    const unsigned short PARTIAL4_UNSIGNED_SHORT = 4;

    attribute long partial4LongAttribute;
    static attribute long partial4StaticLongAttribute;

    void partial4VoidMethod();
    static void partial4StaticVoidMethod();
};
