Test-Driven Development in Microsoft .NET (Microsoft Professional)

C

Catalog class, 97

implementing add/delete review functionality, 152 “156

AddReview method, 155 “156

DeleteReview method, 155 “156

programmer tests, 193 “203

CatalogFixture class, 193

FindByRecordingId method, 193 “195, 201 “203

refactoring Catalog class, 195 “203

CatalogAdapter class

ArtistName method, 136

automating customer tests with FIT, 134 “138

Duration method, 136

FindByRecordingId method, 133

Found method, 134

LabelName method, 136

ReleaseDate method, 136

Catalog.AddReview function, modifying to throw an exception, 166 “167

CatalogFixture class, 193

CatalogGateway class

proxy class, 122

SOAP faults, 168 “169

CatalogService base class, 118

CatalogService class, 207 “209, 215

AddReviewToRecording method, 158

DeleteReviewFromRecording method, 158

implementing add/delete review functionality, 156 “159

Search method, 215

CatalogServiceGateway class, 221, 226 “230

CatalogServiceImplementation class, 229

CatalogServiceInterface class, 121 “122, 207

updating, 161 “162

CatalogServiceStub class, 216 “218, 226 “230

CatalogServiceStubFixture, 113

check action command (ActionFixture class), 134

CheckId test, 118 “120, 122

CheckTitle test, verifying title field, 112

classes

ActionFixture, automating customer tests with FIT, 133 “143

ArtistFixture, modification to work with DatabaseFixture class, 187 “189

ArtistGateway, 189

Catalog, 97

implementing add/delete review functionality, 152 “156

programmer tests, 193 “203

CatalogAdapter

ArtistName method, 136

automating customer tests with FIT, 134 “138

Duration method, 136

FindByRecordingId method, 133

Found method, 134

LabelName method, 136

ReleaseDate method, 136

CatalogFixture, 193

CatalogGateway, 122, 168 “169

CatalogService, 118, 207 “209, 215

AddReviewToRecording method, 158

DeleteReviewFromRecording method, 158

implementing add/delete review functionality, 156 “159

Search method, 215

CatalogServiceGateway, 221, 226 “230

CatalogServiceImplementation, 229

CatalogServiceInterface, 121 “122, 207

CatalogServiceStub, 216 “218, 226 “230

CommandExecutor, refactoring Catalog class, 196 “203

ConfigurationSettings, reading connection string from configuration file, 73

DatabaseCatalogService, 207 “208

DatabaseFixture

modified ArtistFixture class, 187 “189

transaction test pattern, 187

ExistingReviewException, 165 “166, 210

ExistingReviewMapper, 176 “179, 210

FileRunner, automating customer tests with FIT, 135 “136

GenreFixture, 189

GenreGateway, 189

IdGenerator, 189

InMemoryRecordingBuilder, 113, 157

LabelFixture, 189

LabelGateway, 189

NumbersFixture, adding to projects (NUnit), 235

RecordingAssembler, 113, 144, 207

RecordingBuilder, 94

RecordingDisplayAdapter, 218 “220

RecordingDto, 207

RecordingFixture, 95

RecordingGateway, 190 “192

RecordingGatewayFixture, 190 “192

ReviewAdapter

adding and deleting reviews, 149 “150

ExistingReviewId method, 174 “176

modifying to throw an exception, 167

ReviewerFixture, 189

ReviewerGateway, 189

ReviewFixture, 189

ReviewGateway, 189

SearchPage.aspx.cs, 229

SearchPageHelper, 224 “226

ServicedComponent, 256

SqlTransaction, 186

StackFixture, 15

StubCatalogService, 208

StubCatalogServiceFixture, 208

TrackDisplay, 139 “141

TrackDisplayAdapter, 144

TrackFixture, 189

TrackGateway, 189

TransactionCheckCommand, 197

TransactionManager, 183 “192

clients, Web clients

Search page, 214

binding search results with repeater Web controls, 218 “226

CatalogServiceGateway class, 226 “230

creating, 221 “226

implementing, 215 “230

testing user interfaces, 213 “214

Close option (NUnit-Gui File menu), 238

code refactoring, 6, 35 “60

applications, 58 “59

Catalog class, 195 “203

CommandExecutor class, 196 “203

writing proxy classes, 196

code, Web services, 124 “125

collapse loops , 49 “52

converting procedural design to objects, 56 “58

cycle, 41

defined, 35

Extract method, 53 “55

Hide method, 44 “45

inlining methods , 46 “47

Red/Green/Refactor, 7, 12 “22

creating empty Stacks, 12 “14

pushing multiple objects on Stacks, 20 “22

pushing single objects on Stacks, 14 “20

reducing variable scope, 52, 56

removing dead code, 49, 53

removing unneeded code, 41 “42

Rename method, 42 “43

rename variables , 47 “49

replacing nested conditionals with guarded clauses, 45

replacing temporary variables, 52 “53

ServiceLayer, 205 “211

SetUp, 84

Sieve of Eratosthenes, 36 “59

adding tests, 43 “44

applying refactoring, 58 “59

collapse loops, 49 “52

converting procedural design to objects, 56 “58

Extract method, 53 “55

Hide method, 44 “45

inlining methods, 46 “47

reducing variable scope, 52, 56

removing dead code, 49, 53

Rename method, 42 “43

rename variables, 47 “49

replacing nested conditionals with guard clauses, 45

replacing temporary variables, 52 “53

testing known good state, 41

tests, 43 “44

codegen :typedName="Id" attribute, 77

codegen:typedName="Review" attribute, 76

Collapse All option (NUnit-Gui View menu), 239

Collapse Fixtures option (NUnit-Gui View menu), 239

collapse loops, refactoring, 49 “52

Collapse option (NUnit-Gui View menu), 239

Command interface (CommandExecutor class), 197

CommandExecutor class, refactoring Catalog class, 196 “203

Command interface, 197

Execute method, 199 “200

commands (ActionFixture class)

check action, 134

enter action, 133

start, 133

completion, customer tests, 127 “129

conditionals, nested, replacing with guarded clauses, 45

configuration files

appSettings section, 74

reading connection strings from

ConfigurationSettings class, 73

separating tests, 74 “75

ConfigurationSettings class, reading connection string from configuration file, 73

ConnectionFixture.cs, 90 “91

ConnectionState enumerations, 72

consistency, testing database access layer, 70

consumer infrastructure, Web service tests, 122

customer tests, 4, 127 “167

adding reviews to recordings, FIT script, 147 “162

automation, FIT, 131 “143

determining completion, 127 “129

exposing failure conditions, 163 “164, 167

reconciling viewpoints, 143 “145

recording duration, 145

track duration, 144 “145

recording retrieval, test scripts, 129 “131

Категории