mirror of
https://github.com/hajimehoshi/ebiten.git
synced 2024-11-10 04:57:26 +01:00
audio: Refactor test files
This commit is contained in:
parent
bda285b376
commit
e04e709a10
@ -55,7 +55,7 @@ const (
|
|||||||
//
|
//
|
||||||
// For a typical usage example, see examples/wav/main.go.
|
// For a typical usage example, see examples/wav/main.go.
|
||||||
type Context struct {
|
type Context struct {
|
||||||
c writerContext
|
wc writerContext
|
||||||
|
|
||||||
// inited represents whether the audio device is initialized and available or not.
|
// inited represents whether the audio device is initialized and available or not.
|
||||||
// On Android, audio loop cannot be started unless JVM is accessible. After updating one frame, JVM should exist.
|
// On Android, audio loop cannot be started unless JVM is accessible. After updating one frame, JVM should exist.
|
||||||
@ -97,7 +97,7 @@ func NewContext(sampleRate int) *Context {
|
|||||||
|
|
||||||
c := &Context{
|
c := &Context{
|
||||||
sampleRate: sampleRate,
|
sampleRate: sampleRate,
|
||||||
c: newWriterContext(sampleRate),
|
wc: newWriterContext(sampleRate),
|
||||||
players: map[playerImpl]struct{}{},
|
players: map[playerImpl]struct{}{},
|
||||||
inited: make(chan struct{}),
|
inited: make(chan struct{}),
|
||||||
semaphore: make(chan struct{}, 1),
|
semaphore: make(chan struct{}, 1),
|
||||||
@ -268,7 +268,7 @@ type playerImpl interface {
|
|||||||
// A Player doesn't close src even if src implements io.Closer.
|
// A Player doesn't close src even if src implements io.Closer.
|
||||||
// Closing the source is src owner's responsibility.
|
// Closing the source is src owner's responsibility.
|
||||||
func NewPlayer(context *Context, src io.Reader) (*Player, error) {
|
func NewPlayer(context *Context, src io.Reader) (*Player, error) {
|
||||||
pi, err := newWriterContextPlayerImpl(context, context.c, src)
|
pi, err := newWriterContextPlayerImpl(context, context.wc, src)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -69,3 +69,15 @@ func UpdateForTesting() error {
|
|||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func PlayersNumForTesting() int {
|
||||||
|
c := CurrentContext()
|
||||||
|
c.m.Lock()
|
||||||
|
n := len(c.players)
|
||||||
|
c.m.Unlock()
|
||||||
|
return n
|
||||||
|
}
|
||||||
|
|
||||||
|
func ResetContext() {
|
||||||
|
theContext = nil
|
||||||
|
}
|
@ -1,27 +0,0 @@
|
|||||||
// Copyright 2018 The Ebiten Authors
|
|
||||||
//
|
|
||||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
// you may not use this file except in compliance with the License.
|
|
||||||
// You may obtain a copy of the License at
|
|
||||||
//
|
|
||||||
// http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
//
|
|
||||||
// Unless required by applicable law or agreed to in writing, software
|
|
||||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
// See the License for the specific language governing permissions and
|
|
||||||
// limitations under the License.
|
|
||||||
|
|
||||||
package audio
|
|
||||||
|
|
||||||
func PlayersNumForTesting() int {
|
|
||||||
c := CurrentContext()
|
|
||||||
c.m.Lock()
|
|
||||||
n := len(c.players)
|
|
||||||
c.m.Unlock()
|
|
||||||
return n
|
|
||||||
}
|
|
||||||
|
|
||||||
func ResetContext() {
|
|
||||||
theContext = nil
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user